gui: status bar operable split, no busy overlay in Sample alignment #145

Merged
duan_j merged 4 commits from feat/gui-dynamic-signals-and-sample-tools into main 2026-08-18 09:27:42 +02:00
Owner

Three changes on top of main:

  • fix: no BEAMLINE BUSY overlay during Sample alignment. Same exception as the motion watch: busy in Sample alignment is the alignment itself, and the sample motion is watched in these very views - the curtain hid exactly what the user needed to see. Gated at both style call sites (sample camera and the Axis views); the session-driven 'In viewing mode' badge is unaffected.
  • feat: status bar splits passive left / operable right. Operable controls (Fast Shutter, State, p-group, Session) group right via addPermanentWidget and share one hover affordance (hand cursor + underline) now owned by ClickableLabel; ValueLabel opts out for the passive readouts, and the unwired busy label becomes a plain QLabel. Cryo sits first in the operable group but stays passive; placement reserves its spot for the planned cryo operation.
  • chore: update banner png so the letters have gaps (215 KB -> 31 KB).

Generated with Claude Code

Three changes on top of main: - fix: no BEAMLINE BUSY overlay during Sample alignment. Same exception as the motion watch: busy in Sample alignment is the alignment itself, and the sample motion is watched in these very views - the curtain hid exactly what the user needed to see. Gated at both style call sites (sample camera and the Axis views); the session-driven 'In viewing mode' badge is unaffected. - feat: status bar splits passive left / operable right. Operable controls (Fast Shutter, State, p-group, Session) group right via addPermanentWidget and share one hover affordance (hand cursor + underline) now owned by ClickableLabel; ValueLabel opts out for the passive readouts, and the unwired busy label becomes a plain QLabel. Cryo sits first in the operable group but stays passive; placement reserves its spot for the planned cryo operation. - chore: update banner png so the letters have gaps (215 KB -> 31 KB). Generated with [Claude Code](https://claude.com/claude-code)

Coverage report (automated)

Total line + branch coverage: 49%
Diff coverage vs main: 100% (minimum 80%)

Full report: coverage artifact on this run.

Coverage report (automated) Total line + branch coverage: 49% Diff coverage vs main: 100% (minimum 80%) Full report: coverage artifact on this run.
duan_j added 4 commits 2026-08-18 09:25:16 +02:00
Same exception as the motion watch: busy in Sample alignment is the
alignment itself, and the sample motion is watched in these very
views - the curtain hid exactly what the user needed to see. Gated
at both style call sites (sample camera and the Axis views); the
session-driven 'In viewing mode' badge is unaffected.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Operable controls (Fast Shutter, State, p-group, Session) group right
via addPermanentWidget and share one hover affordance - hand cursor +
underline - now owned by ClickableLabel; ValueLabel opts out for the
passive readouts, and the unwired busy label becomes a plain QLabel.
Cryo sits first in the operable group but stays passive: a cryo
operation is planned (TODO in status_bar.py), the placement just
reserves its spot.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
style: collapse multiline _status calls for ruff format
CI / lint (pull_request) Successful in 52s
CI / test (3.11) (pull_request) Successful in 1m1s
CI / test (3.13) (pull_request) Successful in 1m3s
CI / test (3.12) (pull_request) Successful in 1m3s
CI / test-with-beamline-plugins (pxii_bec) (pull_request) Successful in 1m11s
CI / test-with-beamline-plugins (pxi_bec) (pull_request) Successful in 1m18s
CI / test-with-beamline-plugins (pxiii_bec) (pull_request) Successful in 1m19s
CI / test-with-coverage (pull_request) Successful in 1m29s
CI / coverage-analysis (pull_request) Successful in 4s
CI / lint (push) Successful in 32s
Docs build and publish / docker (push) Successful in 15s
CI / test (3.11) (push) Canceled after 45s
CI / test (3.12) (push) Canceled after 42s
CI / test (3.13) (push) Canceled after 40s
CI / test-with-beamline-plugins (pxi_bec) (push) Canceled after 37s
CI / test-with-beamline-plugins (pxii_bec) (push) Canceled after 35s
CI / test-with-beamline-plugins (pxiii_bec) (push) Canceled after 32s
CI / test-with-coverage (push) Canceled after 30s
CI / coverage-analysis (push) Canceled after 0s
Build and Publish / release (push) Successful in 34s
167d78db68
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
duan_j force-pushed feat/gui-dynamic-signals-and-sample-tools from f69da09038 to 167d78db68 2026-08-18 09:25:16 +02:00 Compare
duan_j merged commit 167d78db68 into main 2026-08-18 09:27:42 +02:00
duan_j deleted branch feat/gui-dynamic-signals-and-sample-tools 2026-08-18 09:27:42 +02:00
Sign in to join this conversation.