diff --git a/Frontend/patient_manager/lib/mih_packages/manage_business/builder/build_employee_list.dart b/Frontend/patient_manager/lib/mih_packages/manage_business/builder/build_employee_list.dart index 1a85bcae..1c35ac28 100644 --- a/Frontend/patient_manager/lib/mih_packages/manage_business/builder/build_employee_list.dart +++ b/Frontend/patient_manager/lib/mih_packages/manage_business/builder/build_employee_list.dart @@ -4,6 +4,7 @@ import 'package:flutter/material.dart'; import 'package:patient_manager/mih_components/mih_inputs_and_buttons/mih_button.dart'; import 'package:patient_manager/mih_components/mih_inputs_and_buttons/mih_dropdown_input.dart'; import 'package:patient_manager/mih_components/mih_inputs_and_buttons/mih_text_input.dart'; +import 'package:patient_manager/mih_components/mih_layout/mih_window.dart'; import 'package:patient_manager/mih_components/mih_pop_up_messages/mih_delete_message.dart'; import 'package:patient_manager/mih_components/mih_pop_up_messages/mih_error_message.dart'; import 'package:patient_manager/mih_components/mih_pop_up_messages/mih_loading_circle.dart'; @@ -148,135 +149,212 @@ class _BuildEmployeeListState extends State { showDialog( context: context, barrierDismissible: false, - builder: (context) => Dialog( - child: Stack( - children: [ - Container( - padding: const EdgeInsets.all(10.0), - width: 700.0, - //height: 475.0, - decoration: BoxDecoration( - color: MzanziInnovationHub.of(context)!.theme.primaryColor(), - borderRadius: BorderRadius.circular(25.0), - border: Border.all( - color: - MzanziInnovationHub.of(context)!.theme.secondaryColor(), - width: 5.0), - ), - child: SingleChildScrollView( - padding: const EdgeInsets.symmetric(horizontal: 10), - child: Column( - mainAxisSize: MainAxisSize.min, - children: [ - Text( - "Employee Details", - textAlign: TextAlign.center, - style: TextStyle( - color: MzanziInnovationHub.of(context)! - .theme - .secondaryColor(), - fontSize: 35.0, - fontWeight: FontWeight.bold, - ), - ), - const SizedBox(height: 25.0), - MIHTextField( - controller: fnameController, - hintText: "First Name", - editable: false, - required: true, - ), - const SizedBox(height: 10.0), - MIHTextField( - controller: lnameController, - hintText: "Surname", - editable: false, - required: true, - ), - const SizedBox(height: 10.0), - MIHDropdownField( - controller: typeController, - hintText: "Title", - dropdownOptions: const ["Doctor", "Assistant"], - required: true, - editable: true, - ), - const SizedBox(height: 10.0), - MIHDropdownField( - controller: accessController, - hintText: "Access", - dropdownOptions: const ["Full", "Partial"], - required: true, - editable: true, - ), - const SizedBox(height: 30.0), - SizedBox( - width: 300, - height: 50, - child: MIHButton( - buttonText: "Update", - buttonColor: MzanziInnovationHub.of(context)! - .theme - .secondaryColor(), - textColor: MzanziInnovationHub.of(context)! - .theme - .primaryColor(), - onTap: () { - if (isRequiredFieldsCaptured()) { - updateEmployeeAPICall(index); - } else { - showDialog( - context: context, - builder: (context) { - return const MIHErrorMessage( - errorType: "Input Error"); - }, - ); - } - }, - ), - ) - ], - ), - ), + builder: (context) => MIHWindow( + fullscreen: false, + windowTitle: "Employee Details", + windowTools: [ + IconButton( + onPressed: () { + showDeleteWarning(index); + }, + icon: Icon( + Icons.delete, + color: MzanziInnovationHub.of(context)!.theme.secondaryColor(), + size: 35, ), - Positioned( - top: 5, - right: 5, - width: 50, - height: 50, - child: IconButton( - onPressed: () { - Navigator.pop(context); - }, - icon: Icon( - Icons.close, - color: MzanziInnovationHub.of(context)!.theme.errorColor(), - size: 35, - ), - ), + ), + ], + onWindowTapClose: () { + Navigator.pop(context); + }, + windowBody: [ + MIHTextField( + controller: fnameController, + hintText: "First Name", + editable: false, + required: true, + ), + const SizedBox(height: 10.0), + MIHTextField( + controller: lnameController, + hintText: "Surname", + editable: false, + required: true, + ), + const SizedBox(height: 10.0), + MIHDropdownField( + controller: typeController, + hintText: "Title", + dropdownOptions: const ["Doctor", "Assistant"], + required: true, + editable: true, + ), + const SizedBox(height: 10.0), + MIHDropdownField( + controller: accessController, + hintText: "Access", + dropdownOptions: const ["Full", "Partial"], + required: true, + editable: true, + ), + const SizedBox(height: 30.0), + SizedBox( + width: 300, + height: 50, + child: MIHButton( + buttonText: "Update", + buttonColor: + MzanziInnovationHub.of(context)!.theme.secondaryColor(), + textColor: MzanziInnovationHub.of(context)!.theme.primaryColor(), + onTap: () { + if (isRequiredFieldsCaptured()) { + updateEmployeeAPICall(index); + } else { + showDialog( + context: context, + builder: (context) { + return const MIHErrorMessage(errorType: "Input Error"); + }, + ); + } + }, ), - Positioned( - top: 5, - left: 5, - width: 50, - height: 50, - child: IconButton( - onPressed: () { - showDeleteWarning(index); - }, - icon: Icon( - Icons.delete, - color: - MzanziInnovationHub.of(context)!.theme.secondaryColor(), - size: 35, - ), - ), - ), - ], - ), + ) + ], ), ); + // showDialog( + // context: context, + // barrierDismissible: false, + // builder: (context) => Dialog( + // child: Stack( + // children: [ + // Container( + // padding: const EdgeInsets.all(10.0), + // width: 700.0, + // //height: 475.0, + // decoration: BoxDecoration( + // color: MzanziInnovationHub.of(context)!.theme.primaryColor(), + // borderRadius: BorderRadius.circular(25.0), + // border: Border.all( + // color: + // MzanziInnovationHub.of(context)!.theme.secondaryColor(), + // width: 5.0), + // ), + // child: SingleChildScrollView( + // padding: const EdgeInsets.symmetric(horizontal: 10), + // child: Column( + // mainAxisSize: MainAxisSize.min, + // children: [ + // Text( + // "Employee Details", + // textAlign: TextAlign.center, + // style: TextStyle( + // color: MzanziInnovationHub.of(context)! + // .theme + // .secondaryColor(), + // fontSize: 35.0, + // fontWeight: FontWeight.bold, + // ), + // ), + // const SizedBox(height: 25.0), + // MIHTextField( + // controller: fnameController, + // hintText: "First Name", + // editable: false, + // required: true, + // ), + // const SizedBox(height: 10.0), + // MIHTextField( + // controller: lnameController, + // hintText: "Surname", + // editable: false, + // required: true, + // ), + // const SizedBox(height: 10.0), + // MIHDropdownField( + // controller: typeController, + // hintText: "Title", + // dropdownOptions: const ["Doctor", "Assistant"], + // required: true, + // editable: true, + // ), + // const SizedBox(height: 10.0), + // MIHDropdownField( + // controller: accessController, + // hintText: "Access", + // dropdownOptions: const ["Full", "Partial"], + // required: true, + // editable: true, + // ), + // const SizedBox(height: 30.0), + // SizedBox( + // width: 300, + // height: 50, + // child: MIHButton( + // buttonText: "Update", + // buttonColor: MzanziInnovationHub.of(context)! + // .theme + // .secondaryColor(), + // textColor: MzanziInnovationHub.of(context)! + // .theme + // .primaryColor(), + // onTap: () { + // if (isRequiredFieldsCaptured()) { + // updateEmployeeAPICall(index); + // } else { + // showDialog( + // context: context, + // builder: (context) { + // return const MIHErrorMessage( + // errorType: "Input Error"); + // }, + // ); + // } + // }, + // ), + // ) + // ], + // ), + // ), + // ), + // Positioned( + // top: 5, + // right: 5, + // width: 50, + // height: 50, + // child: IconButton( + // onPressed: () { + // Navigator.pop(context); + // }, + // icon: Icon( + // Icons.close, + // color: MzanziInnovationHub.of(context)!.theme.errorColor(), + // size: 35, + // ), + // ), + // ), + // Positioned( + // top: 5, + // left: 5, + // width: 50, + // height: 50, + // child: IconButton( + // onPressed: () { + // showDeleteWarning(index); + // }, + // icon: Icon( + // Icons.delete, + // color: + // MzanziInnovationHub.of(context)!.theme.secondaryColor(), + // size: 35, + // ), + // ), + // ), + // ], + // ), + // ), + // ); } void showDeleteWarning(int index) {