summaryrefslogtreecommitdiff
path: root/lib/pages/settings_page.dart
diff options
context:
space:
mode:
authorAldrik Ramaekers <aldrik@amftech.nl>2022-08-17 15:39:30 +0200
committerAldrik Ramaekers <aldrik@amftech.nl>2022-08-17 15:39:30 +0200
commitf136438a6c3df6403d5a935c730ea5a66d017ffe (patch)
tree44e0b259ed06b4eaf8b007e7a2dd0db894652fc2 /lib/pages/settings_page.dart
parent8ed1b574e8b5e9fc806aedc87af7aabcf73da6e6 (diff)
work
Diffstat (limited to 'lib/pages/settings_page.dart')
-rw-r--r--lib/pages/settings_page.dart58
1 files changed, 58 insertions, 0 deletions
diff --git a/lib/pages/settings_page.dart b/lib/pages/settings_page.dart
new file mode 100644
index 0000000..08dbaf4
--- /dev/null
+++ b/lib/pages/settings_page.dart
@@ -0,0 +1,58 @@
+import 'package:flutter/material.dart';
+import 'package:training_planner/main.dart';
+import 'package:training_planner/services/settings_service.dart';
+import 'package:training_planner/style/style.dart';
+
+class SettingsPage extends StatefulWidget {
+ final Settings settings;
+
+ @override
+ _SettingsPageState createState() => _SettingsPageState();
+
+ const SettingsPage({Key? key, required this.settings}) : super(key: key);
+}
+
+class _SettingsPageState extends State<SettingsPage> {
+ @override
+ initState() {
+ super.initState();
+ }
+
+ Future<void> saveSettings() async {
+ settingsService.writeSettingsToFile(widget.settings);
+ Navigator.pop(context);
+ }
+
+ @override
+ Widget build(BuildContext context) {
+ return Scaffold(
+ appBar: AppBar(
+ title: Text('Instellingen'),
+ backgroundColor: Style.background,
+ foregroundColor: Style.titleColor,
+ ),
+ body: Center(
+ child: Padding(
+ padding: const EdgeInsets.all(50),
+ child: Column(
+ children: [
+ TextFormField(
+ keyboardType: TextInputType.number,
+ initialValue: widget.settings.salary.toStringAsFixed(2),
+ onChanged: (value) =>
+ {widget.settings.salary = double.parse(value)},
+ decoration: InputDecoration(
+ labelText: 'Huidige uurloon',
+ ),
+ ),
+ Padding(padding: const EdgeInsets.all(20)),
+ TextButton(
+ onPressed: () async => await saveSettings(),
+ child: Text('Opslaan')),
+ ],
+ ),
+ ),
+ ),
+ );
+ }
+}