Blender  V2.93
Classes | Typedefs | Functions
tree_display.h File Reference
#include "DNA_space_types.h"

Go to the source code of this file.

Classes

struct  TreeSourceData
 The data to build the tree from. More...
 

Typedefs

typedef struct TreeDisplay TreeDisplay
 
typedef struct TreeSourceData TreeSourceData
 The data to build the tree from. More...
 

Functions

TreeDisplayoutliner_tree_display_create (eSpaceOutliner_Mode mode, SpaceOutliner *space_outliner)
 
void outliner_tree_display_destroy (TreeDisplay **tree_display)
 
ListBase outliner_tree_display_build_tree (TreeDisplay *tree_display, TreeSourceData *source_data)
 
struct TreeElementoutliner_add_element (SpaceOutliner *space_outliner, ListBase *lb, void *idv, struct TreeElement *parent, short type, short index)
 
void outliner_make_object_parent_hierarchy (ListBase *lb)
 
bool outliner_animdata_test (const struct AnimData *adt)
 
TreeElementoutliner_add_collection_recursive (SpaceOutliner *space_outliner, struct Collection *collection, TreeElement *ten)
 
const char * outliner_idcode_to_plural (short idcode)
 

Detailed Description

C-API for the Tree-Display types.

Definition in file tree_display.h.

Typedef Documentation

◆ TreeDisplay

typedef struct TreeDisplay TreeDisplay

C alias for an #AbstractTreeDisplay handle.

Definition at line 1 of file tree_display.h.

◆ TreeSourceData

The data to build the tree from.

Function Documentation

◆ outliner_add_collection_recursive()

TreeElement* outliner_add_collection_recursive ( SpaceOutliner space_outliner,
struct Collection collection,
TreeElement ten 
)

◆ outliner_add_element()

struct TreeElement* outliner_add_element ( SpaceOutliner space_outliner,
ListBase lb,
void *  idv,
TreeElement parent,
short  type,
short  index 
)

TODO: this function needs to be split up! It's getting a bit too large...

Note
"ID" is not always a real ID.
If child items are only added to the tree if the item is open, the TSE_ type must be added to #outliner_element_needs_rebuild_on_open_change().

Definition at line 832 of file outliner_tree.c.

References Freestyle::a, BLI_addtail(), BLI_assert, BLI_STATIC_ASSERT, BLI_strcasecmp(), Freestyle::c, check_persistent(), CLAMP_MAX, PointerRNA::data, Strip::dir, TreeElement::directdata, ELEM, TreeElement::flag, TreeStoreElem::flag, GS, id, TreeElement::idcode, IFACE_, TreeElement::index, LISTBASE_FOREACH, MEM_callocN, TreeElement::name, StripElem::name, Sequence::name, ID::name, NULL, outliner_add_id_contents(), outliner_tree_element_type_create(), outliner_tree_element_type_expand(), outliner_tree_element_type_expand_poll(), outliner_tree_element_type_is_expand_valid(), outliner_tree_element_type_post_expand(), TreeElement::parent, PROP_BOOLEAN, PROP_COLLECTION, PROP_FLOAT, PROP_HIDDEN, PROP_INT, PROP_POINTER, ptr, RNA_property_array_item_char(), RNA_property_array_length(), RNA_property_collection_length(), RNA_property_collection_lookup_int(), RNA_property_flag(), RNA_property_pointer_get(), RNA_property_type(), RNA_property_ui_name(), RNA_struct_iterator_property(), RNA_struct_name_get_alloc(), RNA_struct_ui_name(), TreeElement::rnaptr, SEARCHING_OUTLINER, SEQ_TYPE_EFFECT, SEQ_TYPE_META, Sequence::seqbase, Sequence::strip, Strip::stripdata, TreeElement::subtree, TE_FREE_NAME, TE_LAZY_CLOSED, TREESTORE, TREESTORE_ID_TYPE, TSE_ANIM_DATA, TSE_CHILDSEARCH, TSE_CLOSED, TSE_DRIVER_BASE, TSE_GP_LAYER, TSE_ID_BASE, TSE_IS_REAL_ID, TSE_LAYER_COLLECTION, TSE_LIBRARY_OVERRIDE, TSE_LIBRARY_OVERRIDE_BASE, TSE_NLA, TSE_NLA_ACTION, TSE_NLA_TRACK, TSE_RNA_ARRAY_ELEM, TSE_RNA_PROPERTY, TSE_RNA_STRUCT, TSE_SCENE_COLLECTION_BASE, TSE_SEQ_STRIP, TSE_SEQUENCE, TSE_SEQUENCE_DUP, TSE_SOME_ID, TSE_VIEW_COLLECTION_BASE, TSELEM_OPEN, TreeElement::type, type, Sequence::type, PointerRNA::type, and TreeStoreElem::used.

Referenced by blender::ed::outliner::TreeDisplayViewLayer::buildTree(), blender::ed::outliner::TreeDisplaySequencer::buildTree(), blender::ed::outliner::TreeDisplayIDOrphans::buildTree(), blender::ed::outliner::TreeDisplayScenes::buildTree(), blender::ed::outliner::TreeDisplayDataAPI::buildTree(), blender::ed::outliner::TreeElementOverridesBase::expand(), blender::ed::outliner::TreeElementSceneObjectsBase::expand(), blender::ed::outliner::TreeElementViewLayerBase::expand(), blender::ed::outliner::TreeElementAnimData::expand(), blender::ed::outliner::TreeElementDriverBase::expand(), blender::ed::outliner::TreeElementNLA::expand(), blender::ed::outliner::TreeElementNLATrack::expand(), blender::ed::outliner::TreeElementID::expand_animation_data(), outliner_add_bone(), outliner_add_collection_objects(), outliner_add_collection_recursive(), outliner_add_id_contents(), outliner_add_object_contents(), and blender::ed::outliner::TreeElementID::postExpand().

◆ outliner_animdata_test()

bool outliner_animdata_test ( const struct AnimData adt)

◆ outliner_idcode_to_plural()

const char* outliner_idcode_to_plural ( short  idcode)

◆ outliner_make_object_parent_hierarchy()

void outliner_make_object_parent_hierarchy ( ListBase lb)

◆ outliner_tree_display_build_tree()

ListBase outliner_tree_display_build_tree ( TreeDisplay tree_display,
TreeSourceData source_data 
)

Definition at line 65 of file tree_display.cc.

References buildTree().

Referenced by outliner_build_tree().

◆ outliner_tree_display_create()

TreeDisplay* outliner_tree_display_create ( eSpaceOutliner_Mode  mode,
SpaceOutliner space_outliner 
)

◆ outliner_tree_display_destroy()

void outliner_tree_display_destroy ( TreeDisplay **  tree_display)

Definition at line 59 of file tree_display.cc.

Referenced by outliner_build_tree(), and outliner_free().