import 'package:flutter/material.dart'; import 'package:hive_flutter/hive_flutter.dart'; import 'package:provider/provider.dart'; import 'package:win_text_editor/framework/widgets/app_scaffold.dart'; import 'package:win_text_editor/shared/data/std_fields_cache.dart'; import 'package:window_manager/window_manager.dart'; import 'framework/controllers/logger.dart'; // 新增导入 void main() async { WidgetsFlutterBinding.ensureInitialized(); // 配置窗口 await windowManager.ensureInitialized(); WindowOptions windowOptions = const WindowOptions( size: Size(1600, 1000), center: true, title: '编程辅助工具', ); windowManager.waitUntilReadyToShow(windowOptions, () async { await windowManager.show(); await windowManager.focus(); }); // 初始化数据缓存 WidgetsFlutterBinding.ensureInitialized(); // 清理旧数据(仅在开发时需要) await Hive.initFlutter(); await Hive.deleteBoxFromDisk('uft_stdFieldsCache'); // 重新初始化 await StdFieldsCache.init(); runApp( MultiProvider( providers: [ ChangeNotifierProvider(create: (_) => Logger()), // 添加Logger提供者 // 可以在这里添加其他Provider ], child: const MyApp(), ), ); } class MyApp extends StatelessWidget { const MyApp({super.key}); @override Widget build(BuildContext context) { return MaterialApp( title: '编程辅助工具', debugShowCheckedModeBanner: false, theme: ThemeData( useMaterial3: true, // 启用 Material 3 设计规范 cardTheme: const CardTheme(color: Colors.white), // 全局主题设置会影响SfDataGrid textTheme: const TextTheme( bodyMedium: TextStyle(fontSize: 12), // 影响表格内容 titleMedium: TextStyle(fontSize: 14), // 影响表头 ), colorScheme: const ColorScheme.light( primary: Colors.blue, // 影响表头背景色 onPrimary: Colors.white, // 影响表头文字颜色 ), ), home: const AppScaffold(), ); } }