668ce0fcb8d3c8a9bb2b9150718609f28335b4d2
Implements REQ-UI-SELECTION-PANEL and the full-width REQ-UI-WORLD-SIZE / REQ-UI-HEADER: MainWindow drops the 25% side column and its 75/25 math, so the header bar and world view span the window, and the panel joins the build button bar as a widget floating over the world. The panel follows the bar's pattern -- an opaque sibling built after the world view, so it sits above the vignettes, below the dim overlay, and swallows the mouse events that would otherwise reach the world. It sizes itself to its content within a band the window hands it (the world view less the bar's strip, so the bar never has to move for it), right-aligned and centered in that band, and scrolls once the content outgrows it. Its content moved into a scroll area for that; the width is capped at 320 px because the wrapped labels and the splitter filter lists have no natural width of their own. With nothing selected the panel now hides entirely rather than showing an empty box (REQ-UI-EMPTY-SELECTION). Two defects that content sizing exposed: buildEmpty() left the selected ids behind when the building vanished under the panel, which would have held an empty panel on screen, and buildMulti() let a shipyard's layout preview survive from a previous single selection (REQ-UI-MULTI-SELECTION). Renames SelectedBuildingPanel to SelectionPanel throughout, matching the requirements: the panel has long shown ships, stations, and debris too. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JcReq7hVk4KUPhTDKWAG7K
Description
No description provided
Languages
C++
96%
CMake
2.2%
Python
1.2%
C
0.6%