Build window: docked Texture panel beside the edit window while picking faces in the links tab #577

Closed
opened 2026-10-09 00:53:00 +00:00 by sky_line · 0 comments
Owner

Editing a linkset usually means picking a link or face in the Build window's links tab, then switching to the Texture tab to change it, then switching back. Removing that back-and-forth makes link-by-link texturing much faster.

Behaviour

  • When a face is selected while the links tab is active, the exact existing FS-style Texture panel (the #558 panel_fs_tools_texture.xml / FSPanelFace, or the legacy panel if FSUseNewTexturePanel is false) opens in a companion floater docked to the right side of the Build window.
    • It shows the selected face, and every control works as it does in the tab.
  • The companion follows the Build window when that window is moved or resized.
  • It closes when any other tab is selected in the Build window, and also when the Build window closes or edit mode ends.
  • The regular Texture tab keeps working unchanged.
  • Only one panel instance is live at a time, so the companion and the tab never fight over the selection: the tab's panel is inactive while the companion is open, or the same panel is reparented.

Notes

  • Reuse the panel XUI and class as they are; don't fork a copy.
  • Use LL's docking support where it fits (LLDockableFloater, LLDockControl) or a simple follow-position hook.
  • If there's no room to the right (the Build window is at the screen edge), dock on the left or clamp on-screen.

Done when

  1. Pick a link and face in the links tab: the docked Texture panel appears to the right, showing that face.
  2. Edits apply live.
  3. Switching to any other tab closes it.
  4. Moving the Build window moves it.
  5. No duplicate-refresh glitches.
Editing a linkset usually means picking a link or face in the Build window's links tab, then switching to the Texture tab to change it, then switching back. Removing that back-and-forth makes link-by-link texturing much faster. ## Behaviour - When a face is selected while the **links tab** is active, the **exact existing FS-style Texture panel** (the #558 `panel_fs_tools_texture.xml` / `FSPanelFace`, or the legacy panel if `FSUseNewTexturePanel` is false) opens in a companion floater **docked to the right side** of the Build window. - It shows the selected face, and every control works as it does in the tab. - The companion **follows the Build window** when that window is moved or resized. - It **closes when any other tab is selected** in the Build window, and also when the Build window closes or edit mode ends. - The regular Texture tab keeps working unchanged. - Only one panel instance is live at a time, so the companion and the tab never fight over the selection: the tab's panel is inactive while the companion is open, or the same panel is reparented. ## Notes - Reuse the panel XUI and class as they are; don't fork a copy. - Use LL's docking support where it fits (`LLDockableFloater`, `LLDockControl`) or a simple follow-position hook. - If there's no room to the right (the Build window is at the screen edge), dock on the left or clamp on-screen. ## Done when 1. Pick a link and face in the links tab: the docked Texture panel appears to the right, showing that face. 2. Edits apply live. 3. Switching to any other tab closes it. 4. Moving the Build window moves it. 5. No duplicate-refresh glitches.
sky_line added this to the Slipstream project 2026-10-09 00:53:00 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
sky_line/Slipstream#577
No description provided.