feat: implement consumer and Provider.of test things

This commit is contained in:
Liat Ben-Haim 2024-04-02 15:31:23 +02:00
parent 77418d216f
commit 333c89d841
3 changed files with 54 additions and 18 deletions

View file

@ -1,11 +1,25 @@
import 'package:flutter/material.dart';
import 'package:intl/intl.dart';
import 'package:migrainetracker/data_storage/daily_status_repository.dart';
import 'package:provider/provider.dart';
class DataEntryPage extends StatelessWidget {
const DataEntryPage({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
var firstButton = ElevatedButton(
onPressed: () {
// model.logFeelingMigrainy(true);
Provider.of<DailyStatusModel>(context, listen: false)
.logFeelingMigrainy(true);
},
style: ElevatedButton.styleFrom(
shape: CircleBorder(),
padding: EdgeInsets.all(12),
),
child: const Icon(Icons.error_outline, size: 120),
);
return Column(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
children: <Widget>[
@ -19,14 +33,7 @@ class DataEntryPage extends StatelessWidget {
crossAxisAlignment: CrossAxisAlignment.stretch,
children: [
Expanded(
child: ElevatedButton(
onPressed: () {},
style: ElevatedButton.styleFrom(
shape: CircleBorder(),
padding: EdgeInsets.all(24),
),
child: const Icon(Icons.error_outline, size: 120,),
),
child: firstButton,
),
SizedBox.fromSize(size: const Size.fromWidth(32)),
Expanded(
@ -34,9 +41,12 @@ class DataEntryPage extends StatelessWidget {
onPressed: () {},
style: ElevatedButton.styleFrom(
shape: CircleBorder(),
padding: EdgeInsets.all(24),
padding: EdgeInsets.all(12),
),
child: const Icon(
Icons.notifications_paused_sharp,
size: 120,
),
child: const Icon(Icons.notifications_paused_sharp, size: 120,),
),
),
],
@ -57,9 +67,12 @@ class DataEntryPage extends StatelessWidget {
onPressed: () {},
style: ElevatedButton.styleFrom(
shape: CircleBorder(),
padding: EdgeInsets.all(24),
padding: EdgeInsets.all(12),
),
child: const Icon(
Icons.electric_bolt,
size: 120,
),
child: const Icon(Icons.electric_bolt, size: 120,),
),
),
SizedBox.fromSize(size: const Size.fromWidth(32)),
@ -69,9 +82,12 @@ class DataEntryPage extends StatelessWidget {
onPressed: () {},
style: ElevatedButton.styleFrom(
shape: CircleBorder(),
padding: EdgeInsets.all(24),
padding: EdgeInsets.all(12),
),
child: const Icon(
Icons.medication_outlined,
size: 120,
),
child: const Icon(Icons.medication_outlined, size: 120,),
),
),
],
@ -92,6 +108,21 @@ class DataEntryPage extends StatelessWidget {
],
),
),
Expanded(
child: Row(
mainAxisAlignment: MainAxisAlignment.spaceEvenly,
children: [
Consumer<DailyStatusModel>(
builder: (context, model, child) => Text(
"msg: ${model.message2}",
style: const TextStyle(
fontSize: 14,
fontWeight: FontWeight.w400,
),
)),
],
),
),
]);
}