Project Tree¶
QAbstractItemModel-based tree view for the planning hierarchy.
Key Classes¶
| Class | Purpose |
|---|---|
PlanningTreeModel |
QAbstractItemModel backed by PlanningController |
PlanningTreeNodes |
Internal tree node objects for the model |
StrukturFilterProxy |
QSortFilterProxyModel for Struktur-only filtering |
ProjectTreeWidget |
QWidget wrapper owning model, view, and delegate |
ProjectTreeDelegate |
Custom delegate for icons, status colors, lock indicators |
FluentTreeProxyStyle |
QProxyStyle for chevron branch rendering |
Signals (from ProjectTreeWidget)¶
item_selected,item_double_clicked-- selection eventsitem_drop_requested,item_reorder_requested-- internal drag-droplibrary_item_drop_requested-- external library item dropscontext_menu_requested,rename_requested,delete_requested-- CRUDcopy_requested,paste_requested,save_requested-- keyboard shortcutsundo_requested,redo_requested-- undo/redo shortcutsexpand_all_requested,collapse_all_requested-- hotkey-driven
Notes¶
- Uses incremental updates via controller signals (not full rebuild)
- Supports multi-select for copy/paste operations
- Drop indicator rendering handles both internal and library drops