Index: denali.pro =================================================================== diff -u -r5a7400c816e447ab2453ccb5b3bd5fbb09f4c72f -r544436bd97cb7679865fa2c972a601a471065e2e --- denali.pro (.../denali.pro) (revision 5a7400c816e447ab2453ccb5b3bd5fbb09f4c72f) +++ denali.pro (.../denali.pro) (revision 544436bd97cb7679865fa2c972a601a471065e2e) @@ -54,6 +54,7 @@ sources/cloudsync \ sources/abstract \ sources/model \ + sources/model/confirm \ sources/model/settings \ sources/model/ui/data \ sources/model/hd/adjustment \ @@ -76,6 +77,7 @@ sources/model/dg/adjustment \ sources/model/dg/adjustment/settings \ sources/view \ + sources/view/confirm \ sources/view/settings \ sources/view/pretreatment \ sources/view/ui/data \ @@ -125,6 +127,8 @@ sources/model/MAbstract.h \ sources/model/MAbstractDynamic.h \ sources/device/DeviceModels.h \ + \ # ---------- Models - confirm + sources/model/confirm/MDuetConfirmHDi.h \ \ # ---------- Models - POST sources/model/dg/data/post/MDGPostFinalResultData.h \ sources/model/dg/data/post/MDGPostSingleResultData.h \ @@ -262,9 +266,10 @@ sources/view/VTreatmentCreate.h \ sources/view/VEventSpy.h \ sources/view/VView.h \ - sources/view/VPowerOff.h \ sources/view/VGeneralEvent.h \ sources/device/DeviceView.h \ + \ # ---------- Views - CONFIRM + sources/view/confirm/VConfirm.h \ \ # ---------- Views - POST sources/view/dg/data/post/VDGPOSTData.h \ \ # ---------- Views - Settings @@ -378,7 +383,7 @@ sources/device/DeviceController.cpp \ sources/model/ui/data/MUIBloodPressureData.cpp \ sources/storage/Settings.cpp \ - sources/storage/TreatmentLog.cpp \ + sources/storage/TreatmentLog.cpp \ sources/view/hd/data/post/VHDPOSTData.cpp \ sources/wifi/WifiInterface.cpp \ sources/bluetooth/BluetoothInterface.cpp \ @@ -387,6 +392,8 @@ sources/model/MAbstract.cpp \ sources/model/MAbstractDynamic.cpp \ sources/device/DeviceModels.cpp \ + \ # ---------- Models - CONFIRM + sources/model/confirm/MDuetConfirmHDi.cpp \ \ # ---------- Models - POST sources/model/dg/data/post/MDGPostFinalResultData.cpp \ sources/model/dg/data/post/MDGPostSingleResultData.cpp \ @@ -513,9 +520,10 @@ \ # ---------- Views ---------- sources/view/VTreatmentCreate.cpp \ sources/view/VEventSpy.cpp \ - sources/view/VPowerOff.cpp \ sources/view/VGeneralEvent.cpp \ sources/device/DeviceView.cpp \ + \ # ---------- Views - CONFIRM + sources/view/confirm/VConfirm.cpp \ \ # ---------- Views - POST sources/view/dg/data/post/VDGPOSTData.cpp \ \ # ---------- Views - Alarm Index: sources/canbus/MessageDispatcher.cpp =================================================================== diff -u -rba928149acf9501b0ab751eab84f4b7e8ac05353 -r544436bd97cb7679865fa2c972a601a471065e2e --- sources/canbus/MessageDispatcher.cpp (.../MessageDispatcher.cpp) (revision ba928149acf9501b0ab751eab84f4b7e8ac05353) +++ sources/canbus/MessageDispatcher.cpp (.../MessageDispatcher.cpp) (revision 544436bd97cb7679865fa2c972a601a471065e2e) @@ -770,6 +770,20 @@ onActionTransmit(GuiActionType::ID_UIPostFinalResultData, mData); } +/*! + * \brief MessageDispatcher::onAdjustment + * \details This method transmits the UI Generic User Confirmation result. + * \param vData - Data model contains the Generic User Confirmation result. + * \return void + */ +void MessageDispatcher::onAdjustment(const DuetConfirmUIrData &vData) +{ + QVariantList mData; + mData += vData.mId; + mData += vData.mConfirm; + onActionTransmit(GuiActionType::ID_DuetConfirmUIr, mData); +} + // ---------------------------------------------------------------------------------------------------- /*! Index: sources/canbus/MessageGlobals.h =================================================================== diff -u -re5577fbd781ded0678882680d5d31f08f56c9c68 -r544436bd97cb7679865fa2c972a601a471065e2e --- sources/canbus/MessageGlobals.h (.../MessageGlobals.h) (revision e5577fbd781ded0678882680d5d31f08f56c9c68) +++ sources/canbus/MessageGlobals.h (.../MessageGlobals.h) (revision 544436bd97cb7679865fa2c972a601a471065e2e) @@ -49,10 +49,14 @@ // but if the model still needs more the model will fail. // so it is better to keep them next to each other to make sure they are in sync. // ---- - {Gui::GuiActionType::ID_PowerOff , 1 }, + {Gui::GuiActionType::ID_PowerOff , 1 }, // 1 byte {Gui::GuiActionType::ID_ShuttingDown , 0 }, {Gui::GuiActionType::ID_KeepAlive , 255 }, // 0 => 255 to be able to run a multi-frame test. + // Generic Confirm + {Gui::GuiActionType::ID_DuetConfirmHDi , 3 * 4 }, // 3 parameters each 4bytes + {Gui::GuiActionType::ID_DuetConfirmUIr , 2 * 4 }, // 2 parameters each 4bytes + // POST {Gui::GuiActionType::ID_HDPostSingleResultData , 2 * 4 }, // 2 parameters each 4bytes {Gui::GuiActionType::ID_HDPostFinalResultData , 1 * 4 }, // 1 parameters each 4bytes Index: sources/canbus/MessageInterpreter.cpp =================================================================== diff -u -r5a7400c816e447ab2453ccb5b3bd5fbb09f4c72f -r544436bd97cb7679865fa2c972a601a471065e2e --- sources/canbus/MessageInterpreter.cpp (.../MessageInterpreter.cpp) (revision 5a7400c816e447ab2453ccb5b3bd5fbb09f4c72f) +++ sources/canbus/MessageInterpreter.cpp (.../MessageInterpreter.cpp) (revision 544436bd97cb7679865fa2c972a601a471065e2e) @@ -238,7 +238,8 @@ } LOG_EVENT_UI(QString("RawData")); break; - + // Generic Confirm + case Gui::GuiActionType::ID_DuetConfirmUIr : INTERPRET_TRANSMIT_MESSAGE(DuetConfirmUIrData ); break; case Gui::GuiActionType::ID_PowerOff : INTERPRET_TRANSMIT_MESSAGE(AdjustPowerOffRequestData ); break; // POST case Gui::GuiActionType::ID_UIPostFinalResultData : INTERPRET_TRANSMIT_MESSAGE(AdjustUIPostFinalResultRequestData ); break; @@ -434,6 +435,8 @@ case Gui::GuiActionType::ID_PowerOff : ok = notify(vMessage, vData, Gui::GuiActionType::ID_PowerOff ); break; case Gui::GuiActionType::ID_ShuttingDown : ok = true; LOG_EVENT("HD,ShuttingDown"); /* TODO : implement notify<>() */ break; + case Gui::GuiActionType::ID_DuetConfirmHDi : ok = notify(vMessage, vData, Gui::GuiActionType::ID_DuetConfirmHDi ); break; + // ----- POST case Gui::GuiActionType::ID_HDPostSingleResultData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_HDPostSingleResultData ); break; case Gui::GuiActionType::ID_HDPostFinalResultData : ok = notify(vMessage, vData, Gui::GuiActionType::ID_HDPostFinalResultData ); break; Index: sources/gui/GuiGlobals.cpp =================================================================== diff -u -rddc4d403774f54b87ad5518c3b4ad877e5fb3707 -r544436bd97cb7679865fa2c972a601a471065e2e --- sources/gui/GuiGlobals.cpp (.../GuiGlobals.cpp) (revision ddc4d403774f54b87ad5518c3b4ad877e5fb3707) +++ sources/gui/GuiGlobals.cpp (.../GuiGlobals.cpp) (revision 544436bd97cb7679865fa2c972a601a471065e2e) @@ -28,6 +28,9 @@ #include "VHDPOSTData.h" #include "VDGPOSTData.h" +// Confirm +#include "VConfirm.h" + // Device #include "DeviceView.h" @@ -37,7 +40,6 @@ #include "VSettings.h" #include "VAlarmStatus.h" #include "VAlarmActiveList.h" -#include "VPowerOff.h" #include "VAdjustmentVersions.h" #include "VAdjustmentServiceMode.h" #include "VAdjustmentServiceDates.h" Index: sources/gui/GuiGlobals.h =================================================================== diff -u -r13e65c3d271d503c2e2e2f1f20736652c470f8cc -r544436bd97cb7679865fa2c972a601a471065e2e --- sources/gui/GuiGlobals.h (.../GuiGlobals.h) (revision 13e65c3d271d503c2e2e2f1f20736652c470f8cc) +++ sources/gui/GuiGlobals.h (.../GuiGlobals.h) (revision 544436bd97cb7679865fa2c972a601a471065e2e) @@ -87,7 +87,8 @@ ID_HDPostFinalResultData = 0x8F00, // 143 ID_DGPostSingleResultData = 0x9000, // 144 ID_DGPostFinalResultData = 0x9100, // 145 - ID_UIPostFinalResultData = 0x9200, // 146 + ID_UIPostFinalResultData = 0x9200, // 146 // ID_UIFinalResultTxr - UI Final Result response/Data transmit + ID_UIPostFinalResultHDReq = 0xB200, // 178 // ID_HDFinalResultRxq - HD Final Result request received // ----- Settings // Service Mode @@ -120,7 +121,6 @@ ID_PreTreatmentStates = 0x5C00, // 92 ID_TreatmentStates = 0x0F00, // 15 ID_PostTreatmentStates = 0x7700, // 119 - ID_DisinfectStates = 0x7E00, // 129 // DG message // ----- ID_PowerOff = 0x0100, @@ -266,13 +266,10 @@ ID_TreatmentLogEventData = 0x9600, // 150 // Disinfect - ID_AdjustDisinfectReq = 0x7F00, // 127 - ID_AdjustDisinfectRsp = 0x8000, // 128 - ID_AdjustChemicalConfirmReq = 0x8100, // 129 - ID_AdjustChemicalConfirmRsp = 0x8200, // 130 - ID_DisinfectDGFlushTimeData = 0x8300, // 131 - ID_DisinfectDGHeatTimeData = 0x8400, // 132 - ID_DisinfectDGChemicalTimeData = 0x8500, // 133 + ID_AdjustDisinfectModeReq = 0x9A00, // 154 + ID_AdjustDisinfectModeRsp = 0x9B00, // 155 + ID_AdjustDisinfectStartReq = 0x7F00, // 127 + ID_AdjustDisinfectStartRsp = 0x8000, // 128 }; enum class GuiActionsData_Enum /*: quint8 QML does not support*/ { Index: sources/gui/qml/AlarmItem.qml =================================================================== diff -u -refb549a694539630ba7c1d8e348f598052b85f0f -r544436bd97cb7679865fa2c972a601a471065e2e --- sources/gui/qml/AlarmItem.qml (.../AlarmItem.qml) (revision efb549a694539630ba7c1d8e348f598052b85f0f) +++ sources/gui/qml/AlarmItem.qml (.../AlarmItem.qml) (revision 544436bd97cb7679865fa2c972a601a471065e2e) @@ -53,6 +53,12 @@ // Alarms dialog/bar navigation handling ----- vvvvv ----- function alarmMinimize() { + // The has alarm check has been added here to let other components call this function, + // without worrying about the alarmDialog popoing up without an alarm present. + // Look at the PowerItem as an example. + if ( ! vAlarmStatus.hasAlarm ) return + + _alarmDialog .visible = false _alarmListDialog.visible = false _alarmBar .visible = true @@ -61,7 +67,7 @@ // The has alarm check has been added here to let other components call this function, // without worrying about the alarmDialog popoing up without an alarm present. // Look at the PowerItem as an example. - if ( ! vAlarmStatus.hasAlarm ) return; + if ( ! vAlarmStatus.hasAlarm ) return if ( _root._DEBUG_DISABLE_MAXIMIZE_ ) { alarmMinimize() Index: sources/model/MModel.h =================================================================== diff -u -r5a7400c816e447ab2453ccb5b3bd5fbb09f4c72f -r544436bd97cb7679865fa2c972a601a471065e2e --- sources/model/MModel.h (.../MModel.h) (revision 5a7400c816e447ab2453ccb5b3bd5fbb09f4c72f) +++ sources/model/MModel.h (.../MModel.h) (revision 544436bd97cb7679865fa2c972a601a471065e2e) @@ -30,6 +30,8 @@ #include "MAlarmActiveList.h" #include "MAdjustHDAlarmVolumeResponse.h" +#include "MDuetConfirmHDi.h" + // POST #include "MHDPostSingleResultData.h" #include "MHDPostFinalResultData.h" @@ -259,6 +261,9 @@ \details Registers the models in the Qt MetaType so it can be used in signal/slots between threads. */ #define REGISTER_MODEL_METATYPES \ + /* CONFIRM */ \ + REGISTER_METATYPE( DuetConfirmHDiData ) \ + REGISTER_METATYPE( DuetConfirmUIrData ) \ /* POST */ \ REGISTER_METATYPE( HDPostSingleResultData ) \ REGISTER_METATYPE( HDPostFinalResultData ) \ @@ -443,6 +448,8 @@ */ #define ACTION_RECEIVE_MODEL_BRIDGE_CONNECTIONS(vSOURCE) \ \ + /* CONFIRM */ \ + ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, DuetConfirmHDiData ) \ /* POST */ \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, HDPostSingleResultData ) \ ACTION_RECEIVE_BRIDGE_CONNECTION(vSOURCE, HDPostFinalResultData ) \ @@ -551,6 +558,8 @@ // /* Request */ ---------------------------------------------------------// #define ADJUST_TRANSMT_MODEL_BRIDGE_CONNECTIONS(vSOURCE) \ + /* CONFIRM */ \ + ADJUST_TRANSMT_BRIDGE_CONNECTION(vSOURCE, DuetConfirmUIrData ) \ /* POST */ \ ADJUST_TRANSMT_BRIDGE_CONNECTION(vSOURCE, AdjustUIPostFinalResultRequestData ) \ \ @@ -618,6 +627,8 @@ This macro should be used with its counterpart macro \ref ACTION_RECEIVE_MODEL_BRIDGE_CONNECTIONS */ #define ACTION_RECEIVE_MODEL_BRIDGE_DEFINITIONS \ + /* CONFIRM */ \ + ACTION_RECEIVE_BRIDGE_DEFINITION( DuetConfirmHDiData ) \ /* POST */ \ ACTION_RECEIVE_BRIDGE_DEFINITION( HDPostSingleResultData ) \ ACTION_RECEIVE_BRIDGE_DEFINITION( HDPostFinalResultData ) \ @@ -727,6 +738,8 @@ #define ADJUST_TRANSMT_MODEL_BRIDGE_DEFINITIONS \ /* Request --------------------------------------------------------- */ \ + /* CONFIRM */ \ + ADJUST_TRANSMT_BRIDGE_DEFINITION( DuetConfirmUIrData ) \ /* POST */ \ ADJUST_TRANSMT_BRIDGE_DEFINITION( AdjustUIPostFinalResultRequestData ) \ /* Post-Treatment */ \ @@ -778,6 +791,8 @@ #define ADJUST_TRANSMT_MODEL_BRIDGE_DEFINITIONS_NOEMIT \ /* Request ----------------------- NoEmit -------------------------- */ \ + /* CONFIRM */ \ + ADJUST_TRANSMT_BRIDGE_DEFINITION_NOEMIT( DuetConfirmUIrData ) \ /* POST */ \ ADJUST_TRANSMT_BRIDGE_DEFINITION_NOEMIT( AdjustUIPostFinalResultRequestData ) \ /* Post-Treatment */ \ @@ -829,6 +844,8 @@ #define ADJUST_TRANSMT_MODEL_BRIDGE_DEFINITIONS_PUBLIC \ /* Request ----------------------- public -------------------------- */ \ + /* CONFIRM */ \ + ADJUST_TRANSMT_BRIDGE_DEFINITION_PUBLIC( DuetConfirmUIrData ) \ /* POST */ \ ADJUST_TRANSMT_BRIDGE_DEFINITION_PUBLIC( AdjustUIPostFinalResultRequestData ) \ /* Post-Treatment */ \ @@ -880,6 +897,8 @@ //== MessageInterpreter Signal Definition =======================================// #define ACTION_RECEIVE_SIGNALS \ + /* CONFIRM */ \ + ACTION_RECEIVE_SIGNAL( DuetConfirmHDiData ) \ /* POST */ \ ACTION_RECEIVE_SIGNAL( HDPostSingleResultData ) \ ACTION_RECEIVE_SIGNAL( HDPostFinalResultData ) \ Index: sources/view/VView.h =================================================================== diff -u -rddc4d403774f54b87ad5518c3b4ad877e5fb3707 -r544436bd97cb7679865fa2c972a601a471065e2e --- sources/view/VView.h (.../VView.h) (revision ddc4d403774f54b87ad5518c3b4ad877e5fb3707) +++ sources/view/VView.h (.../VView.h) (revision 544436bd97cb7679865fa2c972a601a471065e2e) @@ -102,6 +102,8 @@ #define REGISTER_VIEW_TYPES \ using namespace View; \ REGISTER_TYPE( VGeneralEvent ) \ + /* CONFIRM */ \ + REGISTER_TYPE( VConfirm ) \ /* POST */ \ REGISTER_TYPE( VHDPOSTData ) \ REGISTER_TYPE( VDGPOSTData ) \ @@ -119,8 +121,6 @@ /* Alarm */ \ REGISTER_TYPE( VAlarmStatus ) \ REGISTER_TYPE( VAlarmActiveList ) \ - /* Power off */ \ - REGISTER_TYPE( VPowerOff ) \ /* Treatment Common */ \ REGISTER_TYPE( VTreatmentVitals ) \ /* Data - States */ \ Index: sources/view/hd/alarm/VAlarmStatus.cpp =================================================================== diff -u -r465a935949a85d3d1bebd11979737ff38ef96122 -r544436bd97cb7679865fa2c972a601a471065e2e --- sources/view/hd/alarm/VAlarmStatus.cpp (.../VAlarmStatus.cpp) (revision 465a935949a85d3d1bebd11979737ff38ef96122) +++ sources/view/hd/alarm/VAlarmStatus.cpp (.../VAlarmStatus.cpp) (revision 544436bd97cb7679865fa2c972a601a471065e2e) @@ -151,6 +151,7 @@ alarm_Flag_alarmsCondition (vData.mFlags.at(GuiAlarmFlags::ALARM_STATE_FLAG_BIT_POS_TOP_CONDITION )); if (vData.mTop == GuiAlarmID::ALARM_ID_NO_ALARM) { + hasAlarm(false); emit didAlarmEmpty(); } else {