Blender V5.0
tree_element_overrides.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2023 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
8
9#pragma once
10
11#include "RNA_types.hh"
12
13#include "BLI_string_ref.hh"
14
15#include "tree_element.hh"
16
17struct ID;
20
21namespace blender::ed::outliner {
22
28
30
31 /* In case the property references a specific operation. Only used for collection overrides
32 * currently, where a single override may add/remove multiple collection items (only add
33 * currently). */
35};
36
38 public:
40
42
43 void expand(SpaceOutliner & /*soops*/) const override;
44
45 StringRefNull get_warning() const override;
46};
47
65
76 std::unique_ptr<IDOverrideLibraryPropertyOperation> operation_;
77
78 public:
80 TreeElementOverridesData &override_data);
81
85 std::optional<BIFIconID> get_icon() const override;
86
87 private:
88 std::optional<PointerRNA> get_collection_ptr() const;
89};
90
91} // namespace blender::ed::outliner
#define final(a, b, c)
Definition BLI_hash.h:19
TreeElementOverridesPropertyOperation(TreeElement &legacy_te, TreeElementOverridesData &override_data)
TreeElementOverridesProperty(TreeElement &legacy_te, TreeElementOverridesData &override_data)
Definition DNA_ID.h:414