From 74379e55d6dba178e22eabf2ad323ea4507ff177 Mon Sep 17 00:00:00 2001 From: Jens Ahrensfeld Date: Fri, 29 May 2026 21:03:54 +0200 Subject: [PATCH] gui_client: add "Human Readable State" column populated from str_state Co-Authored-By: Claude Sonnet 4.6 --- client/gui_client.py | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/client/gui_client.py b/client/gui_client.py index 1397b69..90e1b7a 100644 --- a/client/gui_client.py +++ b/client/gui_client.py @@ -293,11 +293,12 @@ class DashboardTab(QWidget): layout.addWidget(self._ts) self._tree = QTreeWidget() - self._tree.setColumnCount(3) - self._tree.setHeaderLabels(["Field", "Value", "Unit"]) + self._tree.setColumnCount(4) + self._tree.setHeaderLabels(["Field", "Value", "Unit", "Human Readable State"]) self._tree.setColumnWidth(0, 320) - self._tree.setColumnWidth(1, 180) - self._tree.setColumnWidth(2, 80) + self._tree.setColumnWidth(1, 120) + self._tree.setColumnWidth(2, 60) + self._tree.setColumnWidth(3, 200) self._tree.setAlternatingRowColors(True) self._tree.setRootIsDecorated(True) layout.addWidget(self._tree) @@ -320,7 +321,7 @@ class DashboardTab(QWidget): d_item.setForeground(0, domain_color) for obj_name, fields in domain_data.items(): if _is_phys(fields): - item = QTreeWidgetItem([obj_name, str(fields["value"]), fields["unit"]]) + item = QTreeWidgetItem([obj_name, str(fields["value"]), fields["unit"], fields.get("str_state", "")]) item.setTextAlignment(1, Qt.AlignRight | Qt.AlignVCenter) d_item.addChild(item) elif isinstance(fields, dict): @@ -329,7 +330,7 @@ class DashboardTab(QWidget): self._add_fields(obj_item, fields, f"{domain}/{obj_name}") d_item.addChild(obj_item) else: - item = QTreeWidgetItem([obj_name, str(fields), ""]) + item = QTreeWidgetItem([obj_name, str(fields), "", ""]) item.setTextAlignment(1, Qt.AlignRight | Qt.AlignVCenter) d_item.addChild(item) self._tree.addTopLevelItem(d_item) @@ -341,7 +342,7 @@ class DashboardTab(QWidget): for k, v in data.items(): child_path = f"{path}/{k}" if _is_phys(v): - item = QTreeWidgetItem([k, str(v["value"]), v["unit"]]) + item = QTreeWidgetItem([k, str(v["value"]), v["unit"], v.get("str_state", "")]) item.setTextAlignment(1, Qt.AlignRight | Qt.AlignVCenter) parent.addChild(item) elif isinstance(v, dict): @@ -349,7 +350,7 @@ class DashboardTab(QWidget): self._add_fields(node, v, child_path) parent.addChild(node) else: - item = QTreeWidgetItem([k, str(v), ""]) + item = QTreeWidgetItem([k, str(v), "", ""]) item.setTextAlignment(1, Qt.AlignRight | Qt.AlignVCenter) parent.addChild(item)