Add multi-select, specifier column, and visibility shortcuts to hierarchy panel
Ctrl+click toggles prim selection; Shift+click range-selects using a per-frame visible-order list. Multi-selection is broadcast to the viewport via a new SetOnPrimsSelected callback so Hydra highlights all selected prims. Adds a 5th table column showing each prim's SdfSpecifier (def/over/class) with colour coding. 'over' prims are shown in orange to make overrides immediately visible. Visibility icon updated: invisible prims show EyeSlash in orange instead of grey. Ctrl+H / Shift+H keyboard shortcuts hide / show all selected prims. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -48,6 +48,8 @@ public:
|
||||
// ── Selection (called by SceneHierarchyPanel) ────────────────────────────
|
||||
/// Set a single selected prim (clears any multi-selection).
|
||||
void SetSelectedPrimPath(const std::string& path);
|
||||
/// Set multiple selected prims (from hierarchy Ctrl+click multi-select).
|
||||
void SetSelectedPrimPaths(const std::vector<std::string>& paths);
|
||||
|
||||
// ── Main render (called from Application::RenderUI) ──────────────────────
|
||||
void Render(bool* p_open = nullptr);
|
||||
@@ -99,7 +101,7 @@ private:
|
||||
bool IsMouseOverDivider(ImVec2 origin, ImVec2 total) const;
|
||||
|
||||
/// Width (px) of the reserved left toolbar strip.
|
||||
static constexpr float kToolbarW = 52.0f;
|
||||
static constexpr float kToolbarW = 40.0f;
|
||||
|
||||
// ── Selection management ─────────────────────────────────────────────────
|
||||
/// Push the current shared selection into every tile and the manipulator.
|
||||
|
||||
Reference in New Issue
Block a user