Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJulian Eisel <julian@blender.org>2022-01-14 20:00:21 +0300
committerJulian Eisel <julian@blender.org>2022-01-14 21:26:04 +0300
commite9a43a3b6060b57b75e42f27c288608352f000ea (patch)
tree0878652b226022fb24e0c94ecdbbdfaf3531c54b /source/blender/editors/space_outliner/tree/tree_display.hh
parent9109ea0b969f94e614e7a52807b00f3cd9e9383f (diff)
Cleanup: Remove Outliner C-API headers/wrappers
Basically this removes any C <-> C++ glue code. C++ types are accessed directly via the public C++ APIs. Contains some related changes like, moving functions that were previously declared in a now removed header to a different file, whose header is the more appropriate place (and the source file as well). But generally I tried to avoid other changes.
Diffstat (limited to 'source/blender/editors/space_outliner/tree/tree_display.hh')
-rw-r--r--source/blender/editors/space_outliner/tree/tree_display.hh27
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 */