Index: simulator/plugins/alarms/interface.ui =================================================================== diff -u -rd04cee8574dd42b7299fbfe0f212b2b0995be799 -r6f1082f52141e89d2cc6ec99688430897bfb8469 --- simulator/plugins/alarms/interface.ui (.../interface.ui) (revision d04cee8574dd42b7299fbfe0f212b2b0995be799) +++ simulator/plugins/alarms/interface.ui (.../interface.ui) (revision 6f1082f52141e89d2cc6ec99688430897bfb8469) @@ -30,398 +30,19 @@ - - - - - - 65535 - - - - - - - 86400 - - - - - - - - 0 - 0 - - - - Top : - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - spnTopID - - - - - - - 2 - - - QLayout::SetFixedSize - - - - - 0 - - - true - - - false - - - true - - - - - - - 1 - - - true - - - true - - - - - - - 2 - - - true - - - true - - - - - - - false - - - 3 - - - true - - - true - - - true - - - - - - - - - - 0 - 0 - - - - Esclates In (sec) : - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - spnEscalatesIn - - - - - - - - 0 - 0 - - - - Priority : - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - rdoPriorityNone - - - - - - - - 0 - 0 - - - - Mute Timeout (sec): - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - spnMuteTimeout - - - - - - - false - - - Mute - - - Ctrl+Del - - - false - - - - - - - Send - - - Ctrl+Return - - - - - - - 86400 - - - - - - - - 0 - 0 - - - - - 0 - 200 - - - - QAbstractItemView::NoEditTriggers - - - - SYSTEM_FAULT - - - Unchecked - - - ItemIsUserCheckable|ItemIsEnabled - - - - - STOP - - - Unchecked - - - ItemIsUserCheckable|ItemIsEnabled - - - - - NO_CLEAR - - - Unchecked - - - ItemIsUserCheckable|ItemIsEnabled - - - - - NO_RESUME - - - Unchecked - - - ItemIsUserCheckable|ItemIsEnabled - - - - - NO_RINSEBACK - - - Unchecked - - - ItemIsUserCheckable|ItemIsEnabled - - - - - NO_END_TREATMENT - - - Unchecked - - - ItemIsUserCheckable|ItemIsEnabled - - - - - NO_NEW_TREATMENT - - - Unchecked - - - ItemIsUserCheckable|ItemIsEnabled - - - - - USER_MUST_ACK - - - Unchecked - - - ItemIsUserCheckable|ItemIsEnabled - - - - - ALARMS_TO_ESCALATE - - - Unchecked - - - ItemIsUserCheckable|ItemIsEnabled - - - - - ALARMS_SILENCED - - - Unchecked - - - ItemIsUserCheckable|ItemIsEnabled - - - - - LAMP_ON - - - Unchecked - - - ItemIsUserCheckable|ItemIsEnabled - - - - - UNUSED_1 - - - Unchecked - - - ItemIsUserCheckable - - - - - UNUSED_2 - - - Unchecked - - - ItemIsUserCheckable - - - - - UNUSED_3 - - - Unchecked - - - ItemIsUserCheckable - - - - - UNUSED_4 - - - Unchecked - - - ItemIsUserCheckable - - - - - TOP_CONDITION - - - Unchecked - - - ItemIsUserCheckable|ItemIsEnabled - - - - - + + + + color: rgb(238, 238, 236); +background-color: rgb(252, 175, 62); + + + Alarm Status + + + Qt::AlignCenter + + @@ -463,142 +84,541 @@ - - - - - - color: rgb(238, 238, 236); -background-color: rgb(252, 175, 62); - - - Alarm Trigger - - - Qt::AlignCenter - - - - - - - Trigger - - - Shift+Return - - - - - - - false - - - Clear - - - Shift+Del - - - - - - - + + + + Qt::Vertical + + + + + + + 65535 + + + + + + + 86400 + + + + + 0 0 - Alarm ID : + Top : Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - spnAlarmID + spnTopID - - - - 1 + + + + 2 + + QLayout::SetFixedSize + + + + + 0 + + + true + + + false + + + true + + + + + + + 1 + + + true + + + true + + + + + + + 2 + + + true + + + true + + + + + + + false + + + 3 + + + true + + + true + + + true + + + + + + + + + + 0 + 0 + + + + Esclates In (sec) : + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + spnEscalatesIn + + + + + + + + 0 + 0 + + + + Priority : + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + rdoPriorityNone + + + + + + + + 0 + 0 + + + + Mute Timeout (sec): + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + spnMuteTimeout + + + + + + + false + + + Mute + + + Ctrl+Del + + + false + + + + + + + Send + + + Ctrl+Return + + + + + - 65535 + 86400 + + + + + 0 + 0 + + + + + 0 + 200 + + + + QAbstractItemView::NoEditTriggers + + + + SYSTEM_FAULT + + + Unchecked + + + ItemIsUserCheckable|ItemIsEnabled + + + + + STOP + + + Unchecked + + + ItemIsUserCheckable|ItemIsEnabled + + + + + NO_CLEAR + + + Unchecked + + + ItemIsUserCheckable|ItemIsEnabled + + + + + NO_RESUME + + + Unchecked + + + ItemIsUserCheckable|ItemIsEnabled + + + + + NO_RINSEBACK + + + Unchecked + + + ItemIsUserCheckable|ItemIsEnabled + + + + + NO_END_TREATMENT + + + Unchecked + + + ItemIsUserCheckable|ItemIsEnabled + + + + + NO_NEW_TREATMENT + + + Unchecked + + + ItemIsUserCheckable|ItemIsEnabled + + + + + USER_MUST_ACK + + + Unchecked + + + ItemIsUserCheckable|ItemIsEnabled + + + + + ALARMS_TO_ESCALATE + + + Unchecked + + + ItemIsUserCheckable|ItemIsEnabled + + + + + ALARMS_SILENCED + + + Unchecked + + + ItemIsUserCheckable|ItemIsEnabled + + + + + LAMP_ON + + + Unchecked + + + ItemIsUserCheckable|ItemIsEnabled + + + + + UNUSED_1 + + + Unchecked + + + ItemIsUserCheckable + + + + + UNUSED_2 + + + Unchecked + + + ItemIsUserCheckable + + + + + UNUSED_3 + + + Unchecked + + + ItemIsUserCheckable + + + + + UNUSED_4 + + + Unchecked + + + ItemIsUserCheckable + + + + + TOP_CONDITION + + + Unchecked + + + ItemIsUserCheckable|ItemIsEnabled + + + + - - - - - Qt::ScrollBarAlwaysOn - - - Qt::ScrollBarAlwaysOn - - - QAbstractItemView::NoEditTriggers - - - false - - - false - - - true - - - QAbstractItemView::SingleSelection - - - QAbstractItemView::SelectRows - - - true - - - true - - - true - - - true - - - - Time - - - - - Alarm ID - - - - - - - - - - color: rgb(238, 238, 236); + + + + + + + false + + + Clear + + + Shift+Del + + + + + + + Trigger + + + Shift+Return + + + + + + + false + + + Condition + + + Ctrl+Del + + + + + + + color: rgb(238, 238, 236); background-color: rgb(252, 175, 62); - - - Alarm Status - - - Qt::AlignCenter - + + + Alarm Trigger + + + Qt::AlignCenter + + + + + + + + + + 0 + 0 + + + + Alarm ID : + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + spnAlarmID + + + + + + + 1 + + + 65535 + + + + + + + + + Qt::ScrollBarAlwaysOn + + + Qt::ScrollBarAlwaysOn + + + QAbstractItemView::NoEditTriggers + + + false + + + false + + + true + + + QAbstractItemView::SingleSelection + + + QAbstractItemView::SelectRows + + + true + + + true + + + true + + + true + + + + Time + + + + + Alarm ID + + + + + + Index: simulator/plugins/alarms/loader.py =================================================================== diff -u -rd04cee8574dd42b7299fbfe0f212b2b0995be799 -r6f1082f52141e89d2cc6ec99688430897bfb8469 --- simulator/plugins/alarms/loader.py (.../loader.py) (revision d04cee8574dd42b7299fbfe0f212b2b0995be799) +++ simulator/plugins/alarms/loader.py (.../loader.py) (revision 6f1082f52141e89d2cc6ec99688430897bfb8469) @@ -19,6 +19,7 @@ btnTrigger: QtWidgets.QPushButton btnClear: QtWidgets.QPushButton + btnCondition: QtWidgets.QPushButton spnAlarmID: QtWidgets.QSpinBox tblStatusIDs: QtWidgets.QTableWidget @@ -89,6 +90,7 @@ self.btnTrigger = self.find_button('btnTrigger') self.btnClear = self.find_button('btnClear') + self.btnCondition = self.find_button('btnCondition') self.spnAlarmID = self.find_spinbox('spnAlarmID') self.tblTriggeredIDs = self.find_table_widget('tblTriggeredIDs') @@ -113,6 +115,7 @@ """ self.btnTrigger.clicked.connect(self.do_trigger) self.btnClear.clicked.connect(self.do_clear) + self.btnCondition.clicked.connect(self.do_clear_condition) self.tblTriggeredIDs.itemClicked.connect(self.on_trigger_ids_item_clicked) self.btnSend.clicked.connect(self.do_send) @@ -208,16 +211,22 @@ the slot for clear button :return: none """ - items = self.tblTriggeredIDs.selectedItems() - if len(items): - item: QtWidgets.QTableWidgetItem = items[0] - row = item.row() - model = self.tblTriggeredIDs.model() - alarm_id = model.data(model.index(row, self.eColID)) - denaliMessages.setAlarmCleared(alarm_id) - self.tblTriggeredIDs.removeRow(row) + [alarm_id, row] = self.alarm_id() + denaliMessages.setAlarmCleared(alarm_id) + self.tblTriggeredIDs.removeRow(row) @Slot() + def do_clear_condition(self): + """ + the slot for condition button + :return: none + """ + [alarm_id, row] = self.alarm_id() + denaliMessages.setAlarmClearedCondition(alarm_id) + self.tblTriggeredIDs.item(row, self.eColID).setBackground(self.colors[AlarmPriority.ALARM_NONE]) + self.tblTriggeredIDs.item(row, self.eColID).setSelected(False) + + @Slot() def do_mute(self, value): """ the slot for mute button @@ -244,6 +253,7 @@ """ selected = item.isSelected() self.btnClear.setEnabled(selected) + self.btnCondition.setEnabled(selected) def __populate_status_ids_columns(self): """ @@ -303,3 +313,19 @@ model = self.tblTriggeredIDs.model() model.setData(model.index(row, self.eColTime), now) model.setData(model.index(row, self.eColID), alarm_id) + self.tblTriggeredIDs.item(row, self.eColID).setBackground(self.colors[AlarmPriority.ALARM_HIGH]) + + def alarm_id(self): + """ + gets the alarm id from the list of the triggered id list + :return: + """ + row = 0 + alarm_id = 0 + items = self.tblTriggeredIDs.selectedItems() + if len(items): + item: QtWidgets.QTableWidgetItem = items[0] + row = item.row() + model = self.tblTriggeredIDs.model() + alarm_id = model.data(model.index(row, self.eColID)) + return [alarm_id, row]