-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmain.dart
83 lines (75 loc) · 2.11 KB
/
main.dart
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
import 'package:fluent_ui/fluent_ui.dart';
import 'dart:io';
import 'package:macos_ui/macos_ui.dart';
import 'package:flutter/cupertino.dart';
import 'pages/tab1page.dart' as tab1page;
import 'pages/tab2page.dart' as tab2page;
import 'pages/tab3page.dart' as tab3page;
void main() {
if (Platform.isWindows || Platform.isLinux || Platform.isMacOS) {}
runApp(const MyApp());
}
class MyApp extends StatelessWidget {
const MyApp({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return MacosApp(
title: 'Button',
theme: MacosThemeData.light(),
darkTheme: MacosThemeData.dark(),
themeMode: ThemeMode.system,
debugShowCheckedModeBanner: false,
home: const HomePage(),
);
}
}
class HomePage extends StatefulWidget {
const HomePage({super.key});
@override
State<HomePage> createState() => _HomePageState();
}
class _HomePageState extends State<HomePage> {
final _controller = MacosTabController(
initialIndex: 0,
length: 3,
);
@override
Widget build(BuildContext context) {
return Builder(builder: (context) {
return MacosScaffold(
toolBar: const ToolBar(
title: Text('TabView with Pages'),
),
children: [
ContentArea(
builder: (context, scrollController) {
return Padding(
padding: const EdgeInsets.all(24.0),
child: MacosTabView(
position: MacosTabPosition.bottom,
controller: _controller,
tabs: const [
MacosTab(
label: 'Tab Page 1',
),
MacosTab(
label: 'Tab Page 2',
),
MacosTab(
label: 'Tab Page 3',
),
],
children: [
tab1page.TabPage(),
tab2page.TabPage(),
tab3page.TabPage(),
],
),
);
},
),
],
);
});
}
}