From 9125041f18cb4bf3ffbc7c3329cb18459f750b35 Mon Sep 17 00:00:00 2001 From: Phani Pavan K Date: Sun, 20 Oct 2024 12:12:32 +0530 Subject: [PATCH] add about page --- lib/main.dart | 10 ++++++++-- lib/views/about.dart | 21 +++++++++++++++++++++ lib/views/homePage.dart | 33 ++++++++++++++++++++++++++++++--- pubspec.yaml | 10 ++++------ 4 files changed, 63 insertions(+), 11 deletions(-) create mode 100644 lib/views/about.dart diff --git a/lib/main.dart b/lib/main.dart index f6ac6cf..7a4eb2b 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -2,6 +2,7 @@ import 'package:flutter/material.dart'; import 'package:iiitb_menu/models/globalModel.dart'; import 'package:iiitb_menu/views/homePage.dart'; import 'package:provider/provider.dart'; +import "package:iiitb_menu/views/about.dart"; void main() { WidgetsFlutterBinding.ensureInitialized(); @@ -20,8 +21,13 @@ class MainApp extends StatelessWidget { builder: (BuildContext context, child) { return MaterialApp( title: "IIITB Menu", - home: const HomePage(), - theme: ThemeData(useMaterial3: false), + routes: { + "/": (context) => HomePage(), + "/info": (context) => AboutPage(), + }, + initialRoute: "/", + // home: const HomePage(), + theme: ThemeData(useMaterial3: true), ); }, ); diff --git a/lib/views/about.dart b/lib/views/about.dart new file mode 100644 index 0000000..4249f08 --- /dev/null +++ b/lib/views/about.dart @@ -0,0 +1,21 @@ +import 'package:flutter/material.dart'; + +class AboutPage extends StatelessWidget { + const AboutPage({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(title: const Text("About Page")), + body: const Column( + children: [ + Image(image: AssetImage("assets/plate.png")), + Text( + "IIIT Bangalore Unofficial Mess Menu", + style: TextStyle(fontSize: 50), + ) + ], + ), + ); + } +} diff --git a/lib/views/homePage.dart b/lib/views/homePage.dart index 035a0eb..be2981d 100644 --- a/lib/views/homePage.dart +++ b/lib/views/homePage.dart @@ -25,13 +25,40 @@ class HomePage extends StatelessWidget { return Consumer( builder: (BuildContext context, GlobalModel data, Widget? child) { return Scaffold( + drawer: Drawer( + child: ListView( + children: [ + ListTile( + leading: Icon(Icons.menu), + title: Text("Menu"), + onTap: () { + Navigator.pop(context); + }), + ListTile( + leading: Icon(Icons.star), + title: Text("Specials"), + ), + Divider(), + ListTile( + leading: Icon(Icons.settings), + title: Text("Settings"), + ), + ListTile( + leading: Icon(Icons.info), + title: Text("About App"), + onTap: () { + Navigator.pushNamed(context, "/info"); + }), + ], + ), + ), appBar: AppBar( title: Text("Daily ${data.menuTime} Menu"), bottom: TabBar( controller: cont, - splashFactory: NoSplash.splashFactory, - indicator: const UnderlineTabIndicator( - insets: EdgeInsets.fromLTRB(10, 3, 10, 3)), + // splashFactory: InkSplash.splashFactory, + // indicator: const UnderlineTabIndicator( + // insets: EdgeInsets.fromLTRB(10, 3, 10, 3)), onTap: (int index) { data.setMenuTime(index); }, diff --git a/pubspec.yaml b/pubspec.yaml index 58cc3ab..a3a7687 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -2,7 +2,7 @@ name: iiitb_menu description: IIITB Bi-Weekly Menu # The following line prevents the package from being accidentally published to # pub.dev using `flutter pub publish`. This is preferred for private packages. -publish_to: 'none' # Remove this line if you wish to publish to pub.dev +publish_to: "none" # Remove this line if you wish to publish to pub.dev # The following defines the version and build number for your application. # A version number is three numbers separated by dots, like 1.2.43 @@ -19,7 +19,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev version: 1.0.0+1 environment: - sdk: '>=3.1.0 <4.0.0' + sdk: ">=3.1.0 <4.0.0" # Dependencies specify other packages that your package needs in order to work. # To automatically upgrade your package dependencies to the latest versions @@ -31,10 +31,9 @@ dependencies: flutter: sdk: flutter - # The following adds the Cupertino Icons font to your application. # Use with the CupertinoIcons class for iOS style icons. - cupertino_icons: ^1.0.2 + # cupertino_icons: ^1.0.2 provider: ^6.0.5 crypto: ^3.0.3 intl: ^0.18.1 @@ -43,7 +42,7 @@ dependencies: path_provider: # localstorage: ^4.0.1+4 shared_preferences: ^2.2.0 - # sembast: + # sembast: dev_dependencies: flutter_test: @@ -61,7 +60,6 @@ dev_dependencies: # The following section is specific to Flutter packages. flutter: - # The following line ensures that the Material Icons font is # included with your application, so that you can use the icons in # the material Icons class.