Blender
V3.3
|
Base Class For Tree-Displays. More...
#include <tree_display.hh>
Public Member Functions | |
AbstractTreeDisplay (SpaceOutliner &space_outliner) | |
virtual | ~AbstractTreeDisplay ()=default |
virtual ListBase | buildTree (const TreeSourceData &source_data)=0 |
virtual bool | supportsModeColumn () const |
virtual bool | is_lazy_built () const |
Static Public Member Functions | |
static std::unique_ptr< AbstractTreeDisplay > | createFromDisplayMode (int mode, SpaceOutliner &space_outliner) |
Protected Attributes | |
SpaceOutliner & | space_outliner_ |
Base Class For Tree-Displays.
Abstract base class defining the interface for tree-display variants.
Definition at line 62 of file tree_display.hh.
|
inline |
Definition at line 64 of file tree_display.hh.
|
virtualdefault |
|
pure virtual |
Build a tree for this display mode with the Blender context data given in source_data and the view settings in space_outliner.
Implemented in blender::ed::outliner::TreeDisplayDataAPI, blender::ed::outliner::TreeDisplayScenes, blender::ed::outliner::TreeDisplayIDOrphans, blender::ed::outliner::TreeDisplaySequencer, blender::ed::outliner::TreeDisplayOverrideLibraryHierarchies, blender::ed::outliner::TreeDisplayOverrideLibraryProperties, blender::ed::outliner::TreeDisplayLibraries, and blender::ed::outliner::TreeDisplayViewLayer.
|
static |
Definition at line 18 of file tree_display.cc.
References BLI_assert_unreachable, SpaceOutliner::lib_override_view_mode, SO_DATA_API, SO_ID_ORPHANS, SO_LIB_OVERRIDE_VIEW_HIERARCHIES, SO_LIB_OVERRIDE_VIEW_PROPERTIES, SO_LIBRARIES, SO_OVERRIDES_LIBRARY, SO_SCENES, SO_SEQUENCE, and SO_VIEW_LAYER.
Referenced by outliner_build_tree().
|
virtual |
Some trees may want to skip building children of collapsed parents. This should be done if the tree type may become very complex, which could cause noticeable slowdowns. Problem: This doesn't address performance issues while searching, since all elements are constructed for that. Trees of this type have to be rebuilt for any change to the collapsed state of any element.
Reimplemented in blender::ed::outliner::TreeDisplayDataAPI, and blender::ed::outliner::TreeDisplayOverrideLibraryHierarchies.
Definition at line 53 of file tree_display.cc.
|
virtual |
Define if the display mode should be allowed to show a mode column on the left. This column adds an icon to indicate which objects are in the current mode (edit mode, pose mode, etc.) and allows adding other objects to the mode by clicking the icon.
Returns false by default.
Reimplemented in blender::ed::outliner::TreeDisplayScenes, and blender::ed::outliner::TreeDisplayViewLayer.
Definition at line 48 of file tree_display.cc.
Referenced by outliner_shows_mode_column().
|
protected |
All derived classes will need a handle to this, so storing it in the base for convenience.
Definition at line 98 of file tree_display.hh.
Referenced by blender::ed::outliner::TreeDisplayViewLayer::buildTree(), blender::ed::outliner::TreeDisplayOverrideLibraryHierarchies::buildTree(), blender::ed::outliner::TreeDisplaySequencer::buildTree(), blender::ed::outliner::TreeDisplayIDOrphans::buildTree(), blender::ed::outliner::TreeDisplayScenes::buildTree(), and blender::ed::outliner::TreeDisplayDataAPI::buildTree().