docs: the signal badges, the signal pages and the six-badge overflow (step 2 of the redesign)
Also wrap the signals page's hint line, which at 375 px minimum widened the whole slide-over panel to 376. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
1 parent
f315c677f3
commit
5242babf99
8 files changed
+55
-21
No files matched your search
@@ -110,7 +110,9 @@ Part of [CLAUDE.md](../../CLAUDE.md). These are rules that cost a defect to lear
|
||||
does not propagate its child's height), and content that is taller than the plot -- the trigger form
|
||||
on a 470 px window -- scrolls inside the panel instead of growing it. The widgets that go in a page
|
||||
are reparented into it; their widths must fit 360 minus the border (the trigger form measures 267
|
||||
minimum, the E-1608's panels 197).
|
||||
minimum, the E-1608's panels 197). **One page wider than that widens the panel
|
||||
for all of them** (the stack measures every page): the signals page's hint line once did, unwrapped, and
|
||||
`[slideover] panel=` read 376 instead of 360; the label now wraps.
|
||||
- **The badge bar has a fixed height and sits outside the overlay.** `badge_bar` is 36 px
|
||||
(`height-request`) between `plot_overlay` and the status line, so the plot above it never moves when a
|
||||
badge's text changes (`bar_h` = `bar_h_after` in `[badges]`). This is "layout must not depend on
|
||||
@@ -119,8 +121,17 @@ Part of [CLAUDE.md](../../CLAUDE.md). These are rules that cost a defect to lear
|
||||
spare on the right) and never its height. The badge labels are not ellipsized: a name long enough to
|
||||
need it would be a defect of the kind's `display_name()`. Rows that appear by trigger condition appear
|
||||
inside the slide-over's scroller, never in the bar.
|
||||
- **The signal badges live in a scroller, so the bar's minimum width never depends on the signal count.**
|
||||
The bar's signals slot holds a `GtkScrolledWindow` (horizontal `EXTERNAL`, vertical `NEVER`) around one
|
||||
row of badges and the `+`, because a button row's minimum width is the sum of its children: nine badges
|
||||
(the E-1608: eight inputs and the counter) would push the window's minimum width past a laptop screen.
|
||||
Past `kMaxSignalBadges` (6) the row is replaced by one "N signals" badge, which also stands for the `+`.
|
||||
The bar's height stays 36 px in every one of these states (`bar_h_fixed` in `[sigbadges]`), and
|
||||
`bar_min_w` reads the same with one signal, nine signals and the overflow (329 on the E-1608, 336 on UDPS:
|
||||
the Source badge of each kind reads differently). A change that makes it grow with the signal count has
|
||||
taken the scroller out of the measurement.
|
||||
- **The dock's width is fixed too** (`side_column` `width-request` 300, the split view's 320 px floor
|
||||
and cap), and it holds one scroller with the signal list, the cursors and the measurements. A
|
||||
and cap), and it holds one scroller with the cursors and the measurements. A
|
||||
section's visibility is never what makes the dock taller; the scroller is what absorbs the extra.
|
||||
- **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
|
||||
|
||||
Reference in new issue
Block a user