Skip to content

Commit 6ca4172

Browse files
author
Echonox
authored
Merge pull request #1 from kalismeras61/master
Sign Page 4 Created
2 parents ff707e9 + 6f876ee commit 6ca4172

34 files changed

+380
-25
lines changed

Diff for: assets/fonts/montserrat/Montserrat-Black.ttf

269 KB
Binary file not shown.

Diff for: assets/fonts/montserrat/Montserrat-BlackItalic.ttf

273 KB
Binary file not shown.

Diff for: assets/fonts/montserrat/Montserrat-Bold.ttf

255 KB
Binary file not shown.

Diff for: assets/fonts/montserrat/Montserrat-BoldItalic.ttf

260 KB
Binary file not shown.

Diff for: assets/fonts/montserrat/Montserrat-ExtraBold.ttf

256 KB
Binary file not shown.
261 KB
Binary file not shown.

Diff for: assets/fonts/montserrat/Montserrat-ExtraLight.ttf

254 KB
Binary file not shown.
258 KB
Binary file not shown.

Diff for: assets/fonts/montserrat/Montserrat-Italic.ttf

260 KB
Binary file not shown.

Diff for: assets/fonts/montserrat/Montserrat-Light.ttf

253 KB
Binary file not shown.

Diff for: assets/fonts/montserrat/Montserrat-LightItalic.ttf

258 KB
Binary file not shown.

Diff for: assets/fonts/montserrat/Montserrat-Medium.ttf

254 KB
Binary file not shown.

Diff for: assets/fonts/montserrat/Montserrat-MediumItalic.ttf

259 KB
Binary file not shown.

Diff for: assets/fonts/montserrat/Montserrat-Regular.ttf

257 KB
Binary file not shown.

Diff for: assets/fonts/montserrat/Montserrat-SemiBold.ttf

255 KB
Binary file not shown.
260 KB
Binary file not shown.

Diff for: assets/fonts/montserrat/Montserrat-Thin.ttf

253 KB
Binary file not shown.

Diff for: assets/fonts/montserrat/Montserrat-ThinItalic.ttf

257 KB
Binary file not shown.

Diff for: assets/fonts/montserrat/OFL.txt

+93
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
Copyright 2011 The Montserrat Project Authors (https://github.com/JulietaUla/Montserrat)
2+
3+
This Font Software is licensed under the SIL Open Font License, Version 1.1.
4+
This license is copied below, and is also available with a FAQ at:
5+
http://scripts.sil.org/OFL
6+
7+
8+
-----------------------------------------------------------
9+
SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
10+
-----------------------------------------------------------
11+
12+
PREAMBLE
13+
The goals of the Open Font License (OFL) are to stimulate worldwide
14+
development of collaborative font projects, to support the font creation
15+
efforts of academic and linguistic communities, and to provide a free and
16+
open framework in which fonts may be shared and improved in partnership
17+
with others.
18+
19+
The OFL allows the licensed fonts to be used, studied, modified and
20+
redistributed freely as long as they are not sold by themselves. The
21+
fonts, including any derivative works, can be bundled, embedded,
22+
redistributed and/or sold with any software provided that any reserved
23+
names are not used by derivative works. The fonts and derivatives,
24+
however, cannot be released under any other type of license. The
25+
requirement for fonts to remain under this license does not apply
26+
to any document created using the fonts or their derivatives.
27+
28+
DEFINITIONS
29+
"Font Software" refers to the set of files released by the Copyright
30+
Holder(s) under this license and clearly marked as such. This may
31+
include source files, build scripts and documentation.
32+
33+
"Reserved Font Name" refers to any names specified as such after the
34+
copyright statement(s).
35+
36+
"Original Version" refers to the collection of Font Software components as
37+
distributed by the Copyright Holder(s).
38+
39+
"Modified Version" refers to any derivative made by adding to, deleting,
40+
or substituting -- in part or in whole -- any of the components of the
41+
Original Version, by changing formats or by porting the Font Software to a
42+
new environment.
43+
44+
"Author" refers to any designer, engineer, programmer, technical
45+
writer or other person who contributed to the Font Software.
46+
47+
PERMISSION & CONDITIONS
48+
Permission is hereby granted, free of charge, to any person obtaining
49+
a copy of the Font Software, to use, study, copy, merge, embed, modify,
50+
redistribute, and sell modified and unmodified copies of the Font
51+
Software, subject to the following conditions:
52+
53+
1) Neither the Font Software nor any of its individual components,
54+
in Original or Modified Versions, may be sold by itself.
55+
56+
2) Original or Modified Versions of the Font Software may be bundled,
57+
redistributed and/or sold with any software, provided that each copy
58+
contains the above copyright notice and this license. These can be
59+
included either as stand-alone text files, human-readable headers or
60+
in the appropriate machine-readable metadata fields within text or
61+
binary files as long as those fields can be easily viewed by the user.
62+
63+
3) No Modified Version of the Font Software may use the Reserved Font
64+
Name(s) unless explicit written permission is granted by the corresponding
65+
Copyright Holder. This restriction only applies to the primary font name as
66+
presented to the users.
67+
68+
4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font
69+
Software shall not be used to promote, endorse or advertise any
70+
Modified Version, except to acknowledge the contribution(s) of the
71+
Copyright Holder(s) and the Author(s) or with their explicit written
72+
permission.
73+
74+
5) The Font Software, modified or unmodified, in part or in whole,
75+
must be distributed entirely under this license, and must not be
76+
distributed under any other license. The requirement for fonts to
77+
remain under this license does not apply to any document created
78+
using the Font Software.
79+
80+
TERMINATION
81+
This license becomes null and void if any of the above conditions are
82+
not met.
83+
84+
DISCLAIMER
85+
THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
86+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF
87+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
88+
OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE
89+
COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
90+
INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL
91+
DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
92+
FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM
93+
OTHER DEALINGS IN THE FONT SOFTWARE.
File renamed without changes.
File renamed without changes.

Diff for: assets/images/#/logo_#.png

7.81 KB
Loading
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3+
<plist version="1.0">
4+
<dict>
5+
<key>BuildSystemType</key>
6+
<string>Original</string>
7+
</dict>
8+
</plist>

Diff for: lib/const/color_const.dart

+1
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,5 @@ const BOTTOM_COLORS = [MAIN_COLOR, DARK_COLOR];
1111
const YELLOW = Color(0xfffbed96);
1212
const BLUE = Color(0xffabecd6);
1313
const PURPLE = Color(0xffccc3fc);
14+
const LIGHT_RED = Color(0xffffc2a1);
1415
const RED = Color(0xffffb6b3);

Diff for: lib/const/fonts_const.dart

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
import 'package:flutter/material.dart';

Diff for: lib/const/gradient_const.dart

+18-8
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,22 @@ import 'package:flutter/material.dart';
22
import 'color_const.dart';
33

44
const LinearGradient #_BACKGROUND = LinearGradient(
5-
begin: FractionalOffset(0.0, 0.4),
6-
end: FractionalOffset(0.9, 0.7),
5+
begin: FractionalOffset(0.0, 0.4), end: FractionalOffset(0.9, 0.7),
76
// Add one stop for each color. Stops should increase from 0 to 1
8-
stops: [0.1, 0.9],
9-
colors: [
10-
YELLOW,
11-
BLUE
12-
]
13-
);
7+
stops: [0.1, 0.9], colors: [YELLOW, BLUE]);
8+
9+
const LinearGradient #_CARD_BACKGROUND = LinearGradient(
10+
tileMode: TileMode.clamp,
11+
begin: FractionalOffset.centerLeft,
12+
end: FractionalOffset.centerRight,
13+
// Add one stop for each color. Stops should increase from 0 to 1
14+
stops: [0.1, 1.0], colors: [LIGHT_RED, RED],
15+
);
16+
17+
const LinearGradient #_CIRCLE_BUTTON_BACKGROUND = LinearGradient(
18+
tileMode: TileMode.clamp,
19+
begin: FractionalOffset.centerLeft,
20+
end: FractionalOffset.centerRight,
21+
// Add one stop for each color. Stops should increase from 0 to 1
22+
stops: [0.4, 1], colors: [Colors.black, Colors.black54],
23+
);

Diff for: lib/const/images_const.dart

+8-3
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
77
class ImagePath {
88
//images
9-
static const String imageDir = "images";
9+
static const String imageDir = "assets/images";
1010
static const String pkImage = "$imageDir/pk.jpg";
1111
static const String profileImage = "$imageDir/ui.profile.jpg";
1212
static const String blankImage = "$imageDir/blank.jpg";
@@ -21,9 +21,9 @@ class ImagePath {
2121
}
2222

2323
class MainImagePath {
24-
static const String image_path = "images/main";
24+
static const String image_path = "assets/images/main";
2525
static const String image_app = "$image_path/ic_launcher.png";
26-
static const String image_header= "$image_path/main_background.png";
26+
static const String image_header = "$image_path/main_background.png";
2727
static const String image_sign_up = "$image_path/main_background.png";
2828
static const String image_walk_through = "$image_path/main_background.png";
2929
static const String image_navigation = "$image_path/main_background.png";
@@ -35,3 +35,8 @@ class MainImagePath {
3535
static const String image_media = "$image_path/main_background.png";
3636
static const String image_camera = "$image_path/main_background.png";
3737
}
38+
39+
class #ImagePath {
40+
static const String image_path = "assets/images/#";
41+
static const String #Logo = "$image_path/logo_#.png";
42+
}

Diff for: lib/const/string_const.dart

+2
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,6 @@ class StringConst {
1313
static const String DEVELOPER = "Volunteer";
1414
static const String PROFESSION = "Flutter Developer";
1515
static const String DEV_EMAIL = "niebin312@gmail.com";
16+
static const String SIGN_UP = "Sing Up";
17+
static const String SIGN_UP_TEXT = "Don't have an account?";
1618
}

Diff for: lib/main.dart

+8-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
import 'package:flutter/material.dart';
22
import 'package:flutter_ui_nice/page/page_const.dart';
3+
import 'package:flutter_ui_nice/page/#/SignPageFour.dart';
34
import 'const/string_const.dart';
45
import 'const/color_const.dart';
56
import 'const/page_str_const.dart';
@@ -14,13 +15,18 @@ class MyApp extends StatelessWidget {
1415
return MaterialApp(
1516
title: StringConst.APP_NAME,
1617
debugShowCheckedModeBanner: false,
17-
theme: ThemeData(primaryColor: MAIN_COLOR, accentColor: MAIN_COLOR),
18+
theme: ThemeData(
19+
primaryColor: MAIN_COLOR,
20+
accentColor: MAIN_COLOR,
21+
fontFamily: "Montserrat",
22+
),
1823
home: HomePage(),
1924
routes: {
2025
SIGN_UP_PAGES[0]: (context) => SignPageOne(),
2126
SIGN_UP_PAGES[1]: (context) => SignPageTwo(),
27+
//SIGN_UP_PAGES[2]: (context) => SignPageThird(),
28+
SIGN_UP_PAGES[3]: (context) => SignPageFour(),
2229
//FIXME there are other pages to jump with 'page_str_const.dart',there should be make by manager
23-
2430
},
2531
onUnknownRoute: (setting) =>
2632
MaterialPageRoute(builder: (context) => EmptyPage()),

Diff for: lib/page/home_page.dart

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ class HomePage extends StatelessWidget {
2121
expandedHeight: 150.0,
2222
flexibleSpace: FlexibleSpaceBar(
2323
title: Padding(
24-
padding: EdgeInsets.only(top: 10.0),
24+
padding: EdgeInsets.only(top: 30.0),
2525
child: Row(
2626
children: <Widget>[
2727
Image.asset(

Diff for: lib/page/page_const.dart

+1
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,4 @@ export "home_page.dart";
77
export "empty_page.dart";
88
export '#/SignPageOne.dart';
99
export '#/SignPageTwo.dart';
10+
export '#/SignPageFour.dart';

Diff for: lib/page/#/SignPageFour.dart

+177
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,177 @@
1+
///
2+
/// Created by Yasinilhan on 18-12-24
3+
/// Email: yasinilhan61@gmail.com
4+
///
5+
import 'package:flutter/material.dart';
6+
import 'package:flutter_ui_nice/const/color_const.dart';
7+
import 'package:flutter_ui_nice/const/gradient_const.dart';
8+
import 'package:flutter_ui_nice/const/images_const.dart';
9+
import 'package:flutter_ui_nice/const/size_const.dart';
10+
import 'package:flutter_ui_nice/const/string_const.dart';
11+
import 'package:flutter_ui_nice/page/#/widgets/#_arrow_button.dart';
12+
13+
class SignPageFour extends StatefulWidget {
14+
@override
15+
_SignPageFourState createState() => _SignPageFourState();
16+
}
17+
18+
class _SignPageFourState extends State<SignPageFour> {
19+
TextEditingController _username = TextEditingController();
20+
TextEditingController _password = TextEditingController();
21+
22+
@override
23+
Widget build(BuildContext context) {
24+
final _media = MediaQuery.of(context).size;
25+
26+
return Scaffold(
27+
body: Container(
28+
height: double.infinity,
29+
width: double.infinity,
30+
decoration: BoxDecoration(
31+
gradient: #_BACKGROUND,
32+
),
33+
child: SingleChildScrollView(
34+
physics: BouncingScrollPhysics(),
35+
child: Stack(
36+
children: <Widget>[
37+
Column(
38+
children: <Widget>[
39+
Padding(
40+
padding: const EdgeInsets.symmetric(
41+
vertical: 60.0, horizontal: 40),
42+
child: Column(
43+
crossAxisAlignment: CrossAxisAlignment.start,
44+
children: <Widget>[
45+
Center(
46+
child: Image.asset(
47+
#ImagePath.#Logo,
48+
height: _media.height / 7,
49+
),
50+
),
51+
SizedBox(
52+
height: 30,
53+
),
54+
Text(
55+
"WELCOME BACK!",
56+
style: TextStyle(
57+
letterSpacing: 4,
58+
fontFamily: "Montserrat",
59+
fontWeight: FontWeight.bold,
60+
fontSize: TEXT_LARGE_SIZE,
61+
),
62+
),
63+
SizedBox(height: 30),
64+
Text(
65+
'Log in',
66+
style: TextStyle(
67+
fontFamily: "Montserrat",
68+
fontWeight: FontWeight.w200,
69+
fontSize: 40),
70+
),
71+
Text(
72+
'to continue.',
73+
style: TextStyle(
74+
fontFamily: "Montserrat",
75+
fontWeight: FontWeight.w200,
76+
fontSize: 40),
77+
),
78+
SizedBox(
79+
height: 50,
80+
),
81+
Container(
82+
height: _media.height / 3.8,
83+
decoration: BoxDecoration(
84+
gradient: #_CARD_BACKGROUND,
85+
borderRadius: BorderRadius.circular(15),
86+
boxShadow: [
87+
BoxShadow(
88+
color: Colors.black12,
89+
blurRadius: 15,
90+
spreadRadius: 8,
91+
),
92+
],
93+
),
94+
child: Padding(
95+
padding: const EdgeInsets.all(30.0),
96+
child: Column(
97+
children: <Widget>[
98+
Expanded(
99+
child: inputText("USERNAME",
100+
'hristov123@gmail.com', _username, false),
101+
),
102+
Divider(
103+
height: 5,
104+
color: Colors.black,
105+
),
106+
Expanded(
107+
child: inputText(
108+
"PASSWORD", '******', _password, true)),
109+
],
110+
),
111+
),
112+
),
113+
],
114+
),
115+
),
116+
Row(
117+
mainAxisAlignment: MainAxisAlignment.center,
118+
crossAxisAlignment: CrossAxisAlignment.center,
119+
children: <Widget>[
120+
Text(
121+
StringConst.SIGN_UP_TEXT,
122+
style: TextStyle(color: MAIN_COLOR),
123+
),
124+
SizedBox(
125+
width: 5,
126+
),
127+
GestureDetector(
128+
onTap: () => print("# Tapped"),
129+
child: Text(StringConst.SIGN_UP),
130+
),
131+
],
132+
),
133+
SizedBox(
134+
height: 50,
135+
)
136+
],
137+
),
138+
Positioned(
139+
bottom: _media.height / 6.3,
140+
right: 15,
141+
child: #ArrowButton(
142+
icon: Icons.arrow_forward,
143+
iconSize: 26,
144+
onTap: () => print("# Tapped"),
145+
),
146+
),
147+
],
148+
),
149+
),
150+
));
151+
}
152+
153+
Widget inputText(
154+
String fieldName,
155+
String hintText,
156+
TextEditingController controller,
157+
bool obSecure,
158+
) {
159+
return TextField(
160+
style: TextStyle(height: 1.3),
161+
controller: controller,
162+
decoration: InputDecoration(
163+
hintText: hintText,
164+
labelText: fieldName,
165+
labelStyle: TextStyle(
166+
fontSize: TEXT_NORMAL_SIZE,
167+
fontFamily: "Montserrat",
168+
fontWeight: FontWeight.w400,
169+
letterSpacing: 1,
170+
height: 0,
171+
),
172+
border: InputBorder.none,
173+
),
174+
obscureText: obSecure,
175+
);
176+
}
177+
}

0 commit comments

Comments
 (0)