|
Blender V4.5
|
#include <UI_tree_view.hh>
Inherits blender::ui::AbstractView, and blender::ui::TreeViewItemContainer.
Inherited by blender::ed::asset::shelf::AssetCatalogSelectorTree, blender::ed::asset::shelf::AssetCatalogTreeView, blender::ed::asset_browser::AssetCatalogTreeView, blender::ed::spreadsheet::GeometryDataSetTreeView, blender::ed::spreadsheet::GeometryInstancesTreeView, blender::ed::spreadsheet::ViewerPathTreeView, blender::ui::bonecollections::BoneCollectionTreeView, and blender::ui::greasepencil::LayerTreeView.
Protected Member Functions | |
| virtual void | build_tree ()=0 |
| std::optional< uiViewState > | persistent_state () const override |
| void | persistent_state_apply (const uiViewState &state) override |
| Protected Member Functions inherited from blender::ui::AbstractView | |
| AbstractView ()=default | |
| virtual void | change_state_delayed () |
| void | update_from_old (uiBlock &new_block) |
| bool | is_reconstructed () const |
| const AbstractViewItem * | search_highlight_item () const |
| void | filter (std::optional< StringRef > filter_str) |
| Protected Member Functions inherited from blender::ui::TreeViewItemContainer | |
| void | foreach_item_recursive (ItemIterFn iter_fn, IterOptions options=IterOptions::None) const |
| void | foreach_parent (ItemIterFn iter_fn) const |
Friends | |
| class | AbstractTreeViewItem |
| class | TreeViewBuilder |
| class | TreeViewLayoutBuilder |
| class | TreeViewItemDropTarget |
Additional Inherited Members | |
| Public Types inherited from blender::ui::TreeViewItemContainer | |
| enum class | IterOptions { None = 0 , SkipCollapsed = 1 << 0 , SkipFiltered = 1 << 1 } |
| using | ItemIterFn = FunctionRef<void(AbstractTreeViewItem &)> |
| Protected Attributes inherited from blender::ui::TreeViewItemContainer | |
| Vector< std::unique_ptr< AbstractTreeViewItem > > | children_ |
| TreeViewItemContainer * | root_ = nullptr |
| AbstractTreeViewItem * | parent_ = nullptr |
| bool | is_flat_ = false |
Definition at line 120 of file UI_tree_view.hh.
|
overridedefault |
References AbstractTreeViewItem, blender::ui::TreeViewItemContainer::None, options, and xy.
|
protectedpure virtual |
Implemented in blender::ed::asset::shelf::AssetCatalogSelectorTree, blender::ed::asset::shelf::AssetCatalogTreeView, blender::ed::asset_browser::AssetCatalogTreeView, blender::ed::spreadsheet::GeometryDataSetTreeView, blender::ed::spreadsheet::GeometryInstancesTreeView, blender::ed::spreadsheet::ViewerPathTreeView, blender::ui::bonecollections::BoneCollectionTreeView, and blender::ui::greasepencil::LayerTreeView.
References AbstractTreeViewItem, blender::ui::AbstractView::AbstractView(), blender::ui::AbstractView::AbstractViewItem, and state.
Referenced by blender::ui::TreeViewBuilder::build_tree_view().
|
overridevirtual |
Reimplemented from blender::ui::AbstractView.
Definition at line 309 of file tree_view.cc.
| AbstractTreeViewItem * blender::ui::AbstractTreeView::find_hovered | ( | const ARegion & | region, |
| const int2int2 & | xy ) |
| xy | The mouse coordinates in window space. |
Definition at line 120 of file tree_view.cc.
References AbstractTreeViewItem, BLI_rctf_isect_y(), blender::ui::TreeViewItemContainer::foreach_item_recursive(), blender::ui::AbstractTreeViewItem::get_win_rect(), blender::ui::TreeViewItemContainer::SkipCollapsed, blender::ui::TreeViewItemContainer::SkipFiltered, and xy.
| void blender::ui::AbstractTreeView::foreach_item | ( | ItemIterFn | iter_fn, |
| IterOptions | options = IterOptions::None ) const |
Definition at line 108 of file tree_view.cc.
References blender::ui::TreeViewItemContainer::foreach_item_recursive(), and options.
Referenced by blender::ui::TreeViewLayoutBuilder::build_from_tree(), blender::ui::count_visible_items(), and blender::ed::asset::shelf::AssetCatalogSelectorTree::update_shelf_settings_from_enabled_catalogs().
| void blender::ui::AbstractTreeView::foreach_root_item | ( | ItemIterFn | iter_fn | ) | const |
Definition at line 113 of file tree_view.cc.
References blender::ui::TreeViewItemContainer::children_.
|
overridevirtual |
Reimplemented from blender::ui::AbstractView.
Definition at line 378 of file tree_view.cc.
|
overrideprotectedvirtual |
From the current view state, return certain state that will be written to files (stored in ARegion.view_states) to preserve it over UI changes and file loading. The state can be restored using persistent_state_apply().
Return an empty value if there's no state to preserve (default implementation).
Reimplemented from blender::ui::AbstractView.
Definition at line 144 of file tree_view.cc.
References state, and UI_INV_SCALE_FAC.
|
overrideprotectedvirtual |
Restore a view state given in state, which was created by persistent_state() for saving in files, and potentially loaded from a file.
Reimplemented from blender::ui::AbstractView.
Definition at line 162 of file tree_view.cc.
References blender::ui::padded_item_height(), round_fl_to_int(), set_default_rows(), state, and UI_SCALE_FAC.
|
overridevirtual |
Reimplemented from blender::ui::AbstractView.
Definition at line 383 of file tree_view.cc.
References blender::ui::AbstractView::supports_scrolling(), and blender::ui::UP.
| void blender::ui::AbstractTreeView::set_default_rows | ( | int | default_rows | ) |
Visual feature: Define a number of item rows the view will show by default. If there are fewer items, empty dummy items will be added. These contribute to the view bounds, so the drop target of the view includes them, but they are not interactive (e.g. no mouse-hover highlight).
Definition at line 139 of file tree_view.cc.
References blender::ui::padded_item_height().
Referenced by persistent_state_apply(), uiTemplateBoneCollectionTree(), uiTemplateGreasePencilLayerTree(), uiTemplateLightLinkingCollection(), and uiTemplateNodeTreeInterface().
|
friend |
Definition at line 134 of file UI_tree_view.hh.
References AbstractTreeViewItem.
Referenced by AbstractTreeViewItem, build_tree(), find_hovered(), and ~AbstractTreeView().
|
friend |
Definition at line 135 of file UI_tree_view.hh.
References TreeViewBuilder.
Referenced by TreeViewBuilder.
|
friend |
Definition at line 137 of file UI_tree_view.hh.
References TreeViewItemDropTarget.
Referenced by TreeViewItemDropTarget.
|
friend |
Definition at line 136 of file UI_tree_view.hh.
References TreeViewLayoutBuilder.
Referenced by TreeViewLayoutBuilder.