diff options
Diffstat (limited to 'source/blender/editors/space_outliner/tree/tree_display.hh')
-rw-r--r-- | source/blender/editors/space_outliner/tree/tree_display.hh | 27 |
1 files changed, 24 insertions, 3 deletions
diff --git a/source/blender/editors/space_outliner/tree/tree_display.hh b/source/blender/editors/space_outliner/tree/tree_display.hh index bf9cf18948c..d6085770965 100644 --- a/source/blender/editors/space_outliner/tree/tree_display.hh +++ b/source/blender/editors/space_outliner/tree/tree_display.hh @@ -34,16 +34,30 @@ #pragma once -#include "tree_display.h" +#include <memory> +struct ID; +struct LayerCollection; struct ListBase; +struct Library; struct Main; +struct Scene; +struct Sequence; struct SpaceOutliner; struct TreeElement; -struct TreeSourceData; +struct ViewLayer; namespace blender::ed::outliner { +/** + * \brief The data to build the tree from. + */ +struct TreeSourceData { + Main *bmain; + Scene *scene; + ViewLayer *view_layer; +}; + /* -------------------------------------------------------------------- */ /* Tree-Display Interface */ @@ -65,13 +79,20 @@ class AbstractTreeDisplay { */ virtual ListBase buildTree(const TreeSourceData &source_data) = 0; - bool has_warnings = false; + /** Accessor to whether given tree has some warnings to display. */ + bool hasWarnings() const; protected: + bool has_warnings = false; + /** All derived classes will need a handle to this, so storing it in the base for convenience. */ SpaceOutliner &space_outliner_; }; +AbstractTreeDisplay *outliner_tree_display_create(int /*eSpaceOutliner_Mode*/ mode, + SpaceOutliner *space_outliner); +void outliner_tree_display_destroy(AbstractTreeDisplay **tree_display); + /* -------------------------------------------------------------------- */ /* View Layer Tree-Display */ |