Commit d6301bf
Changed files (4)
lib
components
dialoges
measurement_list
screens
lib/components/dialoges/add_measurement_dialoge.dart
@@ -13,7 +13,7 @@ import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:intl/intl.dart';
/// Input mask for entering measurements.
-class AddEntryDialoge extends StatefulWidget {
+class AddEntryDialoge extends StatefulWidget { // TODO block medicine intake on edit
/// Create a input mask for entering measurements.
///
/// This is usually created through the [showAddEntryDialoge] function.
@@ -300,7 +300,7 @@ class _AddEntryDialogeState extends State<AddEntryDialoge> {
Expanded(
child: ListTile(
shape: buildListTileBorder(),
- title: DropdownButton( // TODO medicine intake
+ title: DropdownButton(
isExpanded: true,
value: widget.settings.medications
.where((e) => e.id == medicineId).firstOrNull,
@@ -328,7 +328,6 @@ class _AddEntryDialogeState extends State<AddEntryDialoge> {
}
Material.of(context).markNeedsPaint();
});
- // TODO
}
),
),
lib/components/measurement_list/measurement_list_entry.dart
@@ -1,4 +1,5 @@
import 'package:blood_pressure_app/components/dialoges/add_measurement_dialoge.dart';
+import 'package:blood_pressure_app/model/blood_pressure/medicine/intake_history.dart';
import 'package:blood_pressure_app/model/blood_pressure/model.dart';
import 'package:blood_pressure_app/model/blood_pressure/record.dart';
import 'package:blood_pressure_app/model/storage/storage.dart';
@@ -33,6 +34,7 @@ class MeasurementListRow extends StatelessWidget {
IconButton(
onPressed: () async {
final model = Provider.of<BloodPressureModel>(context, listen: false);
+ final intakes = Provider.of<IntakeHistory>(context, listen: false);
final entry = await showAddEntryDialoge(context,
Provider.of<Settings>(context, listen: false));
if (entry?.$1 != null) {
@@ -43,7 +45,7 @@ class MeasurementListRow extends StatelessWidget {
}
}
if (entry?.$2 != null) {
- // TODO: save medicine intake
+ intakes.addIntake(entry!.$2!);
}
},
icon: const Icon(Icons.edit),
lib/screens/elements/legacy_measurement_list.dart
@@ -1,6 +1,7 @@
import 'dart:collection';
import 'package:blood_pressure_app/components/dialoges/add_measurement_dialoge.dart';
+import 'package:blood_pressure_app/model/blood_pressure/medicine/intake_history.dart';
import 'package:blood_pressure_app/model/blood_pressure/model.dart';
import 'package:blood_pressure_app/model/blood_pressure/record.dart';
import 'package:blood_pressure_app/model/storage/intervall_store.dart';
@@ -82,6 +83,7 @@ class LegacyMeasurementsList extends StatelessWidget {
key: Key(data[index].creationTime.toIso8601String()),
confirmDismiss: (direction) async {
final model = Provider.of<BloodPressureModel>(context, listen: false);
+ final intakes = Provider.of<IntakeHistory>(context, listen: false);
if (direction == DismissDirection.startToEnd) { // edit
final model = Provider.of<BloodPressureModel>(context, listen: false);
final entry = await showAddEntryDialoge(context,
@@ -94,7 +96,7 @@ class LegacyMeasurementsList extends StatelessWidget {
}
}
if (entry?.$2 != null) {
- // TODO: save medicine intake
+ intakes.addIntake(entry!.$2!);
}
return false;
} else { // delete
lib/screens/home_screen.dart
@@ -1,4 +1,5 @@
import 'package:blood_pressure_app/components/dialoges/add_measurement_dialoge.dart';
+import 'package:blood_pressure_app/model/blood_pressure/medicine/intake_history.dart';
import 'package:blood_pressure_app/model/blood_pressure/model.dart';
import 'package:blood_pressure_app/model/storage/intervall_store.dart';
import 'package:blood_pressure_app/model/storage/settings_store.dart';
@@ -29,6 +30,7 @@ class AppHome extends StatelessWidget {
if (Provider.of<Settings>(context, listen: false).startWithAddMeasurementPage) {
SchedulerBinding.instance.addPostFrameCallback((_) async {
final model = Provider.of<BloodPressureModel>(context, listen: false);
+ final intakes = Provider.of<IntakeHistory>(context, listen: false);
final measurement = await showAddEntryDialoge(context, Provider.of<Settings>(context, listen: false));
if (measurement == null) return;
if (measurement.$1 != null) {
@@ -39,7 +41,7 @@ class AppHome extends StatelessWidget {
}
}
if (measurement.$2 != null) {
- // TODO: save medicine intake
+ intakes.addIntake(measurement.$2!);
}
});
}
@@ -99,6 +101,7 @@ class AppHome extends StatelessWidget {
autofocus: true,
onPressed: () async {
final model = Provider.of<BloodPressureModel>(context, listen: false);
+ final intakes = Provider.of<IntakeHistory>(context, listen: false);
final measurement = await showAddEntryDialoge(context, Provider.of<Settings>(context, listen: false));
if (measurement == null) return;
if (measurement.$1 != null) {
@@ -109,7 +112,7 @@ class AppHome extends StatelessWidget {
}
}
if (measurement.$2 != null) {
- // TODO: save medicine intake
+ intakes.addIntake(measurement.$2!);
}
},
child: const Icon(Icons.add,),