32 lines
1.8 KiB
Markdown
32 lines
1.8 KiB
Markdown
## 1. Wire SceneHierarchyPanel into Application
|
|
|
|
- [x] 1.1 Add SceneHierarchyPanel member variable to Application class
|
|
- [x] 1.2 Create SceneHierarchyPanel instance in Application::Initialize()
|
|
- [x] 1.3 Set PropertyManager on SceneHierarchyPanel instance
|
|
- [x] 1.4 Replace placeholder Scene Hierarchy panel code with call to m_sceneHierarchyPanel->Render()
|
|
- [x] 1.5 Ensure SceneHierarchyPanel is properly cleaned up in Application::Shutdown()
|
|
|
|
## 2. Enhance SceneHierarchyPanel with Visual Indicators
|
|
|
|
- [x] 2.1 Modify RenderPrimNode to display prim type icons before the display name
|
|
- [x] 2.2 Add visibility state indicators (eye/open vs eye/slash) based on prim.GetVisibility()
|
|
- [x] 2.3 Add active state indicators (circle/filled circle) based on prim.GetActive()
|
|
- [x] 2.4 Ensure proper indentation and spacing with the added indicators
|
|
- [x] 2.5 Update tooltip to include visibility and active state information
|
|
|
|
## 3. Add Context Menu Support
|
|
|
|
- [x] 3.1 Add context menu popup on right-click of prim tree nodes
|
|
- [x] 3.2 Add "Toggle Visibility" menu item that calls prim.SetVisibility() with toggled value
|
|
- [x] 3.3 Add "Toggle Active" menu item that calls prim.SetActive() with toggled value
|
|
- [x] 3.4 Add "Show/Hide Children" menu item to collapse/expand tree nodes
|
|
- [x] 3.5 Ensure context menu only appears for valid prim nodes and handles USD errors gracefully
|
|
|
|
## 4. Verify Selection and Integration
|
|
|
|
- [x] 4.1 Verify prim selection highlighting works correctly in enhanced tree view
|
|
- [x] 4.2 Confirm tooltip shows all relevant information (type, path, visibility, active)
|
|
- [x] 4.3 Test that selection callback is properly invoked when prim is clicked
|
|
- [x] 4.4 Ensure panel updates correctly when stage changes (new/loaded/closed)
|
|
- [x] 4.5 Verify panel integrates properly with docking system (can be undocked, floated, etc.)
|