diff options
| author | Christian Kolset <ckolset@colostate.edu> | 2026-07-29 13:41:29 -0600 |
|---|---|---|
| committer | Christian Kolset <ckolset@colostate.edu> | 2026-07-29 13:41:29 -0600 |
| commit | 934d3fc18bc4fc0e05d26a12d635915b00bd8c8d (patch) | |
| tree | efd235350b0cbd014e44591aeef8e6d806335b54 /ui | |
| parent | 23800a32231acecbace12bfc41c03b081b1bf565 (diff) | |
| parent | d9ca58e48cf92438087ac24ee261c2c4911316b1 (diff) | |
Merge branch 'feat/device-naming'
Diffstat (limited to 'ui')
| -rw-r--r-- | ui/add_device_dialog.py | 8 | ||||
| -rw-r--r-- | ui/config_dialog.py | 9 | ||||
| -rw-r--r-- | ui/windows/devices_window.py | 2 |
3 files changed, 17 insertions, 2 deletions
diff --git a/ui/add_device_dialog.py b/ui/add_device_dialog.py index 4b2b373..2bf0233 100644 --- a/ui/add_device_dialog.py +++ b/ui/add_device_dialog.py @@ -301,6 +301,10 @@ class AddDeviceDialog(QDialog): self._id_edit.setPlaceholderText("Leave blank for auto") cfg_form.addRow("Device ID:", self._id_edit) + self._name_edit = QLineEdit() + self._name_edit.setPlaceholderText("Leave blank to use the default type name") + cfg_form.addRow("Display Name:", self._name_edit) + self._fmt_cb = QComboBox() self._fmt_cb.addItems(list(_FORMAT_LABELS.keys())) self._fmt_lbl = QLabel("Protocol / Format:") @@ -451,6 +455,10 @@ class AddDeviceDialog(QDialog): panel.set_simulate(sim) dev = panel.build_device(dev_id) + display_name = self._name_edit.text().strip() + if display_name: + dev.info.name = display_name + self.created_device = dev self.accept() except Exception as e: diff --git a/ui/config_dialog.py b/ui/config_dialog.py index d9bc9df..5a95821 100644 --- a/ui/config_dialog.py +++ b/ui/config_dialog.py @@ -59,7 +59,14 @@ class DeviceConfigDialog(QDialog): e = QLineEdit(str(v)); e.setReadOnly(True); return e form.addRow("Device ID:", _ro(info.device_id)) - form.addRow("Name:", _ro(info.name)) + + def _on_name_edited(): + info.name = name_edit.text().strip() or info.name + self.setWindowTitle(f"Configure — {info.name} [{info.device_id}]") + + name_edit = QLineEdit(info.name) + name_edit.editingFinished.connect(_on_name_edited) + form.addRow("Name:", name_edit) form.addRow("Type:", _ro(info.device_type)) form.addRow("Description:", _ro(info.description)) form.addRow("Manufacturer:", _ro(info.manufacturer)) diff --git a/ui/windows/devices_window.py b/ui/windows/devices_window.py index 3b193b2..eec65c8 100644 --- a/ui/windows/devices_window.py +++ b/ui/windows/devices_window.py @@ -344,7 +344,7 @@ class DevicesWindow(QWidget): dev = self.registry.get_instance(device_id) if dev: DeviceConfigDialog(dev, self).exec() - self._ch_tab.refresh() + self.refresh() # rebuilds device rows (picks up a renamed display name) + Signals tab self.device_reconfigured.emit(device_id) def _on_remove(self, device_id: str): |
