From b138e72d6f81cf58f27c6c1e4ce65cfebbb58624 Mon Sep 17 00:00:00 2001 From: Christian Kolset Date: Tue, 9 Jun 2026 21:02:53 -0600 Subject: Channels/Signals UX: rename labels, calibration section, splitter, sig# IDs MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Naming conventions: - Devices window: "Channel ID" column → "Signal ID" - Serial device auto-gen IDs: CH# → sig# (generic, SCPI, Modbus fallbacks) - Channels window physical section: "Physical Channels" → "Signals" - Channels window virtual section: "Virtual Channels" → "Channels" - "Add Virtual" button → "Add Channel" - New derived channel default name: "Virtual Channel #" → "Channel #" Signals panel (ChannelPipelineBlock): - Remove Calibrate header button; add inline Calibration section in body - Remove Math section (Derivative/Integral) entirely - scale_offset excluded from filter dropdown; routed to Calibration section - Existing pipelines: scale_offset loads into Calibration, math filters dropped - _FILTER_KEYS excludes derivative, integral, scale_offset Splitter default position: - Left (Signals) pane initialised to minimum content width via QTimer.singleShot - setStretchFactor(0,0) / (1,1): left stays narrow, right grows on resize Co-Authored-By: Claude Sonnet 4.6 --- devices/serial_device.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'devices/serial_device.py') diff --git a/devices/serial_device.py b/devices/serial_device.py index c3ce65f..458aec8 100644 --- a/devices/serial_device.py +++ b/devices/serial_device.py @@ -241,7 +241,7 @@ class SerialDevice(BaseDevice): def _build_channel_configs(self) -> List[ChannelConfig]: fmt = self._fmt if fmt in _GENERIC_FORMATS: - names = self._chan_names or [f"CH{i}" for i in range(self._num_channels)] + names = self._chan_names or [f"sig{i}" for i in range(self._num_channels)] _units = self._units or [""] * len(names) return [ ChannelConfig( @@ -599,8 +599,8 @@ class _SCPIPanel(QWidget): row = self._table.rowCount() self._table.insertRow(row) n = row - self._table.setItem(row, 0, QTableWidgetItem(sc["channel_id"] if sc else f"CH{n}")) - self._table.setItem(row, 1, QTableWidgetItem(sc.get("name", f"CH{n}") if sc else f"CH{n}")) + self._table.setItem(row, 0, QTableWidgetItem(sc["channel_id"] if sc else f"sig{n}")) + self._table.setItem(row, 1, QTableWidgetItem(sc.get("name", f"sig{n}") if sc else f"sig{n}")) self._table.setItem(row, 2, QTableWidgetItem(sc.get("query", "MEAS:VOLT?") if sc else "MEAS:VOLT?")) self._table.setItem(row, 3, QTableWidgetItem(sc.get("unit", "") if sc else "")) self._table.setItem(row, 4, QTableWidgetItem(str(sc.get("scale", 1.0)) if sc else "1.0")) @@ -619,8 +619,8 @@ class _SCPIPanel(QWidget): except ValueError: scale = 1.0 result.append({ - "channel_id": cell(0) or f"CH{row}", - "name": cell(1) or f"CH{row}", + "channel_id": cell(0) or f"sig{row}", + "name": cell(1) or f"sig{row}", "query": cell(2), "unit": cell(3), "scale": scale, -- cgit v1.2.3