|
Blender
V2.93
|
#include "DNA_armature_types.h"#include "DNA_collection_types.h"#include "DNA_constraint_types.h"#include "DNA_gpencil_modifier_types.h"#include "DNA_gpencil_types.h"#include "DNA_light_types.h"#include "DNA_lightprobe_types.h"#include "DNA_object_force_types.h"#include "DNA_object_types.h"#include "DNA_scene_types.h"#include "DNA_sequence_types.h"#include "BLI_blenlib.h"#include "BLI_math.h"#include "BLI_mempool.h"#include "BLI_string_utils.h"#include "BLI_utildefines.h"#include "BLT_translation.h"#include "BKE_armature.h"#include "BKE_context.h"#include "BKE_deform.h"#include "BKE_gpencil.h"#include "BKE_idtype.h"#include "BKE_layer.h"#include "BKE_lib_id.h"#include "BKE_library.h"#include "BKE_main.h"#include "BKE_modifier.h"#include "BKE_object.h"#include "BKE_particle.h"#include "BKE_report.h"#include "DEG_depsgraph.h"#include "DEG_depsgraph_build.h"#include "ED_armature.h"#include "ED_outliner.h"#include "ED_screen.h"#include "WM_api.h"#include "WM_message.h"#include "WM_types.h"#include "GPU_immediate.h"#include "GPU_state.h"#include "UI_interface.h"#include "UI_interface_icons.h"#include "UI_resources.h"#include "UI_view2d.h"#include "RNA_access.h"#include "outliner_intern.h"Go to the source code of this file.
Classes | |
| struct | RestrictProperties |
| struct | RestrictPropertiesActive |
| struct | MergedIconRow |
Typedefs | |
| typedef struct RestrictProperties | RestrictProperties |
| typedef struct RestrictPropertiesActive | RestrictPropertiesActive |
| typedef struct MergedIconRow | MergedIconRow |
Functions | |
| static void | outliner_tree_dimensions_impl (SpaceOutliner *space_outliner, ListBase *lb, int *width, int *height) |
| void | outliner_tree_dimensions (SpaceOutliner *space_outliner, int *r_width, int *r_height) |
| static bool | is_object_data_in_editmode (const ID *id, const Object *obact) |
| static void | restrictbutton_recursive_ebone (bArmature *arm, EditBone *ebone_parent, int flag, bool set_flag) |
| static void | restrictbutton_recursive_bone (Bone *bone_parent, int flag, bool set_flag) |
| static void | restrictbutton_r_lay_fn (bContext *C, void *poin, void *UNUSED(poin2)) |
| static void | restrictbutton_bone_visibility_fn (bContext *C, void *poin, void *UNUSED(poin2)) |
| static void | restrictbutton_bone_select_fn (bContext *C, void *UNUSED(poin), void *poin2) |
| static void | restrictbutton_ebone_select_fn (bContext *C, void *poin, void *poin2) |
| static void | restrictbutton_ebone_visibility_fn (bContext *C, void *poin, void *poin2) |
| static void | restrictbutton_gp_layer_flag_fn (bContext *C, void *poin, void *UNUSED(poin2)) |
| static void | restrictbutton_id_user_toggle (bContext *UNUSED(C), void *poin, void *UNUSED(poin2)) |
| static void | outliner_object_set_flag_recursive_fn (bContext *C, Base *base, Object *ob, const char *propname) |
| static void | outliner__object_set_flag_recursive_fn (bContext *C, void *poin, void *poin2) |
| static void | outliner__base_set_flag_recursive_fn (bContext *C, void *poin, void *poin2) |
| static void | outliner_layer_or_collection_pointer_create (Scene *scene, LayerCollection *layer_collection, Collection *collection, PointerRNA *ptr) |
| static void | outliner_base_or_object_pointer_create (Scene *scene, ViewLayer *view_layer, Collection *collection, Object *ob, PointerRNA *ptr) |
| static void | outliner_collection_set_flag_recursive (Scene *scene, ViewLayer *view_layer, LayerCollection *layer_collection, Collection *collection, PropertyRNA *layer_or_collection_prop, PropertyRNA *base_or_object_prop, const bool value) |
| static bool | outliner_collection_is_isolated (Scene *scene, const LayerCollection *layer_collection_cmp, const Collection *collection_cmp, const bool value_cmp, const PropertyRNA *layer_or_collection_prop, LayerCollection *layer_collection, Collection *collection) |
| void | outliner_collection_isolate_flag (Scene *scene, ViewLayer *view_layer, LayerCollection *layer_collection, Collection *collection, PropertyRNA *layer_or_collection_prop, const char *propname, const bool value) |
| static void | outliner_collection_set_flag_recursive_fn (bContext *C, LayerCollection *layer_collection, Collection *collection, const char *propname) |
| static void | view_layer__layer_collection_set_flag_recursive_fn (bContext *C, void *poin, void *poin2) |
| static void | view_layer__collection_set_flag_recursive_fn (bContext *C, void *poin, void *poin2) |
| static void | scenes__collection_set_flag_recursive_fn (bContext *C, void *poin, void *poin2) |
| static void | namebutton_fn (bContext *C, void *tsep, char *oldname) |
| static void | outliner_restrict_properties_enable_collection_set (PointerRNA *collection_ptr, RestrictProperties *props, RestrictPropertiesActive *props_active) |
| static void | outliner_restrict_properties_enable_layer_collection_set (PointerRNA *layer_collection_ptr, PointerRNA *collection_ptr, RestrictProperties *props, RestrictPropertiesActive *props_active) |
| static bool | outliner_restrict_properties_collection_set (Scene *scene, TreeElement *te, PointerRNA *collection_ptr, PointerRNA *layer_collection_ptr, RestrictProperties *props, RestrictPropertiesActive *props_active) |
| static void | outliner_draw_restrictbuts (uiBlock *block, Scene *scene, ViewLayer *view_layer, ARegion *region, SpaceOutliner *space_outliner, ListBase *lb, RestrictPropertiesActive props_active_parent) |
| static void | outliner_draw_userbuts (uiBlock *block, ARegion *region, SpaceOutliner *space_outliner, ListBase *lb) |
| static bool | outliner_draw_overrides_buts (uiBlock *block, ARegion *region, SpaceOutliner *space_outliner, ListBase *lb, const bool is_open) |
| static void | outliner_draw_rnacols (ARegion *region, int sizex) |
| static void | outliner_draw_rnabuts (uiBlock *block, ARegion *region, SpaceOutliner *space_outliner, int sizex, ListBase *lb) |
| static void | outliner_buttons (const bContext *C, uiBlock *block, ARegion *region, const float restrict_column_width, TreeElement *te) |
| static void | outliner_mode_toggle_fn (bContext *C, void *tselem_poin, void *UNUSED(arg2)) |
| static void | outliner_draw_mode_column_toggle (uiBlock *block, TreeViewContext *tvc, TreeElement *te, TreeStoreElem *tselem, const bool lock_object_modes) |
| static void | outliner_draw_mode_column (const bContext *C, uiBlock *block, TreeViewContext *tvc, SpaceOutliner *space_outliner, ListBase *tree) |
| TreeElementIcon | tree_element_get_icon (TreeStoreElem *tselem, TreeElement *te) |
| static void | tselem_draw_icon (uiBlock *block, int xmax, float x, float y, TreeStoreElem *tselem, TreeElement *te, float alpha, const bool is_clickable) |
| static void | outliner_draw_iconrow_number (const uiFontStyle *fstyle, int offsx, int ys, const int num_elements) |
| static void | outliner_icon_background_colors (float icon_color[4], float icon_border[4]) |
| static void | outliner_draw_active_indicator (const float minx, const float miny, const float maxx, const float maxy, const float icon_color[4], const float icon_border[4]) |
| static void | outliner_draw_iconrow_doit (uiBlock *block, TreeElement *te, const uiFontStyle *fstyle, int xmax, int *offsx, int ys, float alpha_fac, const eOLDrawState active, const int num_elements) |
| int | tree_element_id_type_to_index (TreeElement *te) |
| static void | outliner_draw_iconrow (bContext *C, uiBlock *block, const uiFontStyle *fstyle, const TreeViewContext *tvc, SpaceOutliner *space_outliner, ListBase *lb, int level, int xmax, int *offsx, int ys, float alpha_fac, MergedIconRow *merged) |
| static void | outliner_set_coord_tree_element (TreeElement *te, int startx, int starty) |
| static bool | element_should_draw_faded (const TreeViewContext *tvc, const TreeElement *te, const TreeStoreElem *tselem) |
| static void | outliner_draw_tree_element (bContext *C, uiBlock *block, const uiFontStyle *fstyle, const TreeViewContext *tvc, ARegion *region, SpaceOutliner *space_outliner, TreeElement *te, bool draw_grayed_out, int startx, int *starty, const float restrict_column_width, TreeElement **te_edit) |
| static bool | subtree_contains_object (ListBase *lb) |
| static void | outliner_draw_hierarchy_line (const uint pos, const int x, const int y1, const int y2, const bool draw_dashed) |
| static void | outliner_draw_hierarchy_lines_recursive (uint pos, SpaceOutliner *space_outliner, ListBase *lb, int startx, const uchar col[4], bool draw_grayed_out, int *starty) |
| static void | outliner_draw_hierarchy_lines (SpaceOutliner *space_outliner, ListBase *lb, int startx, int *starty) |
| static void | outliner_draw_struct_marks (ARegion *region, SpaceOutliner *space_outliner, ListBase *lb, int *starty) |
| static void | outliner_draw_highlights_recursive (uint pos, const ARegion *region, const SpaceOutliner *space_outliner, const ListBase *lb, const float col_selection[4], const float col_active[4], const float col_highlight[4], const float col_searchmatch[4], int start_x, int *io_start_y) |
| static void | outliner_draw_highlights (ARegion *region, SpaceOutliner *space_outliner, int startx, int *starty) |
| static void | outliner_draw_tree (bContext *C, uiBlock *block, const TreeViewContext *tvc, ARegion *region, SpaceOutliner *space_outliner, const float restrict_column_width, const bool use_mode_column, TreeElement **te_edit) |
| static void | outliner_back (ARegion *region) |
| static int | outliner_data_api_buttons_start_x (int max_tree_width) |
| static int | outliner_width (SpaceOutliner *space_outliner, int max_tree_width, float restrict_column_width) |
| static void | outliner_update_viewable_area (ARegion *region, SpaceOutliner *space_outliner, int tree_width, int tree_height, float restrict_column_width) |
| void | draw_outliner (const bContext *C) |
| typedef struct MergedIconRow MergedIconRow |
| typedef struct RestrictProperties RestrictProperties |
| typedef struct RestrictPropertiesActive RestrictPropertiesActive |
| void draw_outliner | ( | const bContext * | C | ) |
Definition at line 3736 of file outliner_draw.c.
References C, CTX_data_main(), CTX_wm_region(), CTX_wm_space_outliner(), ED_outliner_select_sync_flag_outliners(), ED_outliner_select_sync_is_dirty(), ELEM, SpaceOutliner::flag, View2D::flag, NULL, outliner_back(), outliner_build_tree(), outliner_buttons(), outliner_data_api_buttons_start_x(), outliner_draw_mode_column(), outliner_draw_overrides_buts(), outliner_draw_restrictbuts(), outliner_draw_rnabuts(), outliner_draw_rnacols(), outliner_draw_tree(), outliner_draw_userbuts(), outliner_restrict_columns_width(), outliner_sync_selection(), outliner_tree_dimensions(), outliner_update_viewable_area(), outliner_viewcontext_init(), SpaceOutliner::outlinevis, TreeViewContext::scene, SO_DATA_API, SO_ID_ORPHANS, SO_LIBRARIES, SO_MODE_COLUMN, SO_OVERRIDES_LIBRARY, SO_SCENES, SO_SYNC_SELECT, SO_VIEW_LAYER, SpaceOutliner::tree, UI_block_begin(), UI_block_draw(), UI_block_emboss_set(), UI_block_end(), UI_EMBOSS, UI_EMBOSS_NONE_OR_STATUS, UI_view2d_view_ortho(), ARegion::v2d, V2D_PIXELOFS_X, V2D_PIXELOFS_Y, and TreeViewContext::view_layer.
Referenced by outliner_main_region_draw().
|
static |
Definition at line 3067 of file outliner_draw.c.
References BASE_VISIBLE_VIEWLAYER, BKE_view_layer_base_find(), TreeElement::directdata, TreeElement::flag, LayerCollection::flag, TreeStoreElem::id, ID_OB, TreeElement::idcode, LAYER_COLLECTION_EXCLUDE, LAYER_COLLECTION_VISIBLE_VIEW_LAYER, NULL, LayerCollection::runtime_flag, TE_CHILD_NOT_IN_COLLECTION, TSE_LAYER_COLLECTION, TSE_SOME_ID, TreeStoreElem::type, and TreeViewContext::view_layer.
Referenced by outliner_draw_tree_element().
The active object is only needed for reference.
Definition at line 118 of file outliner_draw.c.
References BKE_object_data_is_in_editmode(), Object::data, GPENCIL_EDIT_MODE, GS, id, ID_GD, Object::mode, ID::name, NULL, OB_DATA_SUPPORT_EDITMODE, and OB_MODE_EDIT.
Referenced by outliner_draw_iconrow(), and outliner_draw_tree_element().
|
static |
Definition at line 663 of file outliner_draw.c.
References bPose::agroups, BKE_gpencil_layer_active_set(), BKE_library_filepath_set(), BKE_main_blendfile_path(), BKE_object_defgroup_unique_name(), BKE_reportf(), BKE_view_layer_rename(), BLI_assert, BLI_exists(), BLI_libblock_ensure_unique_name(), BLI_path_abs(), BLI_strncpy(), BLI_uniquename(), BLT_I18NCONTEXT_ID_ACTION, bPoseChannel::bone, C, CTX_DATA_, CTX_data_main(), CTX_wm_message_bus(), CTX_wm_reports(), CTX_wm_space_outliner(), Object::data, DEG_id_tag_update(), TreeElement::directdata, ED_armature_bone_rename(), bArmature::edbo, FILE_MAX, TreeStoreElem::flag, GS, bAction::id, bArmature::id, Collection::id, bGPdata::id, Object::id, TreeStoreElem::id, Scene::id, ID_IM, ID_LI, ID_MA, ID_OB, ID_RECALC_COPY_ON_WRITE, ID_RECALC_GEOMETRY, ID_SCE, ID_TE, TreeElement::idcode, if(), bGPdata::layers, lib, LIB_TAG_MISSING, NA_RENAME, NA_SELECTED, EditBone::name, bPoseChannel::name, ID::name, NC_GPENCIL, NC_ID, NC_IMAGE, NC_MATERIAL, NC_OBJECT, NC_SCENE, NC_TEXTURE, ND_DATA, ND_POSE, NULL, OB_ARMATURE, OB_MBALL, OL_SETSEL_NORMAL, outliner_find_tree_element(), outliner_viewcontext_init(), Object::pose, RPT_ERROR, RPT_INFO, scene, SpaceOutliner::tree, tree_element_activate(), SpaceOutliner::treestore, TSE_BONE, TSE_DEFGROUP, TSE_EBONE, TSE_GP_LAYER, TSE_LAYER_COLLECTION, TSE_NLA_ACTION, TSE_POSE_CHANNEL, TSE_POSEGRP, TSE_R_LAYER, TSE_SOME_ID, TSE_TEXTBUT, Object::type, TreeStoreElem::type, WM_event_add_notifier(), and WM_msg_publish_rna_prop.
Referenced by outliner_buttons().
|
static |
Base properties.
Definition at line 324 of file outliner_draw.c.
References C, NULL, and outliner_object_set_flag_recursive_fn().
Referenced by outliner_draw_restrictbuts().
|
static |
Object properties.
Definition at line 314 of file outliner_draw.c.
References C, NULL, and outliner_object_set_flag_recursive_fn().
Referenced by outliner_draw_restrictbuts().
|
static |
Definition at line 3665 of file outliner_draw.c.
References View2D::cur, floor(), GPU_COMP_F32, GPU_FETCH_FLOAT, GPU_PRIM_TRIS, GPU_SHADER_2D_UNIFORM_COLOR, GPU_vertformat_attr_add(), immBegin(), immBindBuiltinProgram(), immEnd(), immUnbindProgram(), immUniformThemeColorBlend(), immVertex2f(), immVertexFormat(), OL_Y_OFFSET, pos, TH_BACK, TH_ROW_ALTERNATE, View2D::tot, UI_GetThemeColor4fv(), UI_UNIT_Y, ARegion::v2d, x2, rctf::xmax, y1, rctf::ymax, and rctf::ymin.
Referenced by draw_outliner().
|
static |
Create either a RNA_ObjectBase or a RNA_Object pointer.
Definition at line 346 of file outliner_draw.c.
References BKE_view_layer_base_find(), Object::id, Scene::id, ptr, RNA_id_pointer_create(), RNA_ObjectBase, RNA_pointer_create(), and scene.
Referenced by outliner_collection_set_flag_recursive().
|
static |
Definition at line 1967 of file outliner_draw.c.
References BLI_assert, C, View2D::cur, TreeStoreElem::flag, GS, TreeStoreElem::id, ID_LI, len, MAX_ID_NAME, TreeElement::name, ID::name, namebutton_fn(), NC_SPACE, ND_SPACE_OUTLINER, NULL, OL_NAMEBUTTON, TREESTORE, TSE_EBONE, TSE_MODIFIER, TSE_TEXTBUT, TreeStoreElem::type, UI_BTYPE_TEXT, UI_but_active_only(), UI_but_func_rename_set(), UI_UNIT_X, UI_UNIT_Y, uiDefBut(), ARegion::v2d, WM_event_add_notifier(), rctf::xmax, TreeElement::xs, and TreeElement::ys.
Referenced by draw_outliner().
|
static |
Check if collection is already isolated.
A collection is isolated if all its parents and children are "visible". All the other collections must be "invisible".
Note: We could/should boost performance by iterating over the tree twice. First tagging all the children/parent collections, then getting their values and comparing. To run BKE_collection_has_collection() so many times is silly and slow.
Definition at line 421 of file outliner_draw.c.
References BKE_collection_has_collection(), Collection::children, LayerCollection::collection, COLLECTION_IS_MASTER, Collection::flag, LayerCollection::flag, LAYER_COLLECTION_EXCLUDE, LayerCollection::layer_collections, LISTBASE_FOREACH, NULL, outliner_layer_or_collection_pointer_create(), ptr, RNA_property_boolean_get(), and scene.
Referenced by outliner_collection_isolate_flag().
| void outliner_collection_isolate_flag | ( | Scene * | scene, |
| ViewLayer * | view_layer, | ||
| LayerCollection * | layer_collection, | ||
| Collection * | collection, | ||
| PropertyRNA * | layer_or_collection_prop, | ||
| const char * | propname, | ||
| const bool | value | ||
| ) |
Definition at line 480 of file outliner_draw.c.
References BKE_layer_collection_has_layer_collection(), CollectionParent::collection, LayerCollection::collection, COLLECTION_IS_MASTER, ListBase::first, Collection::flag, Collection::id, LayerCollection::layer_collections, ViewLayer::layer_collections, LISTBASE_FOREACH, Scene::master_collection, NULL, outliner_collection_is_isolated(), outliner_collection_set_flag_recursive(), outliner_layer_or_collection_pointer_create(), Collection::parents, ptr, RNA_id_pointer_create(), RNA_property_boolean_get_default(), RNA_property_boolean_set(), and scene.
Referenced by collection_isolate_exec(), and outliner_collection_set_flag_recursive_fn().
|
static |
Definition at line 360 of file outliner_draw.c.
References Collection::children, LayerCollection::collection, DEG_id_tag_update(), LayerCollection::flag, Collection::gobject, Collection::id, ID_RECALC_COPY_ON_WRITE, LAYER_COLLECTION_EXCLUDE, LayerCollection::layer_collections, LISTBASE_FOREACH, NULL, outliner_base_or_object_pointer_create(), outliner_layer_or_collection_pointer_create(), ptr, RNA_property_boolean_set(), and scene.
Referenced by outliner_collection_isolate_flag(), and outliner_collection_set_flag_recursive_fn().
|
static |
Definition at line 567 of file outliner_draw.c.
References BKE_main_collection_sync_remap(), C, wmEvent::ctrl, CTX_data_main(), CTX_data_scene(), CTX_data_view_layer(), CTX_wm_window(), data, DEG_relations_tag_update(), ELEM, wmWindow::eventstate, Collection::id, Scene::id, NULL, outliner_collection_isolate_flag(), outliner_collection_set_flag_recursive(), outliner_layer_or_collection_pointer_create(), ptr, RNA_Collection, RNA_LayerCollection, RNA_Object, RNA_ObjectBase, RNA_pointer_create(), RNA_property_boolean_get(), RNA_struct_type_find_property(), scene, and wmEvent::shift.
Referenced by scenes__collection_set_flag_recursive_fn(), view_layer__collection_set_flag_recursive_fn(), and view_layer__layer_collection_set_flag_recursive_fn().
|
static |
Definition at line 3703 of file outliner_draw.c.
References max_ii(), OL_RNA_COL_SPACEX, and OL_RNA_COLX.
Referenced by draw_outliner(), and outliner_width().
|
static |
Definition at line 2838 of file outliner_draw.c.
References GPU_blend(), GPU_BLEND_ALPHA, UI_CNR_ALL, UI_draw_roundbox_aa(), UI_draw_roundbox_corner_set(), UI_UNIT_X, and UI_UNIT_Y.
Referenced by outliner_draw_iconrow_doit(), and outliner_draw_tree_element().
|
static |
Definition at line 3334 of file outliner_draw.c.
References GPU_PRIM_LINES, immBegin(), immEnd(), immUniform1f(), immVertex2f(), pos, UI_UNIT_Y, x, and y1.
Referenced by outliner_draw_hierarchy_lines_recursive().
|
static |
Definition at line 3407 of file outliner_draw.c.
References col, GPU_blend(), GPU_BLEND_ALPHA, GPU_BLEND_NONE, GPU_COMP_F32, GPU_FETCH_FLOAT, GPU_line_width(), GPU_SHADER_2D_LINE_DASHED_UNIFORM_COLOR, GPU_vertformat_attr_add(), GPU_viewport_size_get_f(), immBindBuiltinProgram(), immUnbindProgram(), immUniform1f(), immUniform1i(), immUniform2f(), immVertexFormat(), outliner_draw_hierarchy_lines_recursive(), pos, TH_BACK, TH_TEXT, UI_DPI_FAC, and UI_GetThemeColorBlend3ubv().
Referenced by outliner_draw_tree().
|
static |
Definition at line 3351 of file outliner_draw.c.
References BLI_listbase_is_empty(), col, bTheme::collection_color, COLLECTION_COLOR_NONE, ThemeCollectionColor::color, Collection::color_tag, ID_OB, immUniformColor4ubv(), LISTBASE_FOREACH, outliner_collection_from_tree_element(), outliner_draw_hierarchy_line(), pos, subtree_contains_object(), TREESTORE, TSE_LAYER_COLLECTION, TSE_SOME_ID, TSELEM_OPEN, TreeStoreElem::type, UI_GetTheme(), UI_UNIT_X, UI_UNIT_Y, and y.
Referenced by outliner_draw_hierarchy_lines().
|
static |
Definition at line 3560 of file outliner_draw.c.
References GPU_blend(), GPU_BLEND_ALPHA, GPU_BLEND_NONE, GPU_COMP_I32, GPU_FETCH_INT_TO_FLOAT, GPU_SHADER_2D_UNIFORM_COLOR, GPU_vertformat_attr_add(), immBindBuiltinProgram(), immUnbindProgram(), immVertexFormat(), outliner_draw_highlights_recursive(), pos, TH_MATCH, TH_SELECT_ACTIVE, TH_SELECT_HIGHLIGHT, SpaceOutliner::tree, UI_GetThemeColor3fv(), and UI_GetThemeColor4fv().
Referenced by outliner_draw_tree().
|
static |
Definition at line 3474 of file outliner_draw.c.
References col, View2D::cur, TreeStoreElem::flag, if(), immRecti(), immUniformColor3fvAlpha(), immUniformColor4fv(), LISTBASE_FOREACH, SpaceOutliner::outlinevis, pos, SpaceOutliner::search_string, SEARCHING_OUTLINER, SO_DATA_API, TH_BACK, TREESTORE, TSE_ACTIVE, TSE_DRAG_AFTER, TSE_DRAG_ANY, TSE_DRAG_BEFORE, TSE_HIGHLIGHTED, TSE_SEARCHMATCH, TSE_SELECTED, TSELEM_OPEN, UI_GetThemeColorShade4fv(), UI_UNIT_X, UI_UNIT_Y, ARegion::v2d, and rctf::xmax.
Referenced by outliner_draw_highlights().
|
static |
Definition at line 2947 of file outliner_draw.c.
References blender::compositor::active, MergedIconRow::active, C, ELEM, TreeStoreElem::id, ID_OB, INDEX_ID_MAX, INDEX_ID_OB, is_object_data_in_editmode(), LISTBASE_FOREACH, MAX2, NULL, MergedIconRow::num_elements, OB_TYPE_MAX, TreeViewContext::obact, OL_DRAWSEL_ACTIVE, OL_DRAWSEL_NONE, OL_DRAWSEL_NORMAL, outliner_draw_iconrow_doit(), TE_ICONROW, TE_ICONROW_MERGED, MergedIconRow::tree_element, tree_element_active_state_get(), tree_element_id_type_to_index(), tree_element_type_active_state_get(), TREESTORE, TSE_BONE, TSE_DEFGROUP, TSE_EBONE, TSE_GP_LAYER, TSE_ID_BASE, TSE_LAYER_COLLECTION, TSE_LIBRARY_OVERRIDE, TSE_LIBRARY_OVERRIDE_BASE, TSE_POSE_CHANNEL, TSE_POSEGRP, TSE_R_LAYER, TSE_SOME_ID, and TreeStoreElem::type.
Referenced by outliner_draw_tree_element().
|
static |
Definition at line 2872 of file outliner_draw.c.
References blender::compositor::active, TreeElement::flag, TreeStoreElem::flag, OL_DRAWSEL_ACTIVE, OL_DRAWSEL_NONE, outliner_draw_active_indicator(), outliner_draw_iconrow_number(), outliner_icon_background_colors(), TE_ICONROW, TE_ICONROW_MERGED, TH_EDITED_OBJECT, TREESTORE, TSE_HIGHLIGHTED_ICON, tselem_draw_icon(), UI_GetThemeColor4fv(), UI_UNIT_X, UI_UNIT_Y, TreeElement::xend, TreeElement::xs, and TreeElement::ys.
Referenced by outliner_draw_iconrow().
|
static |
For icon-only children of a collapsed tree, Draw small number over the icon to show how many items of this type are displayed.
Definition at line 2780 of file outliner_draw.c.
References BLI_snprintf(), float(), GPU_blend(), GPU_BLEND_ALPHA, uiFontStyle::points, TH_TEXT_HI, UI_CNR_ALL, UI_draw_roundbox_aa(), UI_draw_roundbox_corner_set(), UI_fontstyle_draw_simple(), UI_fontstyle_set(), UI_GetThemeColor3ubv(), UI_UNIT_X, and UI_UNIT_Y.
Referenced by outliner_draw_iconrow_doit().
|
static |
Definition at line 2121 of file outliner_draw.c.
References C, LISTBASE_FOREACH, Object::mode, OB_MODE_OBJECT, TreeViewContext::obact, ToolSettings::object_flag, outliner_draw_mode_column_toggle(), SCE_OBJECT_MODE_LOCK, TreeViewContext::scene, Scene::toolsettings, tree, TREESTORE, and TSELEM_OPEN.
Referenced by draw_outliner().
|
static |
Definition at line 2047 of file outliner_draw.c.
References Object::data, Object::id, TreeStoreElem::id, ID_IS_LINKED, ID_OB, TreeElement::idcode, if(), Object::mode, NULL, TreeViewContext::ob_edit, OB_MODE_PARTICLE_EDIT, TreeViewContext::ob_pose, TreeViewContext::obact, outliner_mode_toggle_fn(), psys_get_current(), TIP_, TSE_SOME_ID, Object::type, TreeStoreElem::type, UI_block_emboss_set(), UI_BTYPE_ICON_TOGGLE, UI_but_disable(), UI_BUT_DRAG_LOCK, UI_but_flag_disable(), UI_but_flag_enable(), UI_but_func_set(), UI_BUT_UNDO, UI_EMBOSS_NONE_OR_STATUS, UI_icon_from_object_mode(), UI_UNIT_X, UI_UNIT_Y, uiDefIconBut(), and TreeElement::ys.
Referenced by outliner_draw_mode_column().
|
static |
Definition at line 1778 of file outliner_draw.c.
References View2D::cur, ID::flag, id, TreeStoreElem::id, ID_IS_OVERRIDE_LIBRARY_REAL, ID_REAL_USERS, LIB_LIB_OVERRIDE_RESYNC_LEFTOVER, LISTBASE_FOREACH, NULL, OL_TOG_USER_BUTS_STATUS, POINTER_AS_UINT, TIP_, TREESTORE, TSE_LIBRARY_OVERRIDE, TSE_LIBRARY_OVERRIDE_BASE, TSELEM_OPEN, TreeStoreElem::type, UI_BTYPE_BUT, UI_BUT_DRAG_LOCK, UI_but_flag_enable(), UI_UNIT_X, UI_UNIT_Y, uiDefIconBut(), ARegion::v2d, rctf::xmax, rctf::ymax, and rctf::ymin.
Referenced by draw_outliner().
|
static |
Definition at line 1008 of file outliner_draw.c.
References RestrictProperties::base_hide_viewport, RestrictPropertiesActive::base_hide_viewport, BKE_view_layer_base_find(), BLI_assert, bPoseChannel::bone, BONE_HIDDEN_A, RestrictProperties::bone_hide_viewport, BONE_UNSELECTABLE, RestrictProperties::collection_hide_render, RestrictPropertiesActive::collection_hide_render, RestrictProperties::collection_hide_select, RestrictPropertiesActive::collection_hide_select, RestrictProperties::collection_hide_viewport, RestrictPropertiesActive::collection_hide_viewport, RestrictProperties::constraint_enable, RestrictPropertiesActive::constraint_enable, View2D::cur, bGPDlayer::flag, ViewLayer::flag, GP_LAYER_HIDE, GP_LAYER_LOCKED, bArmature::id, Object::id, TreeStoreElem::id, Scene::id, ID_OB, if(), RestrictProperties::initialized, RestrictProperties::layer_collection_exclude, RestrictProperties::layer_collection_hide_viewport, RestrictPropertiesActive::layer_collection_hide_viewport, RestrictProperties::layer_collection_holdout, RestrictPropertiesActive::layer_collection_holdout, RestrictProperties::layer_collection_indirect_only, RestrictPropertiesActive::layer_collection_indirect_only, LISTBASE_FOREACH, RestrictProperties::modifier_show_render, RestrictPropertiesActive::modifier_show_render, RestrictProperties::modifier_show_viewport, RestrictPropertiesActive::modifier_show_viewport, NULL, RestrictProperties::object_hide_render, RestrictPropertiesActive::object_hide_render, RestrictProperties::object_hide_select, RestrictPropertiesActive::object_hide_select, RestrictProperties::object_hide_viewport, RestrictPropertiesActive::object_hide_viewport, outliner__base_set_flag_recursive_fn(), outliner__object_set_flag_recursive_fn(), outliner_collection_from_tree_element(), outliner_is_collection_tree_element(), outliner_restrict_columns_width(), outliner_restrict_properties_collection_set(), SpaceOutliner::outlinevis, ptr, restrictbutton_bone_select_fn(), restrictbutton_bone_visibility_fn(), restrictbutton_ebone_select_fn(), restrictbutton_ebone_visibility_fn(), restrictbutton_gp_layer_flag_fn(), restrictbutton_r_lay_fn(), RNA_Bone, RNA_Collection, RNA_Constraint, RNA_id_pointer_create(), RNA_LayerCollection, RNA_Modifier, RNA_Object, RNA_ObjectBase, RNA_pointer_create(), RNA_struct_type_find_property(), scene, scenes__collection_set_flag_recursive_fn(), select(), SpaceOutliner::show_restrict_flags, SO_RESTRICT_ENABLE, SO_RESTRICT_HIDE, SO_RESTRICT_HOLDOUT, SO_RESTRICT_INDIRECT_ONLY, SO_RESTRICT_RENDER, SO_RESTRICT_SELECT, SO_RESTRICT_VIEWPORT, SO_SCENES, SO_VIEW_LAYER, TE_CHILD_NOT_IN_COLLECTION, TIP_, TREESTORE, TSE_CONSTRAINT, TSE_EBONE, TSE_GP_LAYER, TSE_LAYER_COLLECTION, TSE_MODIFIER, TSE_POSE_CHANNEL, TSE_R_LAYER, TSE_SOME_ID, TSELEM_OPEN, TreeStoreElem::type, UI_BTYPE_ICON_TOGGLE, UI_BTYPE_ICON_TOGGLE_N, UI_BUT_DRAG_LOCK, UI_but_drawflag_enable(), UI_but_flag_enable(), UI_but_func_set(), UI_BUT_ICON_REVERSE, UI_BUT_INACTIVE, UI_UNIT_X, UI_UNIT_Y, uiDefIconButBitI(), uiDefIconButBitS(), uiDefIconButR_prop(), ARegion::v2d, V2D_SCROLL_WIDTH, view_layer__collection_set_flag_recursive_fn(), view_layer__layer_collection_set_flag_recursive_fn(), VIEW_LAYER_RENDER, rctf::xmax, rctf::ymax, and rctf::ymin.
Referenced by draw_outliner().
|
static |
Definition at line 1891 of file outliner_draw.c.
References View2D::cur, LISTBASE_FOREACH, NULL, OL_RNA_COL_SIZEX, PROP_ENUM, PROP_POINTER, ptr, RNA_property_type(), TREESTORE, TSE_RNA_ARRAY_ELEM, TSE_RNA_PROPERTY, TSELEM_OPEN, TreeStoreElem::type, UI_BUT_DISABLED, UI_but_flag_enable(), UI_UNIT_Y, uiDefAutoButR(), ARegion::v2d, rctf::ymax, and rctf::ymin.
Referenced by draw_outliner().
|
static |
Definition at line 1863 of file outliner_draw.c.
References View2D::cur, GPU_COMP_F32, GPU_FETCH_FLOAT, GPU_line_width(), GPU_PRIM_LINES, GPU_SHADER_2D_UNIFORM_COLOR, GPU_vertformat_attr_add(), immBegin(), immBindBuiltinProgram(), immEnd(), immUnbindProgram(), immUniformThemeColorShadeAlpha(), immVertex2f(), immVertexFormat(), OL_RNA_COL_SIZEX, pos, TH_BACK, View2D::tot, ARegion::v2d, rctf::ymax, and rctf::ymin.
Referenced by draw_outliner().
|
static |
Definition at line 3434 of file outliner_draw.c.
References View2D::cur, GPU_COMP_F32, GPU_COMP_I32, GPU_FETCH_FLOAT, GPU_FETCH_INT_TO_FLOAT, GPU_PRIM_LINES, GPU_SHADER_2D_UNIFORM_COLOR, GPU_vertformat_attr_add(), immBegin(), immBindBuiltinProgram(), immEnd(), immRecti(), immThemeColorShadeAlpha(), immUnbindProgram(), immVertex2f(), immVertexFormat(), LISTBASE_FOREACH, pos, TH_BACK, TREESTORE, TSE_RNA_STRUCT, TSELEM_OPEN, TreeStoreElem::type, UI_UNIT_Y, ARegion::v2d, and rctf::xmax.
Referenced by outliner_draw_tree().
|
static |
Definition at line 3593 of file outliner_draw.c.
References BLI_rcti_size_x(), C, CLAMP_MIN, GPU_blend(), GPU_BLEND_ALPHA, GPU_scissor(), GPU_scissor_get(), LISTBASE_FOREACH, View2D::mask, OL_Y_OFFSET, outliner_draw_hierarchy_lines(), outliner_draw_highlights(), outliner_draw_struct_marks(), outliner_draw_tree_element(), SpaceOutliner::outlinevis, SO_DATA_API, SO_SCENES, SO_VIEW_LAYER, TE_DRAGGING, View2D::tot, SpaceOutliner::tree, UI_FSTYLE_WIDGET, UI_UNIT_X, UI_UNIT_Y, UNPACK4, ARegion::v2d, ARegion::winy, and rctf::ymax.
Referenced by draw_outliner().
|
static |
Definition at line 3102 of file outliner_draw.c.
References blender::compositor::active, BASE_SELECTED, BKE_view_layer_base_find(), C, View2D::cur, TreeElement::directdata, ELEM, element_should_draw_faded(), ListBase::first, TreeElement::flag, TreeStoreElem::flag, GPU_blend(), GPU_BLEND_ALPHA, GPU_BLEND_NONE, TreeStoreElem::id, ID_OB, ID_SCE, TreeElement::idcode, is_object_data_in_editmode(), LISTBASE_FOREACH, TreeElement::name, NULL, TreeViewContext::obact, OL_DRAWSEL_ACTIVE, OL_DRAWSEL_NONE, outliner_draw_active_indicator(), outliner_draw_iconrow(), outliner_icon_background_colors(), outliner_set_coord_tree_element(), RNA_struct_is_ID(), TreeElement::rnaptr, TreeElement::subtree, TE_ACTIVE, TE_DRAGGING, TE_LAZY_CLOSED, TH_ACTIVE_OBJECT, TH_BACK, TH_EDITED_OBJECT, TH_SELECTED_OBJECT, TH_TEXT, tree_element_active_state_get(), tree_element_type_active_state_get(), TREESTORE, TSE_HIGHLIGHTED_ICON, TSE_ID_BASE, TSE_LAYER_COLLECTION, TSE_R_LAYER, TSE_RNA_ARRAY_ELEM, TSE_RNA_PROPERTY, TSE_RNA_STRUCT, TSE_SOME_ID, TSE_TEXTBUT, TSE_VIEW_COLLECTION_BASE, tselem_draw_icon(), TSELEM_OPEN, TreeStoreElem::type, PointerRNA::type, UI_fontstyle_draw_simple(), UI_fontstyle_string_width(), UI_GetThemeColor3ubv(), UI_GetThemeColor4fv(), UI_GetThemeColor4ubv(), UI_GetThemeColorBlend3ubv(), UI_icon_draw_alpha(), UI_icon_from_library(), UI_UNIT_X, UI_UNIT_Y, ARegion::v2d, TreeViewContext::view_layer, TreeElement::xend, rctf::xmax, TreeElement::xs, rctf::ymin, and TreeElement::ys.
Referenced by outliner_draw_tree().
|
static |
Definition at line 1709 of file outliner_draw.c.
References BLI_str_format_int_grouped(), View2D::cur, ID::flag, id, TreeStoreElem::id, ID_IS_LINKED, LIB_FAKEUSER, LISTBASE_FOREACH, NULL, OL_TOG_USER_BUTS_STATUS, OL_TOG_USER_BUTS_USERS, restrictbutton_id_user_toggle(), TIP_, TREESTORE, TSE_SOME_ID, TSELEM_OPEN, TreeStoreElem::type, UI_BTYPE_BUT, UI_BTYPE_ICON_TOGGLE, UI_BUT_DISABLED, UI_BUT_DRAG_LOCK, UI_but_flag_enable(), UI_but_func_set(), UI_UNIT_X, UI_UNIT_Y, uiDefBut(), uiDefIconButBitS(), ID::us, ARegion::v2d, rctf::xmax, rctf::ymax, and rctf::ymin.
Referenced by draw_outliner().
Definition at line 2826 of file outliner_draw.c.
References copy_v3_v3(), TH_TEXT, and UI_GetThemeColor4fv().
Referenced by outliner_draw_iconrow_doit(), and outliner_draw_tree_element().
|
static |
Create either a RNA_LayerCollection or a RNA_Collection pointer.
Definition at line 332 of file outliner_draw.c.
References Collection::id, Scene::id, ptr, RNA_id_pointer_create(), RNA_LayerCollection, RNA_pointer_create(), and scene.
Referenced by outliner_collection_is_isolated(), outliner_collection_isolate_flag(), outliner_collection_set_flag_recursive(), and outliner_collection_set_flag_recursive_fn().
|
static |
Definition at line 2023 of file outliner_draw.c.
References BLI_assert, C, wmEvent::ctrl, CTX_wm_space_outliner(), CTX_wm_window(), Object::data, wmWindow::eventstate, GS, TreeStoreElem::id, ID_OB, ID::name, NULL, TreeViewContext::obact, outliner_find_tree_element(), outliner_item_mode_toggle(), outliner_viewcontext_init(), and SpaceOutliner::tree.
Referenced by outliner_draw_mode_column_toggle().
|
static |
Definition at line 254 of file outliner_draw.c.
References BKE_layer_collection_sync(), BKE_main_collection_sync_remap(), BKE_object_is_child_recursive(), BKE_view_layer_base_find(), C, CTX_data_main(), CTX_data_scene(), CTX_data_view_layer(), CTX_wm_window(), data, DEG_id_tag_update(), DEG_relations_tag_update(), wmWindow::eventstate, ListBase::first, Object::id, Scene::id, ID_RECALC_BASE_FLAGS, ID_RECALC_COPY_ON_WRITE, NULL, Base::object, Main::objects, ptr, RNA_id_pointer_create(), RNA_Object, RNA_ObjectBase, RNA_pointer_create(), RNA_property_boolean_get(), RNA_property_boolean_set(), RNA_struct_type_find_property(), scene, and wmEvent::shift.
Referenced by outliner__base_set_flag_recursive_fn(), and outliner__object_set_flag_recursive_fn().
|
static |
Definition at line 975 of file outliner_draw.c.
References COLLECTION_IS_MASTER, TreeElement::directdata, Scene::id, NULL, outliner_collection_from_tree_element(), outliner_restrict_properties_enable_collection_set(), outliner_restrict_properties_enable_layer_collection_set(), RNA_id_pointer_create(), RNA_LayerCollection, RNA_pointer_create(), scene, TREESTORE, TSE_LAYER_COLLECTION, and TreeStoreElem::type.
Referenced by outliner_draw_restrictbuts().
|
static |
Definition at line 893 of file outliner_draw.c.
References RestrictPropertiesActive::base_hide_viewport, RestrictProperties::collection_hide_render, RestrictPropertiesActive::collection_hide_render, RestrictProperties::collection_hide_select, RestrictPropertiesActive::collection_hide_select, RestrictProperties::collection_hide_viewport, RestrictPropertiesActive::collection_hide_viewport, RestrictPropertiesActive::constraint_enable, RestrictPropertiesActive::layer_collection_hide_viewport, RestrictPropertiesActive::layer_collection_holdout, RestrictPropertiesActive::layer_collection_indirect_only, RestrictPropertiesActive::modifier_show_render, RestrictPropertiesActive::modifier_show_viewport, RestrictPropertiesActive::object_hide_render, RestrictPropertiesActive::object_hide_select, RestrictPropertiesActive::object_hide_viewport, and RNA_property_boolean_get().
Referenced by outliner_restrict_properties_collection_set(), and outliner_restrict_properties_enable_layer_collection_set().
|
static |
Definition at line 931 of file outliner_draw.c.
References RestrictPropertiesActive::base_hide_viewport, RestrictPropertiesActive::collection_hide_render, RestrictPropertiesActive::collection_hide_select, RestrictPropertiesActive::collection_hide_viewport, RestrictProperties::layer_collection_exclude, RestrictPropertiesActive::layer_collection_exclude, RestrictProperties::layer_collection_hide_viewport, RestrictPropertiesActive::layer_collection_hide_viewport, RestrictProperties::layer_collection_holdout, RestrictPropertiesActive::layer_collection_holdout, RestrictProperties::layer_collection_indirect_only, RestrictPropertiesActive::layer_collection_indirect_only, RestrictPropertiesActive::object_hide_select, outliner_restrict_properties_enable_collection_set(), and RNA_property_boolean_get().
Referenced by outliner_restrict_properties_collection_set().
|
static |
Definition at line 3053 of file outliner_draw.c.
References TreeElement::flag, LISTBASE_FOREACH, TreeElement::subtree, TE_ICONROW, TE_ICONROW_MERGED, UI_UNIT_X, TreeElement::xend, TreeElement::xs, and TreeElement::ys.
Referenced by outliner_draw_tree_element().
| void outliner_tree_dimensions | ( | 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().
|
static |
Definition at line 87 of file outliner_draw.c.
References height, LISTBASE_FOREACH, MAX2, NULL, TREESTORE, TSELEM_OPEN, UI_UNIT_Y, and width.
Referenced by outliner_tree_dimensions().
|
static |
Definition at line 3718 of file outliner_draw.c.
References OL_Y_OFFSET, outliner_width(), UI_view2d_totRect_set(), ARegion::v2d, and V2D_SCROLL_HEIGHT.
Referenced by draw_outliner().
|
static |
Definition at line 3708 of file outliner_draw.c.
References OL_RNA_COL_SIZEX, outliner_data_api_buttons_start_x(), SpaceOutliner::outlinevis, SO_DATA_API, and UI_DPI_FAC.
Referenced by outliner_update_viewable_area().
|
static |
Definition at line 186 of file outliner_draw.c.
References BONE_ROOTSEL, BONE_SELECTED, BONE_TIPSEL, BONE_UNSELECTABLE, C, CTX_wm_window(), wmWindow::eventstate, Bone::flag, NC_OBJECT, ND_POSE, NULL, restrictbutton_recursive_bone(), wmEvent::shift, and WM_event_add_notifier().
Referenced by outliner_draw_restrictbuts().
|
static |
Definition at line 177 of file outliner_draw.c.
References BONE_HIDDEN_P, C, CTX_wm_window(), wmWindow::eventstate, Bone::flag, restrictbutton_recursive_bone(), and wmEvent::shift.
Referenced by outliner_draw_restrictbuts().
|
static |
Definition at line 200 of file outliner_draw.c.
References BONE_ROOTSEL, BONE_SELECTED, BONE_TIPSEL, BONE_UNSELECTABLE, C, CTX_wm_window(), wmWindow::eventstate, EditBone::flag, NC_OBJECT, ND_POSE, NULL, restrictbutton_recursive_ebone(), wmEvent::shift, and WM_event_add_notifier().
Referenced by outliner_draw_restrictbuts().
|
static |
Definition at line 217 of file outliner_draw.c.
References BONE_HIDDEN_A, BONE_ROOTSEL, BONE_SELECTED, BONE_TIPSEL, C, CTX_wm_window(), wmWindow::eventstate, EditBone::flag, NC_OBJECT, ND_POSE, NULL, restrictbutton_recursive_ebone(), wmEvent::shift, and WM_event_add_notifier().
Referenced by outliner_draw_restrictbuts().
|
static |
Definition at line 232 of file outliner_draw.c.
References C, DEG_id_tag_update(), ID_RECALC_GEOMETRY, NA_EDITED, NC_GPENCIL, ND_DATA, NULL, and WM_event_add_notifier().
Referenced by outliner_draw_restrictbuts().
|
static |
Definition at line 240 of file outliner_draw.c.
References BLI_assert, ID::flag, id, id_us_min(), id_us_plus(), LIB_FAKEUSER, and NULL.
Referenced by outliner_draw_userbuts().
|
static |
Definition at line 172 of file outliner_draw.c.
References C, NC_SCENE, ND_RENDER_OPTIONS, and WM_event_add_notifier().
Referenced by outliner_draw_restrictbuts().
|
static |
Definition at line 157 of file outliner_draw.c.
References BONE_ROOTSEL, BONE_SELECTED, BONE_TIPSEL, Bone::childbase, ListBase::first, Bone::flag, and Bone::next.
Referenced by restrictbutton_bone_select_fn(), and restrictbutton_bone_visibility_fn().
|
static |
Definition at line 137 of file outliner_draw.c.
References BONE_ROOTSEL, BONE_SELECTED, BONE_TIPSEL, ED_armature_ebone_is_child_recursive(), bArmature::edbo, ListBase::first, EditBone::flag, and EditBone::next.
Referenced by restrictbutton_ebone_select_fn(), and restrictbutton_ebone_visibility_fn().
|
static |
Collection properties called from the Scenes mode. Change the collection children but no objects.
Definition at line 656 of file outliner_draw.c.
References C, NULL, and outliner_collection_set_flag_recursive_fn().
Referenced by outliner_draw_restrictbuts().
|
static |
Definition at line 3323 of file outliner_draw.c.
References ID_OB, LISTBASE_FOREACH, TREESTORE, TSE_SOME_ID, and TreeStoreElem::type.
Referenced by outliner_draw_hierarchy_lines_recursive().
| 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().
| 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().
|
static |
Definition at line 2707 of file outliner_draw.c.
References alpha, bTheme::collection_color, COLLECTION_COLOR_NONE, ThemeCollectionColor::color, Collection::color_tag, data, ICON_DEFAULT_HEIGHT, ID_IS_LINKED, NULL, outliner_collection_from_tree_element(), outliner_is_collection_tree_element(), tree_element_get_icon(), UI_BTYPE_LABEL, UI_GetTheme(), UI_icon_draw_ex(), UI_icon_get_theme_color(), UI_UNIT_X, UI_UNIT_Y, uiDefIconBut(), x, and y.
Referenced by outliner_draw_iconrow_doit(), and outliner_draw_tree_element().
|
static |
Collection properties called from the ViewLayer mode. Change the (non-excluded) collection children, and the objects nested to them all.
Definition at line 644 of file outliner_draw.c.
References C, LayerCollection::collection, and outliner_collection_set_flag_recursive_fn().
Referenced by outliner_draw_restrictbuts().
|
static |
Layer collection properties called from the ViewLayer mode. Change the (non-excluded) collection children, and the objects nested to them all.
Definition at line 631 of file outliner_draw.c.
References C, NULL, and outliner_collection_set_flag_recursive_fn().
Referenced by outliner_draw_restrictbuts().