quickAccessAddModal function
Future
quickAccessAddModal({
- required BuildContext context,
- required String name,
- required String code,
- required String diagnosisID,
- required String diagnosisName,
- required QuickAccessType type,
Implementation
Future<dynamic> quickAccessAddModal({
required BuildContext context,
required String name,
required String code,
required String diagnosisID,
required String diagnosisName,
required QuickAccessType type,
}) {
final String? patientName = getPatientInfo().patientName;
final bool isSmallScreen = ResponsiveWidget.isSmallScreen(context);
return showDialog(
context: context,
builder: (BuildContext context) {
return Dialog(
shape:
RoundedRectangleBorder(borderRadius: BorderRadius.circular(10.0)),
child: SizedBox(
width: MediaQuery.of(context).size.width * 0.4,
child: Padding(
padding: isSmallScreen
? const EdgeInsets.symmetric(vertical: 10, horizontal: 15)
: const EdgeInsets.symmetric(vertical: 20, horizontal: 30),
child: ListView(
shrinkWrap: true,
children: <Widget>[
Column(
crossAxisAlignment: CrossAxisAlignment.start,
children: <Widget>[
smallVerticalSizedBox,
Text(
'Add ${type.name}',
style: isSmallScreen
? Theme.of(context).textTheme.subtitle2
: Theme.of(context).textTheme.headline6,
),
if (isSmallScreen)
smallVerticalSizedBox
else
mediumVerticalSizedBox,
Divider(height: 0.5, color: Colors.grey[500]),
if (isSmallScreen)
smallVerticalSizedBox
else
mediumVerticalSizedBox,
RichText(
text: TextSpan(
style: isSmallScreen
? Theme.of(context).textTheme.bodyText1
: Theme.of(context).textTheme.subtitle2,
children: <TextSpan>[
TextSpan(
text:
'You are about to ${type.name == 'test' ? 'order' : 'add'} a '),
TextSpan(
text: name,
style: TextThemes.heavySize14Text()),
TextSpan(text: ' ${type.name} for '),
TextSpan(
text: patientName,
style: TextThemes.heavySize14Text()),
const TextSpan(text: '?'),
]),
),
SizedBox(height: isSmallScreen ? 15 : 25.0),
Row(
mainAxisAlignment: MainAxisAlignment.spaceBetween,
children: <Widget>[
SILSecondaryButton(
buttonKey: AppWidgetKeys.silSecondaryButton,
text: silButtonCancel,
borderColor: Colors.transparent,
onPressed: () =>
Navigator.of(context, rootNavigator: true).pop(),
),
SILPrimaryButton(
buttonKey: AppWidgetKeys.silPrimaryButtonKey,
text: confirmBtnText,
onPressed: () => saveTestOrDiagnosis(
context: context,
name: name,
code: code,
diagnosisID: diagnosisID,
diagnosisName: diagnosisName,
type: type,
),
),
],
),
const SizedBox(width: 0.1)
],
),
],
),
),
),
);
},
);
}