Blender  V3.3
Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
blender::ed::outliner::AbstractTreeDisplay Class Referenceabstract

Base Class For Tree-Displays. More...

#include <tree_display.hh>

Inheritance diagram for blender::ed::outliner::AbstractTreeDisplay:
blender::ed::outliner::TreeDisplayDataAPI blender::ed::outliner::TreeDisplayIDOrphans blender::ed::outliner::TreeDisplayLibraries blender::ed::outliner::TreeDisplayOverrideLibraryHierarchies blender::ed::outliner::TreeDisplayOverrideLibraryProperties blender::ed::outliner::TreeDisplayScenes blender::ed::outliner::TreeDisplaySequencer blender::ed::outliner::TreeDisplayViewLayer

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< AbstractTreeDisplaycreateFromDisplayMode (int mode, SpaceOutliner &space_outliner)
 

Protected Attributes

SpaceOutlinerspace_outliner_
 

Detailed Description

Base Class For Tree-Displays.

Abstract base class defining the interface for tree-display variants.

Definition at line 62 of file tree_display.hh.

Constructor & Destructor Documentation

◆ AbstractTreeDisplay()

blender::ed::outliner::AbstractTreeDisplay::AbstractTreeDisplay ( SpaceOutliner space_outliner)
inline

Definition at line 64 of file tree_display.hh.

◆ ~AbstractTreeDisplay()

virtual blender::ed::outliner::AbstractTreeDisplay::~AbstractTreeDisplay ( )
virtualdefault

Member Function Documentation

◆ buildTree()

virtual ListBase blender::ed::outliner::AbstractTreeDisplay::buildTree ( const TreeSourceData source_data)
pure virtual

◆ createFromDisplayMode()

std::unique_ptr< AbstractTreeDisplay > blender::ed::outliner::AbstractTreeDisplay::createFromDisplayMode ( int  mode,
SpaceOutliner space_outliner 
)
static

◆ is_lazy_built()

bool blender::ed::outliner::AbstractTreeDisplay::is_lazy_built ( ) const
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.

◆ supportsModeColumn()

bool blender::ed::outliner::AbstractTreeDisplay::supportsModeColumn ( ) const
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().

Member Data Documentation

◆ space_outliner_

SpaceOutliner& blender::ed::outliner::AbstractTreeDisplay::space_outliner_
protected

The documentation for this class was generated from the following files: