Commit e95228e
Changed files (4)
lib
components
measurement_list
lib/components/measurement_list/measurement_list.dart
@@ -1,3 +1,4 @@
+import 'package:blood_pressure_app/components/consistent_future_builder.dart';
import 'package:blood_pressure_app/components/measurement_list/measurement_list_entry.dart';
import 'package:blood_pressure_app/model/blood_pressure.dart';
import 'package:blood_pressure_app/model/settings_store.dart';
@@ -6,9 +7,42 @@ import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:provider/provider.dart';
class MeasurementList extends StatelessWidget {
+ const MeasurementList({super.key});
+
+ @override
+ Widget build(BuildContext context) {
+ return Consumer<Settings>(
+ builder: (context, settings, child) {
+ return Column(
+ mainAxisSize: MainAxisSize.min,
+ children: [
+ const MeasurementListHeader(),
+ Expanded(
+ child: Consumer<BloodPressureModel>(
+ builder: (context, model, child) {
+ return ConsistentFutureBuilder(
+ future: model.getInTimeRange(settings.displayDataStart, settings.displayDataEnd),
+ onData: (context, data) {
+ return MeasurementListEntries(
+ entries: data
+ );
+ }
+ );
+ },
+ )
+ )
+ ]
+ );
+ },
+ );
+ }
+}
+
+
+class MeasurementListEntries extends StatelessWidget {
final List<BloodPressureRecord> entries;
- const MeasurementList({super.key, required this.entries});
+ const MeasurementListEntries({super.key, required this.entries});
@override
Widget build(BuildContext context) {
@@ -25,8 +59,8 @@ class MeasurementList extends StatelessWidget {
}
}
-class ModernListHeader extends StatelessWidget {
- const ModernListHeader({super.key});
+class MeasurementListHeader extends StatelessWidget {
+ const MeasurementListHeader({super.key});
@override
Widget build(BuildContext context) {
lib/components/measurement_list/measurement_list_entry.dart
@@ -6,7 +6,6 @@ import 'package:flutter_gen/gen_l10n/app_localizations.dart';
import 'package:intl/intl.dart';
import 'package:provider/provider.dart';
-// TODO: finish
class MeasurementListRow extends StatelessWidget {
final BloodPressureRecord record;
lib/screens/add_measurement.dart
@@ -193,10 +193,7 @@ class _AddMeasurementPageState extends State<AddMeasurementPage> {
final navigator = Navigator.of(context);
if (widget.isEdit) {
- assert(widget.initTime != null);
- if (widget.initTime != null) {
- await model.delete(widget.initTime!);
- }
+ await model.delete(widget.initTime!);
}
await model.add(BloodPressureRecord(_time, _systolic, _diastolic, _pulse, _note ?? ''));
if (settings.exportAfterEveryEntry && context.mounted) {
lib/screens/home.dart
@@ -1,7 +1,5 @@
-import 'package:blood_pressure_app/components/consistent_future_builder.dart';
import 'package:blood_pressure_app/components/legacy_measurement_list.dart';
import 'package:blood_pressure_app/components/measurement_graph.dart';
-import 'package:blood_pressure_app/model/blood_pressure.dart';
import 'package:blood_pressure_app/model/settings_store.dart';
import 'package:blood_pressure_app/screens/add_measurement.dart';
import 'package:blood_pressure_app/screens/settings.dart';
@@ -55,22 +53,9 @@ class AppHome extends StatelessWidget {
return Column(children: [
const MeasurementGraph(),
if (!settings.useLegacyList)
- const ModernListHeader(),
- if (!settings.useLegacyList)
- Expanded(
- flex: 50,
- child: Consumer<BloodPressureModel>(
- builder: (context, model, child) {
- return ConsistentFutureBuilder(
- future: model.getInTimeRange(settings.displayDataStart, settings.displayDataEnd),
- onData: (context, data) {
- return MeasurementList(
- entries: data
- );
- }
- );
- },
- )
+ const Expanded(
+ flex: 50,
+ child: MeasurementList()
),
if(settings.useLegacyList)
Expanded(