From 21660167fe4043fe18baf9aeb3d2982c5894606c Mon Sep 17 00:00:00 2001 From: "Sanders (aider)" Date: Mon, 9 Jun 2025 15:22:04 +0300 Subject: [PATCH] =?UTF-8?q?refactor:=20=D0=B2=D1=8B=D0=BD=D0=B5=D1=81?= =?UTF-8?q?=D1=82=D0=B8=20HomePage=20=D0=B2=20=D0=BE=D1=82=D0=B4=D0=B5?= =?UTF-8?q?=D0=BB=D1=8C=D0=BD=D1=8B=D0=B9=20=D1=84=D0=B0=D0=B9=D0=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/main.dart | 48 ++++++++---------------------------------------- 1 file changed, 8 insertions(+), 40 deletions(-) diff --git a/lib/main.dart b/lib/main.dart index a0c9352..73816f6 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,10 +1,17 @@ import 'package:flutter/material.dart'; +import 'package:budget_app/pages/home_page.dart'; import 'theme/app_theme.dart'; +/// Точка входа в приложение void main() { runApp(const MyApp()); } +/// Главный виджет приложения +/// +/// Управляет: +/// - Состоянием темы (темная/светлая) +/// - Конфигурацией MaterialApp class MyApp extends StatefulWidget { const MyApp({super.key}); @@ -15,6 +22,7 @@ class MyApp extends StatefulWidget { class _MyAppState extends State { bool _isDarkMode = false; + /// Переключает тему между светлой и темной void toggleTheme() { setState(() { _isDarkMode = !_isDarkMode; @@ -35,43 +43,3 @@ class _MyAppState extends State { ); } } - -class HomePage extends StatelessWidget { - final VoidCallback onThemeToggle; - final bool isDarkMode; - - const HomePage({ - super.key, - required this.onThemeToggle, - required this.isDarkMode, - }); - - @override - Widget build(BuildContext context) { - return Scaffold( - appBar: AppBar( - title: const Text('Budget App'), - actions: [ - IconButton( - icon: Icon(isDarkMode ? Icons.light_mode : Icons.dark_mode), - onPressed: onThemeToggle, - tooltip: 'Переключить тему', - ), - ], - ), - body: const Center( - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Icon(Icons.account_balance_wallet, size: 64), - SizedBox(height: 16), - Text( - 'Добро пожаловать в Budget App!', - style: TextStyle(fontSize: 24), - ), - ], - ), - ), - ); - } -}