Index: leahi.qrc =================================================================== diff -u -rdfb5f7070961fd2a34c2cb8d897ecc43c4f46598 -r0f83de066c8a116195a3cc60577d597ef9654c55 --- leahi.qrc (.../leahi.qrc) (revision dfb5f7070961fd2a34c2cb8d897ecc43c4f46598) +++ leahi.qrc (.../leahi.qrc) (revision 0f83de066c8a116195a3cc60577d597ef9654c55) @@ -190,6 +190,7 @@ sources/gui/qml/components/SubStepIndicator.qml sources/gui/qml/components/SDCInfo.qml sources/gui/qml/components/BaseChart.qml + sources/gui/qml/components/HelpNotification.qml sources/gui/qml/compounds/PressureRangeSlider.qml Index: sources/gui/qml/AlarmItem.qml =================================================================== diff -u -rf06b3645936db64dff09721cf625a6a8530e3f0a -r0f83de066c8a116195a3cc60577d597ef9654c55 --- sources/gui/qml/AlarmItem.qml (.../AlarmItem.qml) (revision f06b3645936db64dff09721cf625a6a8530e3f0a) +++ sources/gui/qml/AlarmItem.qml (.../AlarmItem.qml) (revision 0f83de066c8a116195a3cc60577d597ef9654c55) @@ -112,33 +112,35 @@ // this will change later to the actual message text // and the instruction would be in the dialog content - titleText : vAlarmStatus.title - titlePixelSize : Fonts.fontPixelAlarmTitle - instructionModel : vAlarmStatus.instructions - alarmID : vAlarmStatus.alarm_AlarmID - isSilenced : vAlarmStatus.alarm_Flag_alarmsSilenced - timeout : vAlarmStatus.alarm_MuteTimeout - okVisible : vAlarmStatus.alarm_Flag_UserMustAck - resumeVisible : ! vAlarmStatus.alarm_Flag_noResume - rinsebackVisible : ! vAlarmStatus.alarm_Flag_noRinseback - endVisible : ! vAlarmStatus.alarm_Flag_noEndTreatment - minVisible : ! vAlarmStatus.alarm_Flag_noMinimize - countDown : vTreatmentStop.countDown - countDownVisible : vTDOpMode.inTreatment + titleText : vAlarmStatus.title + titlePixelSize : Fonts.fontPixelAlarmTitle + instructionModel : vAlarmStatus.instructions + alarmID : vAlarmStatus.alarm_AlarmID + isSilenced : vAlarmStatus.alarm_Flag_alarmsSilenced + timeout : vAlarmStatus.alarm_MuteTimeout + okVisible : vAlarmStatus.alarm_Flag_UserMustAck + resumeVisible : ! vAlarmStatus.alarm_Flag_noResume + rinsebackVisible : ! vAlarmStatus.alarm_Flag_noRinseback + endVisible : ! vAlarmStatus.alarm_Flag_noEndTreatment + temporaryBreakVisible : ! vAlarmStatus.alarm_Flag_noTemporaryBreak + minVisible : ! vAlarmStatus.alarm_Flag_noMinimize + countDown : vTreatmentStop.countDown + countDownVisible : vTDOpMode.inTreatment && ( vTDTreatmentStates.txStop || vTDTreatmentStates.txRinseback || vTDTreatmentStates.txEnd ) && vTreatmentStop.total - onMuteClicked : vAlarmStatus.doSilence () - onResumeClicked : vAlarmStatus.doUserActionResume () - onRinsebackClicked : vAlarmStatus.doUserActionRinseback() - onEndClicked : vAlarmStatus.doUserActionEnd () - onOkClicked : vAlarmStatus.doUserActionOk () - onListClicked : alarmList () - onMinimizeClicked : alarmMinimize () + onMuteClicked : vAlarmStatus.doSilence () + onResumeClicked : vAlarmStatus.doUserActionResume () + onRinsebackClicked : vAlarmStatus.doUserActionRinseback () + onEndClicked : vAlarmStatus.doUserActionEnd () + onTemporaryBreakClicked : vAlarmStatus.doUserActionTemporaryBreak () + onOkClicked : vAlarmStatus.doUserActionOk () + onListClicked : alarmList () + onMinimizeClicked : alarmMinimize () } AlarmListDialog { id : _alarmListDialog Index: sources/gui/qml/components/HelpNotification.qml =================================================================== diff -u --- sources/gui/qml/components/HelpNotification.qml (revision 0) +++ sources/gui/qml/components/HelpNotification.qml (revision 0f83de066c8a116195a3cc60577d597ef9654c55) @@ -0,0 +1,24 @@ +import QtQuick 2.0 + + +Item { id: _root + + height : 35 + width : _infoNotificationBar.implicitWidth + + NotificationBarSmall { id: _infoNotificationBar + color : "transparent" + imageSource : "qrc:/images/iHelp" + imageVisible : true + text : qsTr("TAP THE STEP NUMBER TO VIEW IMAGE") + textColor : "#3682ED" + imageDiameter : 25 + imageTopMargin : 3 + textfontWeight : Font.DemiBold + height : parent.height + rowAnchors { + centerIn: undefined + left : parent.left + } + } +} Index: sources/gui/qml/dialogs/NotificationDialog.qml =================================================================== diff -u -rbea36be2766046e63c4e82539a630b5cee7ce1c6 -r0f83de066c8a116195a3cc60577d597ef9654c55 --- sources/gui/qml/dialogs/NotificationDialog.qml (.../NotificationDialog.qml) (revision bea36be2766046e63c4e82539a630b5cee7ce1c6) +++ sources/gui/qml/dialogs/NotificationDialog.qml (.../NotificationDialog.qml) (revision 0f83de066c8a116195a3cc60577d597ef9654c55) @@ -43,6 +43,7 @@ property bool resumeVisible : false property bool rinsebackVisible : false + property bool temporaryBreakVisible: false property bool endVisible : false property bool okVisible : false property bool minVisible : true @@ -60,6 +61,7 @@ signal listClicked() signal resumeClicked() + signal temporaryBreakClicked() signal rinsebackClicked() signal endClicked() signal okClicked() @@ -121,117 +123,95 @@ bottom : _timerRect.top } - Item { id: _infoItem + HelpNotification { id: _infoItem anchors { left : parent.left - leftMargin : Variables.defaultMargin * 2 + leftMargin : Variables.defaultMargin * 4 top : parent.top topMargin : Variables.defaultMargin * 3 } - height : 35 - width : parent.width / 2 - - NotificationBarSmall { id: _infoNotificationBar - color : "transparent" - imageSource : "qrc:/images/iHelp" - imageVisible : true - text : qsTr("TAP THE STEP NUMBER TO VIEW THE CORRESPONDING IMAGES") - textColor : "#595959" - imageDiameter : 25 - imageTopMargin : 3 - } } - Row { id: _alarmContentRow + ListView {id: _listView anchors { top : _infoItem.bottom + topMargin : Variables.defaultMargin bottom : parent.bottom left : parent.left leftMargin : Variables.defaultMargin * 4 - right : parent.right - rightMargin : Variables.defaultMargin * 3 - margins : Variables.defaultMargin - } - spacing : Variables.defaultMargin * 3 - width : _descriptionRect.width - ListView {id: _listView - height : _alarmContentRow.height - width : parent.width * 0.65 - currentIndex: 0 - interactive : false - clip : true + height : _descriptionRect.height + width : _descriptionRect.width / 2 + currentIndex: 0 + interactive : false + clip : true - delegate: Item { id: _delegateControl - width : _listView.width - height : Variables.instructionHeight - clip : true + delegate: Item { id: _delegateControl + width : _listView.width + height : Variables.instructionHeight + clip : true - Rectangle { id: _stepRect - height : 40 - width : height - radius : height - color : Colors.backgroundMainMenu + Rectangle { id: _stepRect + height : 40 + width : height + radius : height + color : _delegateControl.ListView.isCurrentItem ? Colors.backgroundMainMenu : Colors.offWhite + border { + color: Colors.backgroundMainMenu + width: 2 + } - Text { id: _stepNumberRect - anchors.centerIn: parent - text : index + 1 - color : Colors.white - font.pixelSize : 20 - font.weight : Font.Medium - } + Text { id: _stepNumberRect + anchors.centerIn: parent + text : index + 1 + color : _delegateControl.ListView.isCurrentItem ? Colors.offWhite : Colors.backgroundMainMenu + font.pixelSize : 20 + font.weight : Font.Medium + } - layer.enabled : true - layer.effect : DropShadow { id: _dropShadow - horizontalOffset: 0 - verticalOffset : 3 - radius : 3.0 - samples : 7 - color : "#50000000" - source : _stepRect - anchors.fill : _stepRect - } + layer.enabled : true + layer.effect : DropShadow { id: _dropShadow + horizontalOffset: 0 + verticalOffset : 3 + radius : 3.0 + samples : 7 + color : "#50000000" + source : _stepRect + anchors.fill : _stepRect } + } - Text { id: _delegateText - anchors { - left : _stepRect.right - leftMargin : Variables.defaultMargin - right : _delegateControl.right - } - height : parent.height - width : parent.width - font.pixelSize : 23 - font.weight : _delegateControl.ListView.isCurrentItem ? Font.DemiBold : Font.Normal - color : _delegateControl.ListView.isCurrentItem ? "#18559E" : Colors.alarmDialogText - text : model.instruction - wrapMode : Text.WordWrap + Text { id: _delegateText + anchors { + left : _stepRect.right + leftMargin : Variables.defaultMargin + right : _delegateControl.right } + height : parent.height + width : parent.width + font.pixelSize : Fonts.fontPixelInstructionStep + font.weight : _delegateControl.ListView.isCurrentItem ? Font.DemiBold : Font.Normal + color : _delegateControl.ListView.isCurrentItem ? "#18559E" : Colors.alarmDialogText + text : model.instruction + wrapMode : Text.WordWrap + } - MouseArea { - anchors.fill: parent - onClicked: { - if (_listView.currentIndex !== index) { - _listView.currentIndex = index - _root.figureImageSource = model.image - } + MouseArea { + anchors.fill: parent + onClicked: { + if (_listView.currentIndex !== index) { + _listView.currentIndex = index + _root.figureImageSource = model.image } } } } + } - Item { id: _imageContainer - width: parent.width * 0.30 - height: _alarmContentRow.height - Variables.defaultMargin - anchors.verticalCenter: parent.verticalCenter - - Image { id: _figureImage - width: parent.width - height: parent.height - fillMode: Image.PreserveAspectFit - } - } + Image { id: _figureImage + anchors.right : parent.right + anchors.verticalCenter: parent.verticalCenter } } @@ -294,15 +274,15 @@ } Row { id: _buttonGroup - property int buttonsWidth : 250 + property int buttonsWidth : 350 spacing: 50 anchors { bottom : parent.bottom horizontalCenter: parent.horizontalCenter rightMargin : spacing leftMargin : spacing - bottomMargin : Variables.defaultMargin * 2 + bottomMargin : Variables.defaultMargin * 4 } // IMPORTANT NOTE : Alarm Dialog buttons @@ -315,32 +295,46 @@ TouchRect { id : _resumeTouchRect visible : resumeVisible onPressed : resumeClicked() - text.text : qsTr("RESUME") + text.text : qsTr("Resume") width : _buttonGroup.buttonsWidth isDefault : true backgroundColor: Colors.white fgColor : isPressed ? Colors.white : borderColor selectColor : Qt.darker(borderColor, 1.15) + pixelSize : Fonts.fontPixelNotification } + TouchRect { id : _temporaryBreak + visible : temporaryBreakVisible + onPressed : temporaryBreakClicked() + text.text : qsTr("Temporary Break") + width : _buttonGroup.buttonsWidth + backgroundColor: Colors.white + fgColor : isPressed ? Colors.white : borderColor + selectColor : Qt.darker(borderColor, 1.15) + pixelSize : Fonts.fontPixelNotification + } + TouchRect { id : _rinsebackTouchRect visible : rinsebackVisible onPressed : rinsebackClicked() - text.text : qsTr("RINSEBACK") + text.text : qsTr("Return Blood & End Treatment") width : _buttonGroup.buttonsWidth backgroundColor: Colors.white fgColor : isPressed ? Colors.white : borderColor selectColor : Qt.darker(borderColor, 1.15) + pixelSize : Fonts.fontPixelNotification } TouchRect { id : _endTouchRect visible : endVisible onPressed : endClicked() - text.text : qsTr("END TREATMENT") + text.text : qsTr("End Treatment Only") width : _buttonGroup.buttonsWidth backgroundColor: Colors.white fgColor : isPressed ? Colors.white : borderColor selectColor : Qt.darker(borderColor, 1.15) + pixelSize : Fonts.fontPixelNotification } TouchRect { id : _okTouchRect @@ -351,6 +345,7 @@ backgroundColor: Colors.white fgColor : isPressed ? Colors.white : borderColor selectColor : Qt.darker(borderColor, 1.15) + pixelSize : Fonts.fontPixelNotification } } @@ -361,7 +356,7 @@ left : parent.left bottom : parent.bottom leftMargin : Variables.defaultMargin * 3 - bottomMargin: Variables.defaultMargin * 4 + bottomMargin: Variables.defaultMargin } color : Colors.alarmDialogGreyText font.pixelSize : Fonts.fontPixelAlarmID Index: sources/view/hd/alarm/VAlarmStatus.cpp =================================================================== diff -u -r3ce84d6c0217d317811f3807807397f241b81bc4 -r0f83de066c8a116195a3cc60577d597ef9654c55 --- sources/view/hd/alarm/VAlarmStatus.cpp (.../VAlarmStatus.cpp) (revision 3ce84d6c0217d317811f3807807397f241b81bc4) +++ sources/view/hd/alarm/VAlarmStatus.cpp (.../VAlarmStatus.cpp) (revision 0f83de066c8a116195a3cc60577d597ef9654c55) @@ -63,6 +63,16 @@ } /*! + * \brief View::VAlarmStatus::doUserActionEnd + * \details send the message to notify that user chose the End Treatment button + */ +void View::VAlarmStatus::doUserActionTemporaryBreak() { + AlarmUserActionRequestData data; + data.action = Gui::GuiAlarmUserActions::ALARM_USER_ACTION_TEMPOARY_BREAK; + emit didAdjustment(data); +} + +/*! * \brief View::VAlarmStatus::doUserActionOk * \details send the message to notify that user chose the OK button */ @@ -127,7 +137,7 @@ alarm_Flag_noResume (vData.mFlags.at(GuiAlarmFlags::ALARM_STATE_FLAG_BIT_POS_NO_RESUME )); alarm_Flag_noRinseback (vData.mFlags.at(GuiAlarmFlags::ALARM_STATE_FLAG_BIT_POS_NO_RINSEBACK )); alarm_Flag_noEndTreatment (vData.mFlags.at(GuiAlarmFlags::ALARM_STATE_FLAG_BIT_POS_NO_END_TREATMENT )); -// alarm_Flag_noNewTreatment (vData.mFlags.at(GuiAlarmFlags::ALARM_STATE_FLAG_BIT_POS____AVAILABLE )); // recently removed. 3/7/22, and is Availabe for later use. + alarm_Flag_noTemporaryBreak (vData.mFlags.at(GuiAlarmFlags::ALARM_STATE_FLAG_BIT_POS_NO_TEMPORARY_BREAK )); alarm_Flag_UserMustAck (vData.mFlags.at(GuiAlarmFlags::ALARM_STATE_FLAG_BIT_POS_OK_BUTTON_ONLY )); alarm_Flag_alarmsToEscalate (vData.mFlags.at(GuiAlarmFlags::ALARM_STATE_FLAG_BIT_POS_ALARMS_TO_ESCALATE )); // alarm_Flag_alarmsSilenced (vData.mFlags.at(GuiAlarmFlags::ALARM_STATE_FLAG_BIT_POS_ALARMS_SILENCED )); // look at the note @L112 Index: sources/view/hd/alarm/VAlarmStatus.h =================================================================== diff -u -r3ce84d6c0217d317811f3807807397f241b81bc4 -r0f83de066c8a116195a3cc60577d597ef9654c55 --- sources/view/hd/alarm/VAlarmStatus.h (.../VAlarmStatus.h) (revision 3ce84d6c0217d317811f3807807397f241b81bc4) +++ sources/view/hd/alarm/VAlarmStatus.h (.../VAlarmStatus.h) (revision 0f83de066c8a116195a3cc60577d597ef9654c55) @@ -72,7 +72,7 @@ PROPERTY( bool , alarm_Flag_noResume , false) PROPERTY( bool , alarm_Flag_noRinseback , false) PROPERTY( bool , alarm_Flag_noEndTreatment , false) -// PROPERTY( bool , alarm_Flag_noNewTreatment , false) // TODO : recently removed. 3/7/22 + PROPERTY( bool , alarm_Flag_noTemporaryBreak , false) PROPERTY( bool , alarm_Flag_UserMustAck , false) PROPERTY( bool , alarm_Flag_alarmsToEscalate , false) PROPERTY( bool , alarm_Flag_alarmsSilenced , false) @@ -116,10 +116,11 @@ void didAlarmEmpty(); public slots: - void doUserActionResume (); - void doUserActionRinseback (); - void doUserActionEnd (); - void doUserActionOk (); - void doSilence (); + void doUserActionResume (); + void doUserActionRinseback (); + void doUserActionEnd (); + void doUserActionTemporaryBreak (); + void doUserActionOk (); + void doSilence (); }; }