Index: sources/gui/qml/main.qml =================================================================== diff -u -r733dbd53c542d94baa4862b6d657aa555209ee00 -rc66e8e38c6c26cf108c975a7b068e45fe5b56f89 --- sources/gui/qml/main.qml (.../main.qml) (revision 733dbd53c542d94baa4862b6d657aa555209ee00) +++ sources/gui/qml/main.qml (.../main.qml) (revision c66e8e38c6c26cf108c975a7b068e45fe5b56f89) @@ -111,23 +111,23 @@ VAlarmStatus { id: vAlarmStatus onRaiseAlarm: { updateAlarm(); - _notification.isSilenced = vAlarmStatus.alarm_Flag_alarmsSilenced - _notification_bar.toggleSilence(vAlarmStatus.alarm_Flag_alarmsSilenced, + _alarm_dialog.isSilenced = vAlarmStatus.alarm_Flag_alarmsSilenced + _alarm_bar.toggleSilence(vAlarmStatus.alarm_Flag_alarmsSilenced, vAlarmStatus.alarm_MuteTimeout); - if (vAlarmStatus.alarm_Priority === GuiActions.ALARM_PRIORITY_HIGH) { - _notification.visible = true; - _notification_bar.visible = false; + if (isAlarmHighPriority()) { + _alarm_dialog.visible = true; + _alarm_bar.visible = false; } else { - if (!_notification.visible) { - _notification_bar.visible = true; + if (!_alarm_dialog.visible) { + _alarm_bar.visible = true; } } } onHideAlarm: { - _notification_bar.visible = false; - _notification.visible = false; + _alarm_bar.visible = false; + _alarm_dialog.visible = false; } } VPowerOff { id: vPowerOff @@ -187,43 +187,53 @@ } - NotificationBar { id: _notification_bar + NotificationBar { id: _alarm_bar anchors.bottom: _mainMenu.top level : vAlarmStatus.alarm_Priority text : vAlarmStatus.text; isSilenced: vAlarmStatus.alarm_Flag_alarmsSilenced; - MouseArea { id: _TouchArea anchors.fill: parent; onClicked: { updateAlarm(); - _notification.visible = true; - _notification_bar.visible = false; - + _alarm_bar.setFlashing(false); + _alarm_bar.visible = false; + _alarm_dialog.visible = true; } } } + function isAlarmHighPriority() { + return vAlarmStatus.alarm_Priority === GuiActions.ALARM_PRIORITY_HIGH; + } + function updateAlarm() { - _notification.titleText = "Alarm"; - _notification.description = vAlarmStatus.text; - [_notification.backgroundColor, _notification.textColor] = getRootTextFromAlarmLevel(vAlarmStatus.alarm_Priority); - [_notification.titleBarBackground, _notification.titleBarForeground] = getAlarmTopBarColors(vAlarmStatus.alarm_Priority); - _notification_bar.backgroundColor = _notification.titleBarBackground; + _alarm_dialog.titleText = "Alarm"; + _alarm_dialog.description = vAlarmStatus.text; + _alarm_dialog.alarmID = vAlarmStatus.alarm_AlarmID; + [_alarm_dialog.backgroundColor, _alarm_dialog.textColor] = getRootTextFromAlarmLevel(vAlarmStatus.alarm_Priority); + [_alarm_dialog.titleBarBackground, _alarm_dialog.titleBarForeground] = getAlarmTopBarColors(vAlarmStatus.alarm_Priority); + _alarm_bar.backgroundColor = _alarm_dialog.titleBarBackground; } - Alarm { id: _notification + Alarm { id: _alarm_dialog onClosed: { - _notification_bar.visible = true; + _alarm_bar.visible = true; } onPressedOkay: { - _notification.visible = false; + _alarm_dialog.visible = false; + vAlarmStatus.requestOkay(alarmID) + if (isAlarmHighPriority()) { + _alarm_bar.setFlashing(true); + return; + } + _alarm_bar.setFlashing(false); } onPressedSilence: { - _notification.visible = false; + _alarm_dialog.visible = false; vAlarmStatus.requestSilence(); } }