Commit 58725de

derdilla <derdilla06@gmail.com>
2023-06-03 10:53:38
make lifetime intervall display all data
1 parent 73327b9
lib/components/measurement_graph.dart
@@ -26,10 +26,9 @@ class _LineChart extends StatelessWidget {
                   return Consumer<BloodPressureModel>(
                     builder: (context, model, child) {
                       var end = settings.displayDataEnd;
-                      if (settings.graphStepSize == TimeStep.lifetime) end = DateTime.now();
 
                       return FutureBuilder<UnmodifiableListView<BloodPressureRecord>>(
-                          future: model.getInTimeRange(settings.displayDataStart, end),
+                          future: (settings.graphStepSize == TimeStep.lifetime) ? model.all : model.getInTimeRange(settings.displayDataStart, end),
                           builder: (BuildContext context, AsyncSnapshot<UnmodifiableListView<BloodPressureRecord>> snapshot) {
                             switch (snapshot.connectionState) {
                               case ConnectionState.none:
@@ -187,7 +186,9 @@ class MeasurementGraph extends StatelessWidget {
                           const Text('-') :
                           Text(formatter.format(settings.displayDataStart)),
                       const Spacer(),
-                      Text(formatter.format(settings.displayDataEnd)),
+                      (settings.graphStepSize == TimeStep.lifetime) ?
+                        const Text('now') :
+                        Text(formatter.format(settings.displayDataEnd)),
                     ],
                   );
                 }
lib/model/blood_pressure.dart
@@ -87,8 +87,8 @@ class BloodPressureModel extends ChangeNotifier {
     return UnmodifiableListView(recordsInRange);
   }
 
-  Future<List<BloodPressureRecord>> get all async {
-    return _convert(await _database.query('bloodPressureModel', columns: ['*']));
+  Future<UnmodifiableListView<BloodPressureRecord>> get all async {
+    return UnmodifiableListView(_convert(await _database.query('bloodPressureModel', columns: ['*'])));
   }
   
   Future<int> get count async {
test/ram_only_implementations.dart
@@ -29,7 +29,7 @@ class RamBloodPressureModel extends ChangeNotifier implements BloodPressureModel
   }
 
   @override
-  Future<List<BloodPressureRecord>> get all async => _records;
+  Future<UnmodifiableListView<BloodPressureRecord>> get all async => UnmodifiableListView(_records);
 
   @override
   Future<int> get count async => _records.length;