Blender  V2.93
Classes | Macros | Typedefs | Enumerations | Functions
outliner_intern.h File Reference
#include "RNA_types.h"

Go to the source code of this file.

Classes

struct  SpaceOutliner_Runtime
 
struct  TreeElement
 
struct  TreeElementIcon
 
struct  TreeViewContext
 
struct  IDsSelectedData
 

Macros

#define TREESTORE_ID_TYPE(_id)
 
#define OL_NAMEBUTTON   1
 
#define TREESTORE(a)   ((a)->store_elem)
 
#define OL_Y_OFFSET   2
 
#define OL_TOG_USER_BUTS_USERS   (UI_UNIT_X * 2.0f + V2D_SCROLL_WIDTH)
 
#define OL_TOG_USER_BUTS_STATUS   (UI_UNIT_X + V2D_SCROLL_WIDTH)
 
#define OL_RNA_COLX   (UI_UNIT_X * 15)
 
#define OL_RNA_COL_SIZEX   (UI_UNIT_X * 7.5f)
 
#define OL_RNA_COL_SPACEX   (UI_UNIT_X * 2.5f)
 
#define SUPPORT_FILTER_OUTLINER(space_outliner_)    (ELEM((space_outliner_)->outlinevis, SO_VIEW_LAYER, SO_OVERRIDES_LIBRARY))
 
#define SEARCHING_OUTLINER(sov)   (sov->search_flags & SO_SEARCH_RECURSIVE)
 
#define TSELEM_OPEN(telm, sv)
 

Typedefs

typedef struct SpaceOutliner_Runtime SpaceOutliner_Runtime
 
typedef enum TreeElementInsertType TreeElementInsertType
 
typedef enum TreeTraversalAction TreeTraversalAction
 
typedef TreeTraversalAction(* TreeTraversalFunc) (struct TreeElement *te, void *customdata)
 
typedef struct TreeElement TreeElement
 
typedef struct TreeElementIcon TreeElementIcon
 
typedef struct TreeViewContext TreeViewContext
 
typedef enum TreeItemSelectAction TreeItemSelectAction
 
typedef struct IDsSelectedData IDsSelectedData
 
typedef void(* outliner_operation_fn) (struct bContext *C, struct ReportList *, struct Scene *scene, struct TreeElement *, struct TreeStoreElem *, TreeStoreElem *, void *)
 

Enumerations

enum  TreeElementInsertType { TE_INSERT_BEFORE , TE_INSERT_AFTER , TE_INSERT_INTO }
 
enum  TreeTraversalAction { TRAVERSE_CONTINUE = 0 , TRAVERSE_BREAK , TRAVERSE_SKIP_CHILDS }
 
enum  {
  TE_ACTIVE = (1 << 0) , TE_ICONROW = (1 << 1) , TE_LAZY_CLOSED = (1 << 2) , TE_FREE_NAME = (1 << 3) ,
  TE_DRAGGING = (1 << 4) , TE_CHILD_NOT_IN_COLLECTION = (1 << 6) , TE_ICONROW_MERGED = (1 << 7)
}
 
enum  eOLDrawState { OL_DRAWSEL_NONE = 0 , OL_DRAWSEL_NORMAL = 1 , OL_DRAWSEL_ACTIVE = 2 }
 
enum  eOLSetState { OL_SETSEL_NONE = 0 , OL_SETSEL_NORMAL = 1 , OL_SETSEL_EXTEND = 2 }
 
enum  TreeItemSelectAction {
  OL_ITEM_DESELECT = 0 , OL_ITEM_SELECT = (1 << 0) , OL_ITEM_SELECT_DATA = (1 << 1) , OL_ITEM_ACTIVATE = (1 << 2) ,
  OL_ITEM_EXTEND = (1 << 3) , OL_ITEM_RECURSIVE = (1 << 4)
}
 

Functions

void outliner_free_tree (ListBase *tree)
 
void outliner_cleanup_tree (struct SpaceOutliner *space_outliner)
 
void outliner_free_tree_element (TreeElement *element, ListBase *parent_subtree)
 
void outliner_build_tree (struct Main *mainvar, struct Scene *scene, struct ViewLayer *view_layer, struct SpaceOutliner *space_outliner, struct ARegion *region)
 
bool outliner_requires_rebuild_on_select_or_active_change (const struct SpaceOutliner *space_outliner)
 
bool outliner_requires_rebuild_on_open_change (const struct SpaceOutliner *space_outliner)
 
TreeTraversalAction outliner_find_selected_collections (struct TreeElement *te, void *customdata)
 
TreeTraversalAction outliner_find_selected_objects (struct TreeElement *te, void *customdata)
 
void draw_outliner (const struct bContext *C)
 
void outliner_tree_dimensions (struct SpaceOutliner *space_outliner, int *r_width, int *r_height)
 
TreeElementIcon tree_element_get_icon (TreeStoreElem *tselem, TreeElement *te)
 
void outliner_collection_isolate_flag (struct Scene *scene, struct ViewLayer *view_layer, struct LayerCollection *layer_collection, struct Collection *collection, struct PropertyRNA *layer_or_collection_prop, const char *propname, const bool value)
 
int tree_element_id_type_to_index (TreeElement *te)
 
void tree_element_type_active_set (struct bContext *C, const TreeViewContext *tvc, TreeElement *te, TreeStoreElem *tselem, const eOLSetState set, bool recursive)
 
eOLDrawState tree_element_type_active_state_get (const struct bContext *C, const struct TreeViewContext *tvc, const TreeElement *te, const TreeStoreElem *tselem)
 
void tree_element_activate (struct bContext *C, const TreeViewContext *tvc, TreeElement *te, const eOLSetState set, const bool handle_all_types)
 
eOLDrawState tree_element_active_state_get (const TreeViewContext *tvc, const TreeElement *te, const TreeStoreElem *tselem)
 
struct bPoseChanneloutliner_find_parent_bone (TreeElement *te, TreeElement **r_bone_te)
 
void outliner_item_select (struct bContext *C, struct SpaceOutliner *space_outliner, struct TreeElement *te, const short select_flag)
 
bool outliner_item_is_co_over_name_icons (const TreeElement *te, float view_co_x)
 
bool outliner_item_is_co_over_icon (const TreeElement *te, float view_co_x)
 
bool outliner_item_is_co_over_name (const TreeElement *te, float view_co_x)
 
bool outliner_item_is_co_within_close_toggle (const TreeElement *te, float view_co_x)
 
bool outliner_is_co_within_mode_column (SpaceOutliner *space_outliner, const float view_mval[2])
 
void outliner_item_mode_toggle (struct bContext *C, TreeViewContext *tvc, TreeElement *te, const bool do_extend)
 
void outliner_do_object_operation_ex (struct bContext *C, struct ReportList *reports, struct Scene *scene, struct SpaceOutliner *space_outliner, struct ListBase *lb, outliner_operation_fn operation_fn, void *user_data, bool recurse_selected)
 
void outliner_do_object_operation (struct bContext *C, struct ReportList *reports, struct Scene *scene, struct SpaceOutliner *space_outliner, struct ListBase *lb, outliner_operation_fn operation_fn)
 
int outliner_flag_is_any_test (ListBase *lb, short flag, const int curlevel)
 
bool outliner_flag_set (ListBase *lb, short flag, short set)
 
bool outliner_flag_flip (ListBase *lb, short flag)
 
void item_rename_fn (struct bContext *C, struct ReportList *reports, struct Scene *scene, TreeElement *te, struct TreeStoreElem *tsep, struct TreeStoreElem *tselem, void *user_data)
 
void lib_relocate_fn (struct bContext *C, struct ReportList *reports, struct Scene *scene, struct TreeElement *te, struct TreeStoreElem *tsep, struct TreeStoreElem *tselem, void *user_data)
 
void lib_reload_fn (struct bContext *C, struct ReportList *reports, struct Scene *scene, struct TreeElement *te, struct TreeStoreElem *tsep, struct TreeStoreElem *tselem, void *user_data)
 
void id_delete_fn (struct bContext *C, struct ReportList *reports, struct Scene *scene, struct TreeElement *te, struct TreeStoreElem *tsep, struct TreeStoreElem *tselem, void *user_data)
 
void id_remap_fn (struct bContext *C, struct ReportList *reports, struct Scene *scene, struct TreeElement *te, struct TreeStoreElem *tsep, struct TreeStoreElem *tselem, void *user_data)
 
void outliner_set_coordinates (struct ARegion *region, struct SpaceOutliner *space_outliner)
 
void outliner_item_openclose (struct SpaceOutliner *space_outliner, TreeElement *te, bool open, bool toggle_all)
 
void outliner_dropboxes (void)
 
void OUTLINER_OT_item_drag_drop (struct wmOperatorType *ot)
 
void OUTLINER_OT_parent_drop (struct wmOperatorType *ot)
 
void OUTLINER_OT_parent_clear (struct wmOperatorType *ot)
 
void OUTLINER_OT_scene_drop (struct wmOperatorType *ot)
 
void OUTLINER_OT_material_drop (struct wmOperatorType *ot)
 
void OUTLINER_OT_datastack_drop (struct wmOperatorType *ot)
 
void OUTLINER_OT_collection_drop (struct wmOperatorType *ot)
 
void OUTLINER_OT_highlight_update (struct wmOperatorType *ot)
 
void OUTLINER_OT_item_activate (struct wmOperatorType *ot)
 
void OUTLINER_OT_item_openclose (struct wmOperatorType *ot)
 
void OUTLINER_OT_item_rename (struct wmOperatorType *ot)
 
void OUTLINER_OT_lib_relocate (struct wmOperatorType *ot)
 
void OUTLINER_OT_lib_reload (struct wmOperatorType *ot)
 
void OUTLINER_OT_id_delete (struct wmOperatorType *ot)
 
void OUTLINER_OT_show_one_level (struct wmOperatorType *ot)
 
void OUTLINER_OT_show_active (struct wmOperatorType *ot)
 
void OUTLINER_OT_show_hierarchy (struct wmOperatorType *ot)
 
void OUTLINER_OT_select_box (struct wmOperatorType *ot)
 
void OUTLINER_OT_select_walk (struct wmOperatorType *ot)
 
void OUTLINER_OT_select_all (struct wmOperatorType *ot)
 
void OUTLINER_OT_expanded_toggle (struct wmOperatorType *ot)
 
void OUTLINER_OT_scroll_page (struct wmOperatorType *ot)
 
void OUTLINER_OT_keyingset_add_selected (struct wmOperatorType *ot)
 
void OUTLINER_OT_keyingset_remove_selected (struct wmOperatorType *ot)
 
void OUTLINER_OT_drivers_add_selected (struct wmOperatorType *ot)
 
void OUTLINER_OT_drivers_delete_selected (struct wmOperatorType *ot)
 
void OUTLINER_OT_orphans_purge (struct wmOperatorType *ot)
 
void merged_element_search_menu_invoke (struct bContext *C, TreeElement *parent_te, TreeElement *activate_te)
 
void OUTLINER_OT_operation (struct wmOperatorType *ot)
 
void OUTLINER_OT_scene_operation (struct wmOperatorType *ot)
 
void OUTLINER_OT_object_operation (struct wmOperatorType *ot)
 
void OUTLINER_OT_lib_operation (struct wmOperatorType *ot)
 
void OUTLINER_OT_id_operation (struct wmOperatorType *ot)
 
void OUTLINER_OT_id_remap (struct wmOperatorType *ot)
 
void OUTLINER_OT_id_copy (struct wmOperatorType *ot)
 
void OUTLINER_OT_id_paste (struct wmOperatorType *ot)
 
void OUTLINER_OT_data_operation (struct wmOperatorType *ot)
 
void OUTLINER_OT_animdata_operation (struct wmOperatorType *ot)
 
void OUTLINER_OT_action_set (struct wmOperatorType *ot)
 
void OUTLINER_OT_constraint_operation (struct wmOperatorType *ot)
 
void OUTLINER_OT_modifier_operation (struct wmOperatorType *ot)
 
void OUTLINER_OT_delete (struct wmOperatorType *ot)
 
void outliner_operatortypes (void)
 
void outliner_keymap (struct wmKeyConfig *keyconf)
 
bool outliner_is_collection_tree_element (const TreeElement *te)
 
struct Collectionoutliner_collection_from_tree_element (const TreeElement *te)
 
void outliner_collection_delete (struct bContext *C, struct Main *bmain, struct Scene *scene, struct ReportList *reports, bool hierarchy)
 
void OUTLINER_OT_collection_new (struct wmOperatorType *ot)
 
void OUTLINER_OT_collection_duplicate_linked (struct wmOperatorType *ot)
 
void OUTLINER_OT_collection_duplicate (struct wmOperatorType *ot)
 
void OUTLINER_OT_collection_hierarchy_delete (struct wmOperatorType *ot)
 
void OUTLINER_OT_collection_objects_select (struct wmOperatorType *ot)
 
void OUTLINER_OT_collection_objects_deselect (struct wmOperatorType *ot)
 
void OUTLINER_OT_collection_link (struct wmOperatorType *ot)
 
void OUTLINER_OT_collection_instance (struct wmOperatorType *ot)
 
void OUTLINER_OT_collection_exclude_set (struct wmOperatorType *ot)
 
void OUTLINER_OT_collection_exclude_clear (struct wmOperatorType *ot)
 
void OUTLINER_OT_collection_holdout_set (struct wmOperatorType *ot)
 
void OUTLINER_OT_collection_holdout_clear (struct wmOperatorType *ot)
 
void OUTLINER_OT_collection_indirect_only_set (struct wmOperatorType *ot)
 
void OUTLINER_OT_collection_indirect_only_clear (struct wmOperatorType *ot)
 
void OUTLINER_OT_collection_isolate (struct wmOperatorType *ot)
 
void OUTLINER_OT_collection_show (struct wmOperatorType *ot)
 
void OUTLINER_OT_collection_hide (struct wmOperatorType *ot)
 
void OUTLINER_OT_collection_show_inside (struct wmOperatorType *ot)
 
void OUTLINER_OT_collection_hide_inside (struct wmOperatorType *ot)
 
void OUTLINER_OT_collection_enable (struct wmOperatorType *ot)
 
void OUTLINER_OT_collection_disable (struct wmOperatorType *ot)
 
void OUTLINER_OT_collection_enable_render (struct wmOperatorType *ot)
 
void OUTLINER_OT_collection_disable_render (struct wmOperatorType *ot)
 
void OUTLINER_OT_hide (struct wmOperatorType *ot)
 
void OUTLINER_OT_unhide_all (struct wmOperatorType *ot)
 
void OUTLINER_OT_collection_color_tag_set (struct wmOperatorType *ot)
 
void outliner_viewcontext_init (const struct bContext *C, TreeViewContext *tvc)
 
TreeElementoutliner_find_item_at_y (const SpaceOutliner *space_outliner, const ListBase *tree, float view_co_y)
 
TreeElementoutliner_find_item_at_x_in_row (const SpaceOutliner *space_outliner, TreeElement *parent_te, float view_co_x, bool *r_is_merged_icon, bool *r_is_over_icon)
 
TreeElementoutliner_find_tse (struct SpaceOutliner *space_outliner, const TreeStoreElem *tse)
 
TreeElementoutliner_find_tree_element (ListBase *lb, const TreeStoreElem *store_elem)
 
TreeElementoutliner_find_parent_element (ListBase *lb, TreeElement *parent_te, const TreeElement *child_te)
 
TreeElementoutliner_find_id (struct SpaceOutliner *space_outliner, ListBase *lb, const struct ID *id)
 
TreeElementoutliner_find_posechannel (ListBase *lb, const struct bPoseChannel *pchan)
 
TreeElementoutliner_find_editbone (ListBase *lb, const struct EditBone *ebone)
 
TreeElementoutliner_search_back_te (TreeElement *te, short idcode)
 
struct IDoutliner_search_back (TreeElement *te, short idcode)
 
bool outliner_tree_traverse (const SpaceOutliner *space_outliner, ListBase *tree, int filter_te_flag, int filter_tselem_flag, TreeTraversalFunc func, void *customdata)
 
float outliner_restrict_columns_width (const struct SpaceOutliner *space_outliner)
 
TreeElementoutliner_find_element_with_flag (const ListBase *lb, short flag)
 
bool outliner_is_element_visible (const TreeElement *te)
 
void outliner_scroll_view (struct SpaceOutliner *space_outliner, struct ARegion *region, int delta_y)
 
void outliner_tag_redraw_avoid_rebuild_on_open_change (const struct SpaceOutliner *space_outliner, struct ARegion *region)
 
void outliner_sync_selection (const struct bContext *C, struct SpaceOutliner *space_outliner)
 
int outliner_context (const struct bContext *C, const char *member, struct bContextDataResult *result)
 

Macro Definition Documentation

◆ OL_NAMEBUTTON

#define OL_NAMEBUTTON   1

Definition at line 164 of file outliner_intern.h.

◆ OL_RNA_COL_SIZEX

#define OL_RNA_COL_SIZEX   (UI_UNIT_X * 7.5f)

Definition at line 190 of file outliner_intern.h.

◆ OL_RNA_COL_SPACEX

#define OL_RNA_COL_SPACEX   (UI_UNIT_X * 2.5f)

Definition at line 191 of file outliner_intern.h.

◆ OL_RNA_COLX

#define OL_RNA_COLX   (UI_UNIT_X * 15)

Definition at line 189 of file outliner_intern.h.

◆ OL_TOG_USER_BUTS_STATUS

#define OL_TOG_USER_BUTS_STATUS   (UI_UNIT_X + V2D_SCROLL_WIDTH)

Definition at line 187 of file outliner_intern.h.

◆ OL_TOG_USER_BUTS_USERS

#define OL_TOG_USER_BUTS_USERS   (UI_UNIT_X * 2.0f + V2D_SCROLL_WIDTH)

Definition at line 186 of file outliner_intern.h.

◆ OL_Y_OFFSET

#define OL_Y_OFFSET   2

Definition at line 184 of file outliner_intern.h.

◆ SEARCHING_OUTLINER

#define SEARCHING_OUTLINER (   sov)    (sov->search_flags & SO_SEARCH_RECURSIVE)

Definition at line 214 of file outliner_intern.h.

◆ SUPPORT_FILTER_OUTLINER

#define SUPPORT_FILTER_OUTLINER (   space_outliner_)     (ELEM((space_outliner_)->outlinevis, SO_VIEW_LAYER, SO_OVERRIDES_LIBRARY))

Definition at line 195 of file outliner_intern.h.

◆ TREESTORE

#define TREESTORE (   a)    ((a)->store_elem)

Definition at line 181 of file outliner_intern.h.

◆ TREESTORE_ID_TYPE

#define TREESTORE_ID_TYPE (   _id)

Definition at line 104 of file outliner_intern.h.

◆ TSELEM_OPEN

#define TSELEM_OPEN (   telm,
  sv 
)
Value:
(((telm)->flag & TSE_CLOSED) == 0 || \
(SEARCHING_OUTLINER(sv) && ((telm)->flag & TSE_CHILDSEARCH)))
@ TSE_CHILDSEARCH
@ TSE_CLOSED
#define SEARCHING_OUTLINER(sov)

Definition at line 217 of file outliner_intern.h.

Typedef Documentation

◆ IDsSelectedData

◆ outliner_operation_fn

typedef void(* outliner_operation_fn) (struct bContext *C, struct ReportList *, struct Scene *scene, struct TreeElement *, struct TreeStoreElem *, TreeStoreElem *, void *)

Definition at line 329 of file outliner_intern.h.

◆ SpaceOutliner_Runtime

◆ TreeElement

typedef struct TreeElement TreeElement

◆ TreeElementIcon

◆ TreeElementInsertType

◆ TreeItemSelectAction

◆ TreeTraversalAction

◆ TreeTraversalFunc

typedef TreeTraversalAction(* TreeTraversalFunc) (struct TreeElement *te, void *customdata)

Definition at line 75 of file outliner_intern.h.

◆ TreeViewContext

Container to avoid passing around these variables to many functions. Also so we can have one place to assign these variables.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
TE_ACTIVE 
TE_ICONROW 
TE_LAZY_CLOSED 
TE_FREE_NAME 
TE_DRAGGING 
TE_CHILD_NOT_IN_COLLECTION 
TE_ICONROW_MERGED 

Definition at line 149 of file outliner_intern.h.

◆ eOLDrawState

Enumerator
OL_DRAWSEL_NONE 
OL_DRAWSEL_NORMAL 
OL_DRAWSEL_ACTIVE 

Definition at line 166 of file outliner_intern.h.

◆ eOLSetState

Enumerator
OL_SETSEL_NONE 
OL_SETSEL_NORMAL 
OL_SETSEL_EXTEND 

Definition at line 172 of file outliner_intern.h.

◆ TreeElementInsertType

Enumerator
TE_INSERT_BEFORE 
TE_INSERT_AFTER 
TE_INSERT_INTO 

Definition at line 60 of file outliner_intern.h.

◆ TreeItemSelectAction

Enumerator
OL_ITEM_DESELECT 
OL_ITEM_SELECT 
OL_ITEM_SELECT_DATA 
OL_ITEM_ACTIVATE 
OL_ITEM_EXTEND 
OL_ITEM_RECURSIVE 

Definition at line 240 of file outliner_intern.h.

◆ TreeTraversalAction

Enumerator
TRAVERSE_CONTINUE 

Continue traversal regularly, don't skip children.

TRAVERSE_BREAK 

Stop traversal.

TRAVERSE_SKIP_CHILDS 

Continue traversal, but skip children of traversed element.

Definition at line 66 of file outliner_intern.h.

Function Documentation

◆ draw_outliner()

void draw_outliner ( const struct bContext C)

◆ id_delete_fn()

void id_delete_fn ( struct bContext C,
struct ReportList reports,
struct Scene scene,
struct TreeElement te,
struct TreeStoreElem tsep,
struct TreeStoreElem tselem,
void *  user_data 
)

◆ id_remap_fn()

void id_remap_fn ( struct bContext C,
struct ReportList reports,
struct Scene scene,
struct TreeElement te,
struct TreeStoreElem tsep,
struct TreeStoreElem tselem,
void *  user_data 
)

◆ item_rename_fn()

void item_rename_fn ( struct bContext C,
struct ReportList reports,
struct Scene scene,
TreeElement te,
struct TreeStoreElem tsep,
struct TreeStoreElem tselem,
void *  user_data 
)

◆ lib_reload_fn()

void lib_reload_fn ( struct bContext C,
struct ReportList reports,
struct Scene scene,
struct TreeElement te,
struct TreeStoreElem tsep,
struct TreeStoreElem tselem,
void *  user_data 
)

◆ lib_relocate_fn()

void lib_relocate_fn ( struct bContext C,
struct ReportList reports,
struct Scene scene,
struct TreeElement te,
struct TreeStoreElem tsep,
struct TreeStoreElem tselem,
void *  user_data 
)

◆ merged_element_search_menu_invoke()

void merged_element_search_menu_invoke ( struct bContext C,
TreeElement parent_te,
TreeElement activate_te 
)

◆ outliner_build_tree()

void outliner_build_tree ( struct Main mainvar,
struct Scene scene,
struct ViewLayer view_layer,
struct SpaceOutliner space_outliner,
struct ARegion region 
)

◆ outliner_cleanup_tree()

void outliner_cleanup_tree ( struct SpaceOutliner space_outliner)

◆ outliner_collection_delete()

void outliner_collection_delete ( struct bContext C,
struct Main bmain,
struct Scene scene,
struct ReportList reports,
bool  hierarchy 
)

◆ outliner_collection_from_tree_element()

struct Collection* outliner_collection_from_tree_element ( const TreeElement te)

◆ outliner_collection_isolate_flag()

void outliner_collection_isolate_flag ( struct Scene scene,
struct ViewLayer view_layer,
struct LayerCollection layer_collection,
struct Collection collection,
struct PropertyRNA layer_or_collection_prop,
const char *  propname,
const bool  value 
)

◆ outliner_context()

int outliner_context ( const struct bContext C,
const char *  member,
struct bContextDataResult result 
)

◆ outliner_do_object_operation()

void outliner_do_object_operation ( struct bContext C,
struct ReportList reports,
struct Scene scene,
struct SpaceOutliner space_outliner,
struct ListBase lb,
outliner_operation_fn  operation_fn 
)

◆ outliner_do_object_operation_ex()

void outliner_do_object_operation_ex ( bContext C,
ReportList reports,
Scene scene_act,
SpaceOutliner space_outliner,
ListBase lb,
outliner_operation_fn  operation_fn,
void *  user_data,
bool  recurse_selected 
)

◆ outliner_dropboxes()

void outliner_dropboxes ( void  )

◆ outliner_find_editbone()

TreeElement* outliner_find_editbone ( ListBase lb,
const struct EditBone ebone 
)

◆ outliner_find_element_with_flag()

TreeElement* outliner_find_element_with_flag ( const ListBase lb,
short  flag 
)

◆ outliner_find_id()

TreeElement* outliner_find_id ( struct SpaceOutliner space_outliner,
ListBase lb,
const struct ID id 
)

◆ outliner_find_item_at_x_in_row()

TreeElement* outliner_find_item_at_x_in_row ( const SpaceOutliner space_outliner,
TreeElement parent_te,
float  view_co_x,
bool *  r_is_merged_icon,
bool *  r_is_over_icon 
)

Collapsed items can show their children as click-able icons. This function tries to find such an icon that represents the child item at x-coordinate view_co_x (view-space).

Returns
a hovered child item or parent_te (if no hovered child found).

Definition at line 153 of file outliner_utils.c.

References outliner_find_item_at_x_in_row_recursive(), outliner_item_is_co_over_icon(), TREESTORE, and TSELEM_OPEN.

Referenced by outliner_highlight_update(), and outliner_item_do_activate_from_cursor().

◆ outliner_find_item_at_y()

TreeElement* outliner_find_item_at_y ( const SpaceOutliner space_outliner,
const ListBase tree,
float  view_co_y 
)

◆ outliner_find_parent_bone()

struct bPoseChannel* outliner_find_parent_bone ( TreeElement te,
TreeElement **  r_bone_te 
)

◆ outliner_find_parent_element()

TreeElement* outliner_find_parent_element ( ListBase lb,
TreeElement parent_te,
const TreeElement child_te 
)

◆ outliner_find_posechannel()

TreeElement* outliner_find_posechannel ( ListBase lb,
const struct bPoseChannel pchan 
)

◆ outliner_find_selected_collections()

TreeTraversalAction outliner_find_selected_collections ( struct TreeElement te,
void *  customdata 
)

◆ outliner_find_selected_objects()

TreeTraversalAction outliner_find_selected_objects ( struct TreeElement te,
void *  customdata 
)

◆ outliner_find_tree_element()

TreeElement* outliner_find_tree_element ( ListBase lb,
const TreeStoreElem store_elem 
)

◆ outliner_find_tse()

TreeElement* outliner_find_tse ( struct SpaceOutliner space_outliner,
const TreeStoreElem tse 
)

◆ outliner_flag_flip()

bool outliner_flag_flip ( ListBase lb,
short  flag 
)

◆ outliner_flag_is_any_test()

int outliner_flag_is_any_test ( ListBase lb,
short  flag,
const int  curlevel 
)

◆ outliner_flag_set()

bool outliner_flag_set ( ListBase lb,
short  flag,
short  set 
)

◆ outliner_free_tree()

void outliner_free_tree ( ListBase tree)

◆ outliner_free_tree_element()

void outliner_free_tree_element ( TreeElement element,
ListBase parent_subtree 
)

Free element and its sub-tree and remove its link in parent_subtree.

Note
Does not remove the TreeStoreElem of element!
Parameters
parent_subtreeSub-tree of the parent element, so the list containing element.

Definition at line 211 of file outliner_tree.c.

References BLI_assert, BLI_findindex(), BLI_remlink(), element, MEM_freeN, outliner_free_tree(), outliner_tree_element_type_free(), and TE_FREE_NAME.

Referenced by outliner_extract_children_from_subtree(), outliner_filter_subtree(), and outliner_free_tree().

◆ outliner_is_co_within_mode_column()

bool outliner_is_co_within_mode_column ( SpaceOutliner space_outliner,
const float  view_mval[2] 
)

◆ outliner_is_collection_tree_element()

bool outliner_is_collection_tree_element ( const TreeElement te)

◆ outliner_is_element_visible()

bool outliner_is_element_visible ( const TreeElement te)

◆ outliner_item_is_co_over_icon()

bool outliner_item_is_co_over_icon ( const TreeElement te,
float  view_co_x 
)

Definition at line 441 of file outliner_utils.c.

References UI_UNIT_X, and TreeElement::xs.

Referenced by outliner_find_item_at_x_in_row().

◆ outliner_item_is_co_over_name()

bool outliner_item_is_co_over_name ( const TreeElement te,
float  view_co_x 
)

Definition at line 447 of file outliner_utils.c.

References UI_UNIT_X, TreeElement::xend, and TreeElement::xs.

Referenced by outliner_item_rename_find_hovered().

◆ outliner_item_is_co_over_name_icons()

bool outliner_item_is_co_over_name_icons ( const TreeElement te,
float  view_co_x 
)

◆ outliner_item_is_co_within_close_toggle()

bool outliner_item_is_co_within_close_toggle ( const TreeElement te,
float  view_co_x 
)

◆ outliner_item_mode_toggle()

void outliner_item_mode_toggle ( struct bContext C,
TreeViewContext tvc,
TreeElement te,
const bool  do_extend 
)

◆ outliner_item_openclose()

void outliner_item_openclose ( struct SpaceOutliner space_outliner,
TreeElement te,
bool  open,
bool  toggle_all 
)

◆ outliner_item_select()

void outliner_item_select ( struct bContext C,
struct SpaceOutliner space_outliner,
struct TreeElement te,
const short  select_flag 
)

◆ outliner_keymap()

void outliner_keymap ( struct wmKeyConfig keyconf)

Definition at line 112 of file outliner_ops.c.

References SPACE_OUTLINER, and WM_keymap_ensure().

Referenced by ED_spacetype_outliner().

◆ outliner_operatortypes()

void outliner_operatortypes ( void  )

Definition at line 32 of file outliner_ops.c.

References OUTLINER_OT_action_set(), OUTLINER_OT_animdata_operation(), OUTLINER_OT_collection_color_tag_set(), OUTLINER_OT_collection_disable(), OUTLINER_OT_collection_disable_render(), OUTLINER_OT_collection_drop(), OUTLINER_OT_collection_duplicate(), OUTLINER_OT_collection_duplicate_linked(), OUTLINER_OT_collection_enable(), OUTLINER_OT_collection_enable_render(), OUTLINER_OT_collection_exclude_clear(), OUTLINER_OT_collection_exclude_set(), OUTLINER_OT_collection_hide(), OUTLINER_OT_collection_hide_inside(), OUTLINER_OT_collection_hierarchy_delete(), OUTLINER_OT_collection_holdout_clear(), OUTLINER_OT_collection_holdout_set(), OUTLINER_OT_collection_indirect_only_clear(), OUTLINER_OT_collection_indirect_only_set(), OUTLINER_OT_collection_instance(), OUTLINER_OT_collection_isolate(), OUTLINER_OT_collection_link(), OUTLINER_OT_collection_new(), OUTLINER_OT_collection_objects_deselect(), OUTLINER_OT_collection_objects_select(), OUTLINER_OT_collection_show(), OUTLINER_OT_collection_show_inside(), OUTLINER_OT_constraint_operation(), OUTLINER_OT_data_operation(), OUTLINER_OT_datastack_drop(), OUTLINER_OT_delete(), OUTLINER_OT_drivers_add_selected(), OUTLINER_OT_drivers_delete_selected(), OUTLINER_OT_expanded_toggle(), OUTLINER_OT_hide(), OUTLINER_OT_highlight_update(), OUTLINER_OT_id_copy(), OUTLINER_OT_id_delete(), OUTLINER_OT_id_operation(), OUTLINER_OT_id_paste(), OUTLINER_OT_id_remap(), OUTLINER_OT_item_activate(), OUTLINER_OT_item_drag_drop(), OUTLINER_OT_item_openclose(), OUTLINER_OT_item_rename(), OUTLINER_OT_keyingset_add_selected(), OUTLINER_OT_keyingset_remove_selected(), OUTLINER_OT_lib_operation(), OUTLINER_OT_lib_relocate(), OUTLINER_OT_material_drop(), OUTLINER_OT_modifier_operation(), OUTLINER_OT_object_operation(), OUTLINER_OT_operation(), OUTLINER_OT_orphans_purge(), OUTLINER_OT_parent_clear(), OUTLINER_OT_parent_drop(), OUTLINER_OT_scene_drop(), OUTLINER_OT_scene_operation(), OUTLINER_OT_scroll_page(), OUTLINER_OT_select_all(), OUTLINER_OT_select_box(), OUTLINER_OT_select_walk(), OUTLINER_OT_show_active(), OUTLINER_OT_show_hierarchy(), OUTLINER_OT_show_one_level(), OUTLINER_OT_unhide_all(), and WM_operatortype_append().

Referenced by ED_spacetype_outliner().

◆ OUTLINER_OT_action_set()

void OUTLINER_OT_action_set ( struct wmOperatorType ot)

◆ OUTLINER_OT_animdata_operation()

void OUTLINER_OT_animdata_operation ( struct wmOperatorType ot)

◆ OUTLINER_OT_collection_color_tag_set()

void OUTLINER_OT_collection_color_tag_set ( struct wmOperatorType ot)

◆ OUTLINER_OT_collection_disable()

void OUTLINER_OT_collection_disable ( struct wmOperatorType ot)

◆ OUTLINER_OT_collection_disable_render()

void OUTLINER_OT_collection_disable_render ( struct wmOperatorType ot)

◆ OUTLINER_OT_collection_drop()

void OUTLINER_OT_collection_drop ( struct wmOperatorType ot)

◆ OUTLINER_OT_collection_duplicate()

void OUTLINER_OT_collection_duplicate ( struct wmOperatorType ot)

◆ OUTLINER_OT_collection_duplicate_linked()

void OUTLINER_OT_collection_duplicate_linked ( struct wmOperatorType ot)

◆ OUTLINER_OT_collection_enable()

void OUTLINER_OT_collection_enable ( struct wmOperatorType ot)

◆ OUTLINER_OT_collection_enable_render()

void OUTLINER_OT_collection_enable_render ( struct wmOperatorType ot)

◆ OUTLINER_OT_collection_exclude_clear()

void OUTLINER_OT_collection_exclude_clear ( struct wmOperatorType ot)

◆ OUTLINER_OT_collection_exclude_set()

void OUTLINER_OT_collection_exclude_set ( struct wmOperatorType ot)

◆ OUTLINER_OT_collection_hide()

void OUTLINER_OT_collection_hide ( struct wmOperatorType ot)

◆ OUTLINER_OT_collection_hide_inside()

void OUTLINER_OT_collection_hide_inside ( struct wmOperatorType ot)

◆ OUTLINER_OT_collection_hierarchy_delete()

void OUTLINER_OT_collection_hierarchy_delete ( struct wmOperatorType ot)

◆ OUTLINER_OT_collection_holdout_clear()

void OUTLINER_OT_collection_holdout_clear ( struct wmOperatorType ot)

◆ OUTLINER_OT_collection_holdout_set()

void OUTLINER_OT_collection_holdout_set ( struct wmOperatorType ot)

◆ OUTLINER_OT_collection_indirect_only_clear()

void OUTLINER_OT_collection_indirect_only_clear ( struct wmOperatorType ot)

◆ OUTLINER_OT_collection_indirect_only_set()

void OUTLINER_OT_collection_indirect_only_set ( struct wmOperatorType ot)

◆ OUTLINER_OT_collection_instance()

void OUTLINER_OT_collection_instance ( struct wmOperatorType ot)

◆ OUTLINER_OT_collection_isolate()

void OUTLINER_OT_collection_isolate ( struct wmOperatorType ot)

◆ OUTLINER_OT_collection_link()

void OUTLINER_OT_collection_link ( struct wmOperatorType ot)

◆ OUTLINER_OT_collection_new()

void OUTLINER_OT_collection_new ( struct wmOperatorType ot)

◆ OUTLINER_OT_collection_objects_deselect()

void OUTLINER_OT_collection_objects_deselect ( struct wmOperatorType ot)

◆ OUTLINER_OT_collection_objects_select()

void OUTLINER_OT_collection_objects_select ( struct wmOperatorType ot)

◆ OUTLINER_OT_collection_show()

void OUTLINER_OT_collection_show ( struct wmOperatorType ot)

◆ OUTLINER_OT_collection_show_inside()

void OUTLINER_OT_collection_show_inside ( struct wmOperatorType ot)

◆ OUTLINER_OT_constraint_operation()

void OUTLINER_OT_constraint_operation ( struct wmOperatorType ot)

◆ OUTLINER_OT_data_operation()

void OUTLINER_OT_data_operation ( struct wmOperatorType ot)

◆ OUTLINER_OT_datastack_drop()

void OUTLINER_OT_datastack_drop ( struct wmOperatorType ot)

◆ OUTLINER_OT_delete()

void OUTLINER_OT_delete ( struct wmOperatorType ot)

◆ OUTLINER_OT_drivers_add_selected()

void OUTLINER_OT_drivers_add_selected ( struct wmOperatorType ot)

◆ OUTLINER_OT_drivers_delete_selected()

void OUTLINER_OT_drivers_delete_selected ( struct wmOperatorType ot)

◆ OUTLINER_OT_expanded_toggle()

void OUTLINER_OT_expanded_toggle ( struct wmOperatorType ot)

◆ OUTLINER_OT_hide()

void OUTLINER_OT_hide ( struct wmOperatorType ot)

◆ OUTLINER_OT_highlight_update()

void OUTLINER_OT_highlight_update ( struct wmOperatorType ot)

◆ OUTLINER_OT_id_copy()

void OUTLINER_OT_id_copy ( struct wmOperatorType ot)

◆ OUTLINER_OT_id_delete()

void OUTLINER_OT_id_delete ( struct wmOperatorType ot)

◆ OUTLINER_OT_id_operation()

void OUTLINER_OT_id_operation ( struct wmOperatorType ot)

◆ OUTLINER_OT_id_paste()

void OUTLINER_OT_id_paste ( struct wmOperatorType ot)

◆ OUTLINER_OT_id_remap()

void OUTLINER_OT_id_remap ( struct wmOperatorType ot)

◆ OUTLINER_OT_item_activate()

void OUTLINER_OT_item_activate ( struct wmOperatorType ot)

◆ OUTLINER_OT_item_drag_drop()

void OUTLINER_OT_item_drag_drop ( struct wmOperatorType ot)

◆ OUTLINER_OT_item_openclose()

void OUTLINER_OT_item_openclose ( struct wmOperatorType ot)

◆ OUTLINER_OT_item_rename()

void OUTLINER_OT_item_rename ( struct wmOperatorType ot)

◆ OUTLINER_OT_keyingset_add_selected()

void OUTLINER_OT_keyingset_add_selected ( struct wmOperatorType ot)

◆ OUTLINER_OT_keyingset_remove_selected()

void OUTLINER_OT_keyingset_remove_selected ( struct wmOperatorType ot)

◆ OUTLINER_OT_lib_operation()

void OUTLINER_OT_lib_operation ( struct wmOperatorType ot)

◆ OUTLINER_OT_lib_reload()

void OUTLINER_OT_lib_reload ( struct wmOperatorType ot)

◆ OUTLINER_OT_lib_relocate()

void OUTLINER_OT_lib_relocate ( struct wmOperatorType ot)

◆ OUTLINER_OT_material_drop()

void OUTLINER_OT_material_drop ( struct wmOperatorType ot)

◆ OUTLINER_OT_modifier_operation()

void OUTLINER_OT_modifier_operation ( struct wmOperatorType ot)

◆ OUTLINER_OT_object_operation()

void OUTLINER_OT_object_operation ( struct wmOperatorType ot)

◆ OUTLINER_OT_operation()

void OUTLINER_OT_operation ( struct wmOperatorType ot)

◆ OUTLINER_OT_orphans_purge()

void OUTLINER_OT_orphans_purge ( struct wmOperatorType ot)

◆ OUTLINER_OT_parent_clear()

void OUTLINER_OT_parent_clear ( struct wmOperatorType ot)

◆ OUTLINER_OT_parent_drop()

void OUTLINER_OT_parent_drop ( struct wmOperatorType ot)

◆ OUTLINER_OT_scene_drop()

void OUTLINER_OT_scene_drop ( struct wmOperatorType ot)

◆ OUTLINER_OT_scene_operation()

void OUTLINER_OT_scene_operation ( struct wmOperatorType ot)

◆ OUTLINER_OT_scroll_page()

void OUTLINER_OT_scroll_page ( struct wmOperatorType ot)

◆ OUTLINER_OT_select_all()

void OUTLINER_OT_select_all ( struct wmOperatorType ot)

◆ OUTLINER_OT_select_box()

void OUTLINER_OT_select_box ( struct wmOperatorType ot)

◆ OUTLINER_OT_select_walk()

void OUTLINER_OT_select_walk ( struct wmOperatorType ot)

◆ OUTLINER_OT_show_active()

void OUTLINER_OT_show_active ( struct wmOperatorType ot)

◆ OUTLINER_OT_show_hierarchy()

void OUTLINER_OT_show_hierarchy ( struct wmOperatorType ot)

◆ OUTLINER_OT_show_one_level()

void OUTLINER_OT_show_one_level ( struct wmOperatorType ot)

◆ OUTLINER_OT_unhide_all()

void OUTLINER_OT_unhide_all ( struct wmOperatorType ot)

◆ outliner_requires_rebuild_on_open_change()

bool outliner_requires_rebuild_on_open_change ( const struct SpaceOutliner space_outliner)

◆ outliner_requires_rebuild_on_select_or_active_change()

bool outliner_requires_rebuild_on_select_or_active_change ( const struct SpaceOutliner space_outliner)

◆ outliner_restrict_columns_width()

float outliner_restrict_columns_width ( const struct SpaceOutliner space_outliner)

◆ outliner_scroll_view()

void outliner_scroll_view ( struct SpaceOutliner space_outliner,
struct ARegion region,
int  delta_y 
)

◆ outliner_search_back()

struct ID* outliner_search_back ( TreeElement te,
short  idcode 
)

◆ outliner_search_back_te()

TreeElement* outliner_search_back_te ( TreeElement te,
short  idcode 
)

◆ outliner_set_coordinates()

void outliner_set_coordinates ( struct ARegion region,
struct SpaceOutliner space_outliner 
)

◆ outliner_sync_selection()

void outliner_sync_selection ( const struct bContext C,
struct SpaceOutliner space_outliner 
)

Referenced by draw_outliner().

◆ outliner_tag_redraw_avoid_rebuild_on_open_change()

void outliner_tag_redraw_avoid_rebuild_on_open_change ( const struct SpaceOutliner space_outliner,
struct ARegion region 
)

◆ outliner_tree_dimensions()

void outliner_tree_dimensions ( struct SpaceOutliner space_outliner,
int *  r_width,
int *  r_height 
)

Definition at line 108 of file outliner_draw.c.

References outliner_tree_dimensions_impl(), and SpaceOutliner::tree.

Referenced by draw_outliner(), and outliner_scroll_view().

◆ outliner_tree_traverse()

bool outliner_tree_traverse ( const SpaceOutliner space_outliner,
ListBase tree,
int  filter_te_flag,
int  filter_tselem_flag,
TreeTraversalFunc  func,
void *  customdata 
)

Iterate over all tree elements (pre-order traversal), executing func callback for each tree element matching the optional filters.

Parameters
filter_te_flagIf not 0, only TreeElements with this flag will be visited.
filter_tselem_flagSame as filter_te_flag, but for the TreeStoreElem.
funcCustom callback to execute for each visited item.

Definition at line 315 of file outliner_utils.c.

References TreeStoreElem::flag, outliner_tree_traverse(), TRAVERSE_BREAK, TRAVERSE_CONTINUE, TRAVERSE_SKIP_CHILDS, tree, and TREESTORE.

Referenced by collection_flag_exec(), collection_instance_exec(), collection_isolate_exec(), collection_link_exec(), collection_new_exec(), collection_view_layer_exec(), collection_visibility_exec(), collections_view_layer_poll(), ED_outliner_selected_objects_get(), outliner_active_collection(), outliner_active_layer_collection(), outliner_collection_delete(), outliner_color_tag_set_exec(), outliner_delete_exec(), outliner_hide_exec(), outliner_item_drag_drop_invoke(), and outliner_tree_traverse().

◆ outliner_viewcontext_init()

void outliner_viewcontext_init ( const struct bContext C,
TreeViewContext tvc 
)

◆ tree_element_activate()

void tree_element_activate ( struct bContext C,
const TreeViewContext tvc,
TreeElement te,
const eOLSetState  set,
const bool  handle_all_types 
)
Note
ID_OB only if handle_all_type is true, else objects are handled specially to allow multiple selection. See #do_outliner_item_activate.

Definition at line 737 of file outliner_select.c.

References C, ID_CA, ID_MA, ID_OB, ID_WO, TreeElement::idcode, TreeViewContext::scene, tree_element_camera_activate(), tree_element_material_activate(), tree_element_object_activate(), tree_element_world_activate(), and TreeViewContext::view_layer.

Referenced by do_outliner_item_activate_tree_element(), and namebutton_fn().

◆ tree_element_active_state_get()

eOLDrawState tree_element_active_state_get ( const TreeViewContext tvc,
const TreeElement te,
const TreeStoreElem tselem 
)

◆ tree_element_get_icon()

TreeElementIcon tree_element_get_icon ( TreeStoreElem tselem,
TreeElement te 
)

Definition at line 2146 of file outliner_draw.c.

References BKE_modifier_get_info(), BLI_findlink(), COLLECTION_IS_MASTER, CONSTRAINT_TYPE_ACTION, CONSTRAINT_TYPE_ARMATURE, CONSTRAINT_TYPE_CAMERASOLVER, CONSTRAINT_TYPE_CHILDOF, CONSTRAINT_TYPE_CLAMPTO, CONSTRAINT_TYPE_DAMPTRACK, CONSTRAINT_TYPE_DISTLIMIT, CONSTRAINT_TYPE_FOLLOWPATH, CONSTRAINT_TYPE_FOLLOWTRACK, CONSTRAINT_TYPE_KINEMATIC, CONSTRAINT_TYPE_LOCKTRACK, CONSTRAINT_TYPE_LOCLIKE, CONSTRAINT_TYPE_LOCLIMIT, CONSTRAINT_TYPE_MINMAX, CONSTRAINT_TYPE_OBJECTSOLVER, CONSTRAINT_TYPE_PIVOT, CONSTRAINT_TYPE_ROTLIKE, CONSTRAINT_TYPE_ROTLIMIT, CONSTRAINT_TYPE_SAMEVOL, CONSTRAINT_TYPE_SHRINKWRAP, CONSTRAINT_TYPE_SIZELIKE, CONSTRAINT_TYPE_SIZELIMIT, CONSTRAINT_TYPE_SPLINEIK, CONSTRAINT_TYPE_STRETCHTO, CONSTRAINT_TYPE_TRACKTO, CONSTRAINT_TYPE_TRANSFORM, CONSTRAINT_TYPE_TRANSFORM_CACHE, CONSTRAINT_TYPE_TRANSLIKE, data, PointerRNA::data, TreeElement::directdata, eGpencilModifierType_Armature, eGpencilModifierType_Array, eGpencilModifierType_Build, eGpencilModifierType_Color, eGpencilModifierType_Hook, eGpencilModifierType_Lattice, eGpencilModifierType_Mirror, eGpencilModifierType_Multiply, eGpencilModifierType_Noise, eGpencilModifierType_Offset, eGpencilModifierType_Opacity, eGpencilModifierType_Simplify, eGpencilModifierType_Smooth, eGpencilModifierType_Subdiv, eGpencilModifierType_Texture, eGpencilModifierType_Thick, eGpencilModifierType_Time, eGpencilModifierType_Tint, Object::empty_drawtype, Collection::flag, PartDeflect::forcefield, Object::greasepencil_modifiers, GS, ModifierTypeInfo::icon, TreeStoreElem::id, ID_AC, ID_AR, ID_BR, ID_CA, ID_CU, ID_GD, ID_GR, ID_HA, ID_IM, ID_KE, ID_LA, ID_LI, ID_LP, ID_LS, ID_LT, ID_MA, ID_MB, ID_MC, ID_ME, ID_MSK, ID_NLA, ID_OB, ID_PC, ID_PT, ID_SCE, ID_SCR, ID_SIM, ID_SO, ID_SPK, ID_TE, ID_TXT, ID_VO, ID_WO, ID_WS, TreeElement::idcode, if(), Object::instance_collection, LA_AREA, LA_LOCAL, LA_SPOT, LA_SUN, LIB_TAG_MISSING, LIGHTPROBE_TYPE_CUBE, LIGHTPROBE_TYPE_GRID, LIGHTPROBE_TYPE_PLANAR, Object::modifiers, ID::name, TreeStoreElem::nr, NULL, OB_ARMATURE, OB_CAMERA, OB_CURVE, OB_DUPLICOLLECTION, OB_EMPTY, OB_EMPTY_IMAGE, OB_FONT, OB_GPENCIL, OB_HAIR, OB_LAMP, OB_LATTICE, OB_LIGHTPROBE, OB_MBALL, OB_MESH, OB_POINTCLOUD, OB_SPEAKER, OB_SURF, OB_VOLUME, outliner_collection_from_tree_element(), TreeElement::parent, Object::pd, RNA_struct_is_ID(), RNA_struct_ui_icon(), TreeElement::rnaptr, SEQ_TYPE_ADD, SEQ_TYPE_ADJUSTMENT, SEQ_TYPE_ALPHAOVER, SEQ_TYPE_ALPHAUNDER, SEQ_TYPE_COLOR, SEQ_TYPE_COLORMIX, SEQ_TYPE_CROSS, SEQ_TYPE_GAMCROSS, SEQ_TYPE_GAUSSIAN_BLUR, SEQ_TYPE_GLOW, SEQ_TYPE_IMAGE, SEQ_TYPE_MASK, SEQ_TYPE_META, SEQ_TYPE_MOVIE, SEQ_TYPE_MOVIECLIP, SEQ_TYPE_MUL, SEQ_TYPE_MULTICAM, SEQ_TYPE_OVERDROP, SEQ_TYPE_SCENE, SEQ_TYPE_SOUND_RAM, SEQ_TYPE_SPEED, SEQ_TYPE_SUB, SEQ_TYPE_TEXT, SEQ_TYPE_TRANSFORM, SEQ_TYPE_WIPE, ID::tag, Object::transflag, TREESTORE, TSE_ANIM_DATA, TSE_BONE, TSE_CONSTRAINT, TSE_CONSTRAINT_BASE, TSE_DEFGROUP, TSE_DEFGROUP_BASE, TSE_DRIVER_BASE, TSE_EBONE, TSE_GP_LAYER, TSE_GPENCIL_EFFECT, TSE_GPENCIL_EFFECT_BASE, TSE_LAYER_COLLECTION, TSE_LIBRARY_OVERRIDE, TSE_LIBRARY_OVERRIDE_BASE, TSE_LINKED_OB, TSE_LINKED_PSYS, TSE_MODIFIER, TSE_MODIFIER_BASE, TSE_NLA, TSE_NLA_ACTION, TSE_NLA_TRACK, TSE_POSE_BASE, TSE_POSE_CHANNEL, TSE_POSEGRP, TSE_POSEGRP_BASE, TSE_PROXY, TSE_R_LAYER, TSE_R_LAYER_BASE, TSE_RNA_STRUCT, TSE_SCENE_COLLECTION_BASE, TSE_SCENE_OBJECTS_BASE, TSE_SEQ_STRIP, TSE_SEQUENCE, TSE_SEQUENCE_DUP, TSE_SOME_ID, TSE_VIEW_COLLECTION_BASE, bConstraint::type, GpencilModifierData::type, Light::type, LightProbe::type, ModifierData::type, Object::type, TreeStoreElem::type, and PointerRNA::type.

Referenced by merged_element_search_fn_recursive(), outliner_item_drag_drop_invoke(), and tselem_draw_icon().

◆ tree_element_id_type_to_index()

int tree_element_id_type_to_index ( TreeElement te)

Return the index to use based on the TreeElement ID and object type

We use a continuum of indices until we get to the object data-blocks and we then make room for the object types.

Definition at line 2925 of file outliner_draw.c.

References BKE_idtype_idcode_to_index(), TreeStoreElem::id, TreeElement::idcode, INDEX_ID_GR, INDEX_ID_OB, OB_TYPE_MAX, TREESTORE, TSE_SOME_ID, Object::type, and TreeStoreElem::type.

Referenced by merged_element_search_fn_recursive(), merged_element_search_update_fn(), and outliner_draw_iconrow().

◆ tree_element_type_active_set()

void tree_element_type_active_set ( bContext C,
const TreeViewContext tvc,
TreeElement te,
TreeStoreElem tselem,
const eOLSetState  set,
bool  recursive 
)

◆ tree_element_type_active_state_get()

eOLDrawState tree_element_type_active_state_get ( const struct bContext C,
const struct TreeViewContext tvc,
const TreeElement te,
const TreeStoreElem tselem 
)