mirror of
https://github.com/CopterExpress/clever-show.git
synced 2026-06-02 18:19:33 +00:00
Preview of selfchecheck results on double click
This commit is contained in:
@@ -69,7 +69,7 @@ def check(check_name):
|
||||
failures = f(*args, **kwargs)
|
||||
msgs = []
|
||||
for failure in failures:
|
||||
msg = "[{}]: Failure: {}".format(check_name, failure)
|
||||
msg = "[{}]: Err: {}".format(check_name, failure)
|
||||
msgs.append(msg)
|
||||
logger.warning(msg)
|
||||
|
||||
|
||||
@@ -399,7 +399,16 @@ if __name__ == '__main__':
|
||||
tableView.setSortingEnabled(True)
|
||||
|
||||
tableView.show()
|
||||
myModel.add_client(StatedCopterData(copter_id=1000, checked=0, time_utc=1))
|
||||
|
||||
msgs = []
|
||||
msg = "[{}]: Failure: {}".format("FCU connection", "Angular velocities estimation is not available")
|
||||
msgs.append(msg)
|
||||
msg = "[{}]: Failure: {}".format("FCU connection1", "Angular velocities estimation is not available")
|
||||
msgs.append(msg)
|
||||
msg = "[{}]: Failure: {}".format("FCU connection2", "Angular velocities estimation is not available")
|
||||
msgs.append(msg)
|
||||
|
||||
myModel.add_client(StatedCopterData(copter_id=1000, checked=0, selfcheck=msgs, time_utc=1))
|
||||
myModel.add_client(StatedCopterData(checked=2, selfcheck="OK", time_utc=2))
|
||||
myModel.add_client(StatedCopterData(checked=2, selfcheck="not ok", time_utc="no"))
|
||||
|
||||
|
||||
@@ -83,12 +83,13 @@ class MainWindow(QtWidgets.QMainWindow):
|
||||
self.ui.tableView.setModel(self.proxy_model)
|
||||
self.ui.tableView.resizeColumnsToContents()
|
||||
|
||||
self.ui.tableView.doubleClicked.connect(self.selfcheck_info_dialog)
|
||||
|
||||
# Connect signals to manipulate model from threads
|
||||
self.signals.update_data_signal.connect(self.model.update_item)
|
||||
self.signals.add_client_signal.connect(self.model.add_client)
|
||||
self.signals.remove_client_signal.connect(self.model.remove_client)
|
||||
|
||||
|
||||
# Connect model signals to UI
|
||||
self.model.selected_ready_signal.connect(self.ui.start_button.setEnabled)
|
||||
self.model.selected_takeoff_ready_signal.connect(self.ui.takeoff_button.setEnabled)
|
||||
@@ -195,7 +196,7 @@ class MainWindow(QtWidgets.QMainWindow):
|
||||
elif col == 5:
|
||||
data = str(value)
|
||||
elif col == 6:
|
||||
data = str(value)
|
||||
data = value
|
||||
elif col == 7:
|
||||
data = str(value)
|
||||
elif col == 8:
|
||||
@@ -219,6 +220,27 @@ class MainWindow(QtWidgets.QMainWindow):
|
||||
self.signals.update_data_signal.emit(row, col, value, ModelDataRole)
|
||||
self.signals.update_data_signal.emit(row, col, True, ModelStateRole)
|
||||
|
||||
@pyqtSlot(QtCore.QModelIndex)
|
||||
def selfcheck_info_dialog(self, index):
|
||||
col = index.column()
|
||||
if col == 6:
|
||||
data = self.proxy_model.data(index, role=ModelDataRole)
|
||||
if data and data != "OK":
|
||||
dialog = QMessageBox()
|
||||
dialog.setIcon(QMessageBox.NoIcon)
|
||||
dialog.setStandardButtons(QMessageBox.Ok)
|
||||
dialog.setWindowTitle("Selfcheck info")
|
||||
dialog.setText("\n".join(data[:10]))
|
||||
dialog.setDetailedText("\n".join(data))
|
||||
dialog.exec()
|
||||
|
||||
def _selfcheck_shortener(self, data):
|
||||
shortened = []
|
||||
for line in data:
|
||||
if len(line) > 89:
|
||||
pass
|
||||
return shortened
|
||||
|
||||
@pyqtSlot()
|
||||
def remove_selected(self):
|
||||
for copter in self.model.user_selected():
|
||||
|
||||
Reference in New Issue
Block a user