38 tselem->
flag &= ~TSE_CLOSED;
45ListBase TreeDisplayOverrideLibraryProperties::add_library_contents(
Main &mainvar)
49 const short filter_id_type = id_filter_get();
61 for (
int a = 0; a < tot; a++) {
62 if (!lbarray[a] || !lbarray[a]->first) {
69 for (
ID *id_iter :
List<
ID>(lbarray[a])) {
81 TreeElement *id_base_te =
nullptr;
84 if (!filter_id_type) {
86 id_base_te->directdata = lbarray[a];
89 lb_to_expand = &id_base_te->subtree;
92 for (
ID *
id :
List<
ID>(lbarray[a])) {
114short TreeDisplayOverrideLibraryProperties::id_filter_get()
const
ListBase * which_libbase(Main *bmain, short type)
int set_listbasepointers(Main *bmain, ListBase *lb[])
BLI_INLINE bool BLI_listbase_is_empty(const struct ListBase *lb)
#define LISTBASE_FOREACH_MUTABLE(type, var, list)
#define ID_IS_OVERRIDE_LIBRARY_REAL(_id)
#define ID_IS_LINKED(_id)
@ TSE_LIBRARY_OVERRIDE_BASE
Base Class For Tree-Displays.
SpaceOutliner & space_outliner_
static TreeElement * add_element(SpaceOutliner *space_outliner, ListBase *lb, ID *owner_id, void *create_data, TreeElement *parent, short type, short index, const bool expand=true)
ListBase build_tree(const TreeSourceData &source_data) override
TreeDisplayOverrideLibraryProperties(SpaceOutliner &space_outliner)
GPU_SHADER_INTERFACE_INFO(depth_2d_update_iface, "").smooth(Type fragColor push_constant(Type::VEC2, "extent") .push_constant(Type source_data
ListBaseWrapper< T > List
void outliner_free_tree_element(TreeElement *element, ListBase *parent_subtree)
const char * outliner_idcode_to_plural(short idcode)
ListBaseWrapperTemplate< ListBase, T > ListBaseWrapper
The data to build the tree from.
Establish and manage Outliner trees for different display modes.