From 7bbf6a698570e0ea8805813d32cb5c9effd3dcf9 Mon Sep 17 00:00:00 2001 From: Isira-Udantha Date: Fri, 2 Feb 2024 05:24:25 +0530 Subject: [PATCH] APPBAR APPBAR --- code/smartchessboard/assets/appbar2.png | Bin 0 -> 7536 bytes .../lib/screens/user_guide.dart | 311 +++++++++++++++++- code/smartchessboard/pubspec.yaml | 1 + 3 files changed, 309 insertions(+), 3 deletions(-) create mode 100644 code/smartchessboard/assets/appbar2.png diff --git a/code/smartchessboard/assets/appbar2.png b/code/smartchessboard/assets/appbar2.png new file mode 100644 index 0000000000000000000000000000000000000000..a199739eafdda95cfbc27fca8a7d0721a31c110c GIT binary patch literal 7536 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 z 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 Stashed changes ), body: const Padding( padding: EdgeInsets.all(16.0), @@ -23,12 +40,13 @@ class UserGuide extends StatelessWidget { style: TextStyle( fontSize: 24, fontWeight: FontWeight.bold, - color: Colors.black, // Thematic color + color: Color.fromARGB(255, 6, 6, 6), // Thematic color ), ), SizedBox(height: 16), UserGuideSection( title: 'Overview', +<<<<<<< Updated upstream content: 'Congratulations on choosing our chess app, where the timeless game of strategy meets cutting-edge technology. We\'ve taken chess to the next level by connecting it to a real chessboard through Bluetooth, providing you with a seamless and immersive experience. To make the most out of your chess journey, we\'ve created this user guide to help you navigate through the features and enjoy every move on and off the board.', ), @@ -61,9 +79,43 @@ class UserGuide extends StatelessWidget { title: 'Flutter App Integration', content: 'Navigating through the app\'s various screens\nAccessing additional resources and settings\nProviding feedback and support', +======= + content: StyledContent_1(), ), + UserGuideSection( + title: 'Getting Started', + content: StyledContent_2(), + ), + UserGuideSection( + title: 'Basic Gameplay', + content: StyledContent_3(), + ), + UserGuideSection( + title: 'Bluetooth Connectivity', + content: Text( + 'Troubleshooting connection issues Reconnecting your chessboard\n\nTips for optimal Bluetooth performance', + ), + ), + UserGuideSection( + title: 'App Features', + content: StyledContent_5(), + ), + UserGuideSection( + title: 'In-Game Assistance', + content: Text( + 'Utilizing hints and analysis tools\nAdjusting difficulty levels\nResuming interrupted games', + ), +>>>>>>> Stashed changes + ), + // UserGuideSection( + // title: 'Flutter App Integration', + // content: Text( + // 'Navigating through the app\'s various screens\nAccessing additional resources and settings\nProviding feedback and support', + // ), + // ), UserGuideSection( title: 'Chessboard Maintenance', +<<<<<<< Updated upstream content: 'Cleaning and caring for your real chessboard\nBattery management for Bluetooth connectivity\nStorage and travel tips', ), @@ -71,6 +123,17 @@ class UserGuide extends StatelessWidget { title: 'Frequently Asked Questions', content: 'Answers to common queries\nTroubleshooting tips\nContacting our support team', +======= + content: Text( + 'Cleaning and caring for your real chessboard\nBattery management for Bluetooth connectivity\nStorage and travel tips', + ), + ), + UserGuideSection( + title: 'Frequently Asked Questions', + content: Text( + 'Answers to common queries\nTroubleshooting tips\nContacting our support team', + ), +>>>>>>> Stashed changes ), SizedBox(height: 16), Text( @@ -90,7 +153,7 @@ class UserGuide extends StatelessWidget { class UserGuideSection extends StatelessWidget { final String title; - final String content; + final Widget content; const UserGuideSection({ Key? key, @@ -112,9 +175,251 @@ class UserGuideSection extends StatelessWidget { children: [ Padding( padding: const EdgeInsets.all(8.0), - child: Text(content), + child: content, ), ], ); } } + +// ignore: camel_case_types +class StyledContent_1 extends StatelessWidget { + const StyledContent_1({super.key}); + + @override + Widget build(BuildContext context) { + return RichText( + text: const TextSpan( + children: [ + TextSpan( + text: 'Congratulations on choosing our chess app, \n', + style: TextStyle( + fontSize: 16, + fontWeight: FontWeight.bold, + color: Color.fromARGB(255, 189, 47, 8), + ), + ), + TextSpan( + text: 'where the timeless game of strategy meets cutting-edge technology. ', + style: TextStyle( + fontSize: 16, + fontStyle: FontStyle.italic, + color: Colors.black87, + ), + ), + TextSpan( + text: 'We\'ve taken chess to the next level by connecting it to a real chessboard, ', + style: TextStyle( + fontSize: 16, + fontWeight: FontWeight.normal, + color: Colors.black87, + ), + ), + TextSpan( + text: 'providing you with a seamless and immersive experience. ', + style: TextStyle( + fontSize: 16, + fontWeight: FontWeight.bold, + color: Colors.deepPurple, + ), + ), + TextSpan( + text: 'To make the most out of your chess journey, we\'ve created this user guide to help you navigate through the features and enjoy every move on and off the board.', + style: TextStyle( + fontSize: 16, + fontWeight: FontWeight.normal, + color: Colors.black87, + ), + ), + ], + ), + ); + } +} + +class StyledContent_2 extends StatelessWidget { + const StyledContent_2({super.key}); + + @override + Widget build(BuildContext context) { + return RichText( + text: const TextSpan( + children: [ + TextSpan( + text: 'Connecting the app via bluetooth \n', + style: TextStyle( + fontSize: 16, + fontWeight: FontWeight.bold, + color: Color.fromARGB(255, 189, 47, 8), + ), + ), + TextSpan( + text: 'where the timeless game of strategy meets cutting-edge technology. \n\n', + style: TextStyle( + fontSize: 16, + fontStyle: FontStyle.italic, + color: Colors.black87, + ), + ), + TextSpan( + text: 'Setting the mobile app for the first time \n', + style: TextStyle( + fontSize: 16, + fontWeight: FontWeight.bold, + color: Color.fromARGB(255, 189, 47, 8), + ), + ), + TextSpan( + text: 'We\'ve taken chess to the next level by connecting it to a real chessboard through Bluetooth, \n\n', + style: TextStyle( + fontSize: 16, + fontWeight: FontWeight.normal, + color: Colors.black87, + ), + ), + TextSpan( + text: 'Quick move through app \n', + style: TextStyle( + fontSize: 16, + fontWeight: FontWeight.bold, + color: Color.fromARGB(255, 189, 47, 8), + ), + ), + TextSpan( + text: 'To make the most out of your chess journey, we\'ve created this user guide to help you navigate through the features and enjoy every move on and off the board.', + style: TextStyle( + fontSize: 16, + fontWeight: FontWeight.normal, + color: Colors.black87, + ), + ), + ], + ), + ); + } +} + + +class StyledContent_3 extends StatelessWidget { + const StyledContent_3({super.key}); + + @override + Widget build(BuildContext context) { + return RichText( + text: const TextSpan( + children: [ + TextSpan( + text: 'Connecting the app via bluetooth \n', + style: TextStyle( + fontSize: 16, + fontWeight: FontWeight.bold, + color: Color.fromARGB(255, 189, 47, 8), + ), + ), + TextSpan( + text: 'where the timeless game of strategy meets cutting-edge technology. \n\n', + style: TextStyle( + fontSize: 16, + fontStyle: FontStyle.italic, + color: Colors.black87, + ), + ), + TextSpan( + text: 'Setting the mobile app for the first time \n', + style: TextStyle( + fontSize: 16, + fontWeight: FontWeight.bold, + color: Color.fromARGB(255, 189, 47, 8), + ), + ), + TextSpan( + text: 'We\'ve taken chess to the next level by connecting it to a real chessboard through Bluetooth, \n\n', + style: TextStyle( + fontSize: 16, + fontWeight: FontWeight.normal, + color: Colors.black87, + ), + ), + TextSpan( + text: 'Quick move through app \n', + style: TextStyle( + fontSize: 16, + fontWeight: FontWeight.bold, + color: Color.fromARGB(255, 189, 47, 8), + ), + ), + TextSpan( + text: 'To make the most out of your chess journey, we\'ve created this user guide to help you navigate through the features and enjoy every move on and off the board.', + style: TextStyle( + fontSize: 16, + fontWeight: FontWeight.normal, + color: Colors.black87, + ), + ), + ], + ), + ); + } +} + +class StyledContent_5 extends StatelessWidget { + const StyledContent_5({super.key}); + + @override + Widget build(BuildContext context) { + return RichText( + text: const TextSpan( + children: [ + TextSpan( + text: 'Connecting the app via bluetooth \n', + style: TextStyle( + fontSize: 16, + fontWeight: FontWeight.bold, + color: Color.fromARGB(255, 189, 47, 8), + ), + ), + TextSpan( + text: 'where the timeless game of strategy meets cutting-edge technology. \n\n', + style: TextStyle( + fontSize: 16, + fontStyle: FontStyle.italic, + color: Colors.black87, + ), + ), + TextSpan( + text: 'Setting the mobile app for the first time \n', + style: TextStyle( + fontSize: 16, + fontWeight: FontWeight.bold, + color: Color.fromARGB(255, 189, 47, 8), + ), + ), + TextSpan( + text: 'We\'ve taken chess to the next level by connecting it to a real chessboard through Bluetooth, \n\n', + style: TextStyle( + fontSize: 16, + fontWeight: FontWeight.normal, + color: Colors.black87, + ), + ), + TextSpan( + text: 'Quick move through app \n', + style: TextStyle( + fontSize: 16, + fontWeight: FontWeight.bold, + color: Color.fromARGB(255, 189, 47, 8), + ), + ), + TextSpan( + text: 'To make the most out of your chess journey, we\'ve created this user guide to help you navigate through the features and enjoy every move on and off the board.', + style: TextStyle( + fontSize: 16, + fontWeight: FontWeight.normal, + color: Colors.black87, + ), + ), + ], + ), + ); + } +} \ No newline at end of file diff --git a/code/smartchessboard/pubspec.yaml b/code/smartchessboard/pubspec.yaml index b2133a2..adc07c2 100644 --- a/code/smartchessboard/pubspec.yaml +++ b/code/smartchessboard/pubspec.yaml @@ -78,6 +78,7 @@ flutter: - assets/mainmenubackground.png - assets/createroombackground.png - assets/joinroombackground.png + - assets/appbar2.png # An image asset can refer to one or more resolution-specific "variants", see # https://flutter.dev/assets-and-images/#resolution-aware