Added initial ask for gradesystem in gradeaverage
This commit is contained in:
@ -30,12 +30,45 @@ class _GradeAverageState extends State<GradeAverage> {
|
||||
}
|
||||
}
|
||||
|
||||
void switchSystem(bool e) => setState(() {
|
||||
grades.clear();
|
||||
gradeSystem = e;
|
||||
settings.val(write: true).gradeAveragesSettings.useGradeSystem = e;
|
||||
_persistGrades();
|
||||
});
|
||||
|
||||
@override
|
||||
void initState() {
|
||||
super.initState();
|
||||
|
||||
grades = settings.val().gradeAveragesSettings.inputs;
|
||||
gradeSystem = settings.val().gradeAveragesSettings.useGradeSystem;
|
||||
|
||||
WidgetsBinding.instance.addPostFrameCallback((timeStamp) {
|
||||
if(!settings.val().gradeAveragesSettings.askedForPreferredGradeSystem) {
|
||||
settings.val(write: true).gradeAveragesSettings.askedForPreferredGradeSystem = true;
|
||||
showDialog(context: context, builder: (context) => AlertDialog(
|
||||
title: const Text("Notensystem"),
|
||||
content: const Text("Wähle dein bevorzugtes Schulnotensystem"),
|
||||
actions: [
|
||||
TextButton(
|
||||
onPressed: () {
|
||||
switchSystem(true);
|
||||
Navigator.of(context).pop();
|
||||
},
|
||||
child: const Text("Realschule"),
|
||||
),
|
||||
TextButton(
|
||||
onPressed: () {
|
||||
switchSystem(false);
|
||||
Navigator.of(context).pop();
|
||||
},
|
||||
child: const Text("Oberstufe"),
|
||||
),
|
||||
],
|
||||
));
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
@override
|
||||
@ -82,12 +115,6 @@ class _GradeAverageState extends State<GradeAverage> {
|
||||
)).toList(),
|
||||
|
||||
onSelected: (e) {
|
||||
void switchSystem() => setState(() {
|
||||
grades.clear();
|
||||
gradeSystem = e;
|
||||
settings.val(write: true).gradeAveragesSettings.useGradeSystem = e;
|
||||
_persistGrades();
|
||||
});
|
||||
|
||||
if(grades.isNotEmpty) {
|
||||
showDialog(
|
||||
@ -96,11 +123,11 @@ class _GradeAverageState extends State<GradeAverage> {
|
||||
title: "Notensystem wechseln",
|
||||
content: "Beim wechsel des Notensystems werden alle Einträge zurückgesetzt.",
|
||||
confirmButton: "Fortfahren",
|
||||
onConfirm: () => switchSystem(),
|
||||
onConfirm: () => switchSystem(e),
|
||||
),
|
||||
);
|
||||
} else {
|
||||
switchSystem();
|
||||
switchSystem(e);
|
||||
}
|
||||
},
|
||||
),
|
||||
|
Reference in New Issue
Block a user