docs: the readouts strip

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Martino FerrariandClaude Sonnet 4.6 committed 2026-11-03 10:47:11 +01:00
1 parent c8d9d04f59
commit 3526ce0541
8 files changed
+75 -5

No files matched your search

+12
View File
@@ -148,6 +148,18 @@ Part of [CLAUDE.md](../../CLAUDE.md). These are rules that cost a defect to lear
characters, which made the readouts' minimum width 304 px; that pushed the sidebar to 304 px
(`dock_w=304`) and defeated the 280 pin. Widening any cell is the same
trap -- read `[readouts] ... dock_w=` (must be 280) and the `dock cursors:` / `dock measures:` `fits=`, and for the Events block `dock events: ... dock_w=` (268).
- **The readouts strip is a fixed 26 px, scrolls sideways, and is shown only without the dock.**
`readouts_strip` (a `GtkScrolledWindow`, `height-request` 26, horizontal `external`, vertical `never`) sits
in `left_column` between `plot_overlay` and `badge_bar`. Its height is a request and not a measurement of
its chips (the buttons are trimmed by `button.udpscope-strip-button` in `ui_widgets.cpp`, or Adwaita's
34 px flat button would push it past 26), the chips' cells are fixed-width ellipsized labels like the
dock's, and an overflow scrolls with no bar taking height: "layout must not depend on content" for the
strip, the same as for the badge bar. It is *visible* exactly when `show-sidebar` is false
(`sync_readouts_strip()`, from the tick after the wish is re-asserted and before `set_collapsed()` --
read after the collapse it would show for a frame each time the window narrowed), and hidden when the dock
is on screen, overlaid included, so the plot's 26 px go to one pane of readouts and never both. The plot
is 26 px shorter while it shows; that is the dock's state moving the layout, not content. Reading
`h=26` with `visible=1` (and `h=0` with `visible=0`) in `strip:` is the assertion.
- **Trace slots are identified by signal name, not channel index.** Enabling a signal
or a new CONFIG renumbers the channel list, so an index would silently re-point a
trace at another signal.