Commit af423af

derdilla <82763757+NobodyForNothing@users.noreply.github.com>
2023-12-30 17:09:16
don't add measurements on edit
Signed-off-by: derdilla <82763757+NobodyForNothing@users.noreply.github.com>
1 parent 57a7642
Changed files (3)
lib
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 { // TODO block medicine intake on edit
+class AddEntryDialoge extends StatefulWidget {
   /// Create a input mask for entering measurements.
   /// 
   /// This is usually created through the [showAddEntryDialoge] function.
@@ -27,7 +27,10 @@ class AddEntryDialoge extends StatefulWidget { // TODO block medicine intake on
 
   /// Values that are prefilled.
   ///
-  /// When this is null the timestamp is [DateTime.now] and the other fields will be empty.
+  /// When this is null the timestamp is [DateTime.now] and the other fields
+  /// will be empty.
+  /// When an initial record is set medicine input is not possible because it is
+  /// saved separately.
   final BloodPressureRecord? initialRecord;
 
   @override
@@ -292,7 +295,7 @@ class _AddEntryDialogeState extends State<AddEntryDialoge> {
               initialColor: needlePin?.color ?? Colors.transparent,
               shape: buildListTileBorder(needlePin?.color)
             ),
-            if (widget.settings.medications.isNotEmpty)
+            if (widget.settings.medications.isNotEmpty && widget.initialRecord == null)
               Padding(
                 padding: const EdgeInsets.symmetric(vertical: 16),
                 child: Row(
lib/components/measurement_list/measurement_list_entry.dart
@@ -1,5 +1,4 @@
 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';
@@ -35,7 +34,6 @@ 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) {
@@ -45,9 +43,7 @@ class MeasurementListRow extends StatelessWidget {
                       model.add(entry!.$1!);
                     }
                   }
-                  if (entry?.$2 != null) {
-                    intakes.addIntake(entry!.$2!);
-                  }
+                  assert(entry?.$2 == null);
                 },
                 icon: const Icon(Icons.edit),
                 tooltip: localizations.edit,
lib/screens/elements/legacy_measurement_list.dart
@@ -1,7 +1,6 @@
 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';
@@ -83,7 +82,6 @@ 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,
@@ -95,9 +93,7 @@ class LegacyMeasurementsList extends StatelessWidget {
                                     model.add(entry!.$1!);
                                   }
                                 }
-                                if (entry?.$2 != null) {
-                                  intakes.addIntake(entry!.$2!);
-                                }
+                                assert(entry?.$2 == null);
                                 return false;
                               } else { // delete
                                 bool dialogeDeletionConfirmed = false;