blood sugar dialog improvement.

merge-update-with-lab-changes
Sikander Saleem 5 years ago
parent d38de8c494
commit c1ce3a0489

@ -237,7 +237,8 @@ class _BloodDonationPageState extends State<BloodDonationPage> {
buttonCancelText: Text(TranslationBase.of(context).cancel), buttonCancelText: Text(TranslationBase.of(context).cancel),
buttonCancelColor: Colors.grey, buttonCancelColor: Colors.grey,
onlyCancelButton: true, onlyCancelButton: true,
)); ),
);
}, },
child: Container(width: 250, height: 200, child: Image.asset('assets/images/BloodChrt_EN.png'), color: Colors.white), child: Container(width: 250, height: 200, child: Image.asset('assets/images/BloodChrt_EN.png'), color: Colors.white),
), ),

@ -8,8 +8,8 @@ import 'package:diplomaticquarterapp/uitl/gif_loader_dialog_utils.dart';
import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart'; import 'package:diplomaticquarterapp/uitl/translations_delegate_base.dart';
import 'package:diplomaticquarterapp/widgets/buttons/defaultButton.dart'; import 'package:diplomaticquarterapp/widgets/buttons/defaultButton.dart';
import 'package:diplomaticquarterapp/widgets/data_display/text.dart'; import 'package:diplomaticquarterapp/widgets/data_display/text.dart';
import 'package:diplomaticquarterapp/widgets/dialogs/RadioStringDialog.dart'; import 'package:diplomaticquarterapp/widgets/dialogs/ConfirmWithMessageDialog.dart';
import 'package:diplomaticquarterapp/widgets/dialogs/confirm_dialog.dart'; import 'package:diplomaticquarterapp/widgets/dialogs/radio_selection_dialog.dart';
import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart'; import 'package:diplomaticquarterapp/widgets/others/app_scaffold_widget.dart';
import 'package:flutter/cupertino.dart'; import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart'; import 'package:flutter/material.dart';
@ -41,6 +41,8 @@ class _AddBloodSugarPageState extends State<AddBloodSugarPage> {
String measureUnitSelectedType = 'mg/dlt'; String measureUnitSelectedType = 'mg/dlt';
int measuredTime = 1; int measuredTime = 1;
bool isButtonDisabled = true; bool isButtonDisabled = true;
int _selectedMeasureUnitIndex = 0;
final List<String> measureUnitList = ['mg/dlt', 'mol/L']; final List<String> measureUnitList = ['mg/dlt', 'mol/L'];
final List<String> measureTimeEnList = [ final List<String> measureTimeEnList = [
'Before Breakfast', 'Before Breakfast',
@ -66,6 +68,7 @@ class _AddBloodSugarPageState extends State<AddBloodSugarPage> {
"صائم", "صائم",
"آخر", "آخر",
]; ];
int _selectedMeasureTimeIndex;
String measureTimeSelectedType; String measureTimeSelectedType;
@override @override
@ -92,15 +95,14 @@ class _AddBloodSugarPageState extends State<AddBloodSugarPage> {
showNewAppBar: true, showNewAppBar: true,
showNewAppBarTitle: true, showNewAppBarTitle: true,
appBarTitle: widget.isUpdate ? TranslationBase.of(context).update : TranslationBase.of(context).add, appBarTitle: widget.isUpdate ? TranslationBase.of(context).update : TranslationBase.of(context).add,
body: SingleChildScrollView( body: Column(
children: [
Expanded(
child: SingleChildScrollView(
physics: BouncingScrollPhysics(), physics: BouncingScrollPhysics(),
child: Container( padding: EdgeInsets.all(21),
margin: EdgeInsets.all(15),
child: Column( child: Column(
children: [ children: [
SizedBox(
height: 15,
),
NewTextFields( NewTextFields(
hintText: TranslationBase.of(context).sugarAdd, hintText: TranslationBase.of(context).sugarAdd,
controller: _bloodSugarValueController, controller: _bloodSugarValueController,
@ -109,9 +111,7 @@ class _AddBloodSugarPageState extends State<AddBloodSugarPage> {
fontWeight: FontWeight.normal, fontWeight: FontWeight.normal,
fontSize: 14, fontSize: 14,
), ),
SizedBox( SizedBox(height: 12),
height: 8,
),
InkWell( InkWell(
onTap: () { onTap: () {
confirmSelectMeasureUnitDialog(); confirmSelectMeasureUnitDialog();
@ -133,9 +133,7 @@ class _AddBloodSugarPageState extends State<AddBloodSugarPage> {
), ),
), ),
), ),
SizedBox( SizedBox(height: 12),
height: 8,
),
InkWell( InkWell(
onTap: () { onTap: () {
DatePicker.showDatePicker(context, showTitleActions: true, minTime: DateTime(DateTime.now().year - 1, 1, 1), maxTime: DateTime.now(), onConfirm: (date) { DatePicker.showDatePicker(context, showTitleActions: true, minTime: DateTime(DateTime.now().year - 1, 1, 1), maxTime: DateTime.now(), onConfirm: (date) {
@ -158,9 +156,7 @@ class _AddBloodSugarPageState extends State<AddBloodSugarPage> {
), ),
), ),
), ),
SizedBox( SizedBox(height: 12),
height: 8,
),
InkWell( InkWell(
onTap: () { onTap: () {
DatePicker.showTimePicker(context, showTitleActions: true, onConfirm: (date) { DatePicker.showTimePicker(context, showTitleActions: true, onConfirm: (date) {
@ -180,9 +176,7 @@ class _AddBloodSugarPageState extends State<AddBloodSugarPage> {
), ),
), ),
), ),
SizedBox( SizedBox(height: 12),
height: 8,
),
InkWell( InkWell(
onTap: () { onTap: () {
confirmSelectMeasureTimeDialog(projectViewModel.isArabic ? measureTimeArList : measureTimeEnList); confirmSelectMeasureTimeDialog(projectViewModel.isArabic ? measureTimeArList : measureTimeEnList);
@ -218,14 +212,11 @@ class _AddBloodSugarPageState extends State<AddBloodSugarPage> {
color: Colors.red[900], color: Colors.red[900],
), ),
onTap: () { onTap: () {
ConfirmDialog dialog = new ConfirmDialog( showDialog(
context: context, context: context,
confirmMessage: TranslationBase.of(context).removeMeasure, child: ConfirmWithMessageDialog(
okText: TranslationBase.of(context).ok, message: TranslationBase.of(context).removeMeasure,
cancelText: TranslationBase.of(context).cancel, onTap: () async {
okFunction: () async {
ConfirmDialog.closeAlertDialog(context);
GifLoaderDialogUtils.showMyDialog(context); GifLoaderDialogUtils.showMyDialog(context);
widget.bloodSugarViewMode.deactivateDiabeticStatus(lineItemNo: widget.lineItemNo).then((value) { widget.bloodSugarViewMode.deactivateDiabeticStatus(lineItemNo: widget.lineItemNo).then((value) {
GifLoaderDialogUtils.hideDialog(context); GifLoaderDialogUtils.hideDialog(context);
@ -238,23 +229,20 @@ class _AddBloodSugarPageState extends State<AddBloodSugarPage> {
AppToast.showErrorToast(message: widget.bloodSugarViewMode.error); AppToast.showErrorToast(message: widget.bloodSugarViewMode.error);
}); });
}, },
cancelFunction: () => {}); ),
dialog.showAlertDialog(context); );
}, },
) )
], ],
)) ),
)
: Container() : Container()
], ],
), ),
), ),
), ),
bottomSheet: Container( DefaultButton(
color: Theme.of(context).scaffoldBackgroundColor, TranslationBase.of(context).save,
child: Padding(
padding: const EdgeInsets.all(20.0),
child: DefaultButton(
TranslationBase.of(context).save.toUpperCase(),
isButtonDisabled isButtonDisabled
? null ? null
: () async { : () async {
@ -291,9 +279,10 @@ class _AddBloodSugarPageState extends State<AddBloodSugarPage> {
} }
}, },
disabledColor: Colors.grey, disabledColor: Colors.grey,
).insideContainer,
],
), ),
), );
));
} }
String getDate() { String getDate() {
@ -305,33 +294,41 @@ class _AddBloodSugarPageState extends State<AddBloodSugarPage> {
} }
void confirmSelectMeasureUnitDialog() { void confirmSelectMeasureUnitDialog() {
List<RadioSelectionDialogModel> list = [
RadioSelectionDialogModel("mg/dlt", 0),
RadioSelectionDialogModel("mol/L", 1),
];
showDialog( showDialog(
context: context, context: context,
child: RadioStringDialog( child: RadioSelectionDialog(
radioList: measureUnitList, listData: list,
title: TranslationBase.of(context).measureUnit, selectedIndex: _selectedMeasureUnitIndex,
selectedValue: measureUnitSelectedType, onValueSelected: (index) {
onValueSelected: (value) { _selectedMeasureUnitIndex = index;
setState(() { measureUnitSelectedType = list[index].title;
measureUnitSelectedType = value; setState(() {});
});
}, },
), ),
); );
} }
void confirmSelectMeasureTimeDialog(List<String> list) { void confirmSelectMeasureTimeDialog(List<String> dataList) {
List<RadioSelectionDialogModel> list = [
for (int i = 0; i < dataList.length; i++) RadioSelectionDialogModel(dataList[i], i),
];
showDialog( showDialog(
context: context, context: context,
child: RadioStringDialog( child: RadioSelectionDialog(
radioList: list, listData: list,
title: TranslationBase.of(context).measureTime, selectedIndex: _selectedMeasureTimeIndex,
selectedValue: measureTimeSelectedType, isScrollable: true,
onValueSelected: (value) { onValueSelected: (index) {
setState(() { _selectedMeasureTimeIndex = index;
measureTimeSelectedType = value; measureTimeSelectedType = list[index].title;
measuredTime = list.indexOf(value); measuredTime = index;
}); setState(() {});
}, },
), ),
); );

Loading…
Cancel
Save