Files
2025-05-12 19:08:22 +03:00

42 lines
1.5 KiB
Dart

import 'package:flutter/material.dart';
import 'screens/expenses_screen.dart';
import 'theme/app_theme.dart';
import 'database/database.dart'; // Import the database
class MyApp extends StatefulWidget {
final AppDatabase database; // Принимаем экземпляр базы данных
const MyApp({Key? key, required this.database}) : super(key: key);
@override
State<MyApp> createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
// Состояние для управления темой (светлая/темная)
bool _isDarkMode = false;
// Метод для переключения темы
void toggleTheme() {
setState(() {
_isDarkMode = !_isDarkMode;
});
}
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Finance App', // Обновленный заголовок
debugShowCheckedModeBanner: false, // Скрыть баннер Debug
themeMode: _isDarkMode ? ThemeMode.dark : ThemeMode.light, // Управление темой
theme: AppTheme.lightTheme, // Светлая тема
darkTheme: AppTheme.darkTheme, // Темная тема
home: ExpensesScreen(
database: widget.database, // Передаем базу данных в главный экран
toggleTheme: toggleTheme, // Передаем функцию переключения темы
isDarkMode: _isDarkMode, // Передаем текущее состояние темы
),
);
}
}