This commit is contained in:
2024-10-18 02:27:08 +02:00
commit 977df83c36
140 changed files with 6523 additions and 0 deletions

73
lib/main.dart Normal file
View File

@@ -0,0 +1,73 @@
import 'package:flutter/material.dart';
import 'package:shared_preferences/shared_preferences.dart';
import 'screens/expectation_input_page.dart';
void main() {
runApp(const IFRClearanceApp());
}
class IFRClearanceApp extends StatefulWidget {
const IFRClearanceApp({super.key});
@override
IFRClearanceAppState createState() => IFRClearanceAppState();
}
class IFRClearanceAppState extends State<IFRClearanceApp> {
bool _isDarkMode = false;
@override
void initState() {
super.initState();
_loadDarkModeSetting();
}
// Load the dark mode setting from shared preferences
Future<void> _loadDarkModeSetting() async {
SharedPreferences prefs = await SharedPreferences.getInstance();
setState(() {
_isDarkMode = prefs.getBool('isDarkMode') ?? false; // Default to false if not set
});
}
// Save the dark mode setting to shared preferences
Future<void> _saveDarkModeSetting(bool isDarkMode) async {
SharedPreferences prefs = await SharedPreferences.getInstance();
prefs.setBool('isDarkMode', isDarkMode);
}
// Toggle dark mode and save the setting
void _toggleDarkMode() {
setState(() {
_isDarkMode = !_isDarkMode;
});
_saveDarkModeSetting(_isDarkMode); // Save the new dark mode setting
}
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'IFR Buddy',
themeMode: _isDarkMode ? ThemeMode.dark : ThemeMode.light,
theme: ThemeData(
scaffoldBackgroundColor: const Color.fromRGBO(191, 191, 191, 1), // Light mode background color
appBarTheme: const AppBarTheme(
color: Color.fromRGBO(135, 135, 135, 1), // Light mode AppBar color
),
cardColor: Colors.white, // Light mode card color
),
darkTheme: ThemeData(
scaffoldBackgroundColor: Colors.black87, // Dark mode background color
appBarTheme: const AppBarTheme(
color: Color.fromRGBO(41, 41, 41, 1), // Dark mode AppBar color
),
cardColor: Colors.grey[800], // Dark mode card color
brightness: Brightness.dark,
),
home: ExpectationInputPage(
isDarkMode: _isDarkMode,
toggleDarkMode: _toggleDarkMode,
),
);
}
}