diff options
| author | Christian Kolset <christian.kolset@gmail.com> | 2026-06-03 15:05:36 -0600 |
|---|---|---|
| committer | Christian Kolset <christian.kolset@gmail.com> | 2026-06-03 15:05:36 -0600 |
| commit | 7b926faab3dcd52e45fc1b4b24f955a4dcf66959 (patch) | |
| tree | ede3018b2557d9d06d50f8439f91767c8795776f /ui/style_dark.qss | |
| parent | 93e7d0ecdc090fd4f0231b13933fc0fa095a1f22 (diff) | |
Add drag-and-snap tiling layout canvas to Plot Builder
Replace layout radio buttons (Stacked/Side-by-Side/Grid) with a visual
LayoutCanvas widget. Pane tiles snap to grid cells on drag-drop; dropping
on an occupied cell swaps positions. Ghost highlight shows snap target
during drag.
- PaneSpec gains row/col fields (None = unassigned; backward compat preserved)
- LayoutConfig gains "free" mode; strip_chart reads explicit positions
- PaneBlock loses ▲▼ move buttons; reordering is canvas-only
- QSS entries added for layoutTile, layoutTileDragging, layoutCanvasBar
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Diffstat (limited to 'ui/style_dark.qss')
| -rw-r--r-- | ui/style_dark.qss | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/ui/style_dark.qss b/ui/style_dark.qss index 2c24d1c..e562365 100644 --- a/ui/style_dark.qss +++ b/ui/style_dark.qss @@ -563,3 +563,43 @@ QFrame#controlWidgetWrapper { background: transparent; border: none; } + +/* ── Layout canvas ───────────────────────────────────────────────── */ +QWidget#layoutCanvasBar { + background-color: #0f1521; + border-bottom: 1px solid #1c2540; +} +QLabel#layoutCanvasLabel { + font-family: "IBM Plex Mono", monospace; + font-size: 10px; + font-weight: 700; + letter-spacing: 2px; + color: #4338ca; + padding: 0 2px; +} +QFrame#layoutCanvasWidget { + background-color: #0b0e13; + border: 1px solid #2a3558; + border-radius: 4px; +} +QFrame#layoutTile { + background-color: #1c2540; + border: 1px solid #2a3558; + border-radius: 5px; +} +QFrame#layoutTile:hover { + border-color: #4338ca; + background-color: #212c52; +} +QFrame#layoutTileDragging { + background-color: #1e3a5f; + border: 2px solid #3b82f6; + border-radius: 5px; +} +QLabel#layoutTileLabel { + font-family: "IBM Plex Mono", monospace; + font-size: 11px; + font-weight: 700; + color: #8b9dc3; + background: transparent; +} |
