Blender V2.61 - r43446
|
#include <string.h>
#include <stdlib.h>
#include "MEM_guardedalloc.h"
#include "DNA_anim_types.h"
#include "DNA_armature_types.h"
#include "DNA_camera_types.h"
#include "DNA_group_types.h"
#include "DNA_key_types.h"
#include "DNA_lamp_types.h"
#include "DNA_material_types.h"
#include "DNA_mesh_types.h"
#include "DNA_meta_types.h"
#include "DNA_particle_types.h"
#include "DNA_scene_types.h"
#include "DNA_world_types.h"
#include "DNA_sequence_types.h"
#include "DNA_object_types.h"
#include "BLI_blenlib.h"
#include "BLI_utildefines.h"
#include "BKE_animsys.h"
#include "BKE_context.h"
#include "BKE_deform.h"
#include "BKE_depsgraph.h"
#include "BKE_fcurve.h"
#include "BKE_global.h"
#include "BKE_group.h"
#include "BKE_library.h"
#include "BKE_main.h"
#include "BKE_modifier.h"
#include "BKE_report.h"
#include "BKE_scene.h"
#include "BKE_sequencer.h"
#include "BLI_ghash.h"
#include "ED_armature.h"
#include "ED_object.h"
#include "ED_screen.h"
#include "ED_util.h"
#include "WM_api.h"
#include "WM_types.h"
#include "BIF_gl.h"
#include "BIF_glutil.h"
#include "UI_interface.h"
#include "UI_interface_icons.h"
#include "UI_resources.h"
#include "UI_view2d.h"
#include "RNA_access.h"
#include "RNA_define.h"
#include "outliner_intern.h"
Go to the source code of this file.
Classes | |
struct | DrawIconArg |
Defines | |
#define | OL_KM_KEYBOARD 0 |
#define | OL_KM_MOUSE 1 |
#define | OL_KM_TWEAK 2 |
#define | OL_KM_SPECIALS 3 |
Functions | |
static void | outliner_height (SpaceOops *soops, ListBase *lb, int *h) |
static void | outliner_rna_width (SpaceOops *soops, ListBase *lb, int *w, int startx) |
static void | restrictbutton_view_cb (bContext *C, void *poin, void *poin2) |
static void | restrictbutton_sel_cb (bContext *C, void *poin, void *poin2) |
static void | restrictbutton_rend_cb (bContext *C, void *poin, void *UNUSED(poin2)) |
static void | restrictbutton_r_lay_cb (bContext *C, void *poin, void *UNUSED(poin2)) |
static void | restrictbutton_modifier_cb (bContext *C, void *UNUSED(poin), void *poin2) |
static void | restrictbutton_bone_cb (bContext *C, void *UNUSED(poin), void *poin2) |
static void | restrictbutton_ebone_cb (bContext *C, void *UNUSED(poin), void *poin2) |
static int | group_restrict_flag (Group *gr, int flag) |
static int | group_select_flag (Group *gr) |
void | restrictbutton_gr_restrict_flag (void *poin, void *poin2, int flag) |
static void | restrictbutton_gr_restrict_view (bContext *C, void *poin, void *poin2) |
static void | restrictbutton_gr_restrict_select (bContext *C, void *poin, void *poin2) |
static void | restrictbutton_gr_restrict_render (bContext *C, void *poin, void *poin2) |
static void | namebutton_cb (bContext *C, void *tsep, char *oldname) |
static void | outliner_draw_restrictbuts (uiBlock *block, Scene *scene, ARegion *ar, SpaceOops *soops, ListBase *lb) |
static void | outliner_draw_rnacols (ARegion *ar, int sizex) |
static void | outliner_draw_rnabuts (uiBlock *block, Scene *scene, ARegion *ar, SpaceOops *soops, int sizex, ListBase *lb) |
static void | operator_call_cb (struct bContext *UNUSED(C), void *arg_kmi, void *arg2) |
static void | operator_search_cb (const struct bContext *UNUSED(C), void *UNUSED(arg_kmi), const char *str, uiSearchItems *items) |
static uiBlock * | operator_search_menu (bContext *C, ARegion *ar, void *arg_kmi) |
static short | keymap_menu_type (short type) |
static const char * | keymap_type_menu (void) |
static const char * | keymap_mouse_menu (void) |
static const char * | keymap_tweak_menu (void) |
static const char * | keymap_tweak_dir_menu (void) |
static void | keymap_type_cb (bContext *C, void *kmi_v, void *UNUSED(arg_v)) |
static void | outliner_draw_keymapbuts (uiBlock *block, ARegion *ar, SpaceOops *soops, ListBase *lb) |
static void | outliner_buttons (const bContext *C, uiBlock *block, ARegion *ar, SpaceOops *soops, ListBase *lb) |
static void | tselem_draw_icon_uibut (struct DrawIconArg *arg, int icon) |
static void | tselem_draw_icon (uiBlock *block, int xmax, float x, float y, TreeStoreElem *tselem, TreeElement *te, float alpha) |
static void | outliner_draw_iconrow (bContext *C, uiBlock *block, Scene *scene, SpaceOops *soops, ListBase *lb, int level, int xmax, int *offsx, int ys) |
static void | outliner_set_coord_tree_element (SpaceOops *soops, TreeElement *te, int startx, int *starty) |
static void | outliner_draw_tree_element (bContext *C, uiBlock *block, Scene *scene, ARegion *ar, SpaceOops *soops, TreeElement *te, int startx, int *starty) |
static void | outliner_draw_hierarchy (SpaceOops *soops, ListBase *lb, int startx, int *starty) |
static void | outliner_draw_struct_marks (ARegion *ar, SpaceOops *soops, ListBase *lb, int *starty) |
static void | outliner_draw_selection (ARegion *ar, SpaceOops *soops, ListBase *lb, int *starty) |
static void | outliner_draw_tree (bContext *C, uiBlock *block, Scene *scene, ARegion *ar, SpaceOops *soops) |
static void | outliner_back (ARegion *ar) |
static void | outliner_draw_restrictcols (ARegion *ar) |
void | draw_outliner (const bContext *C) |
Definition in file outliner_draw.c.
#define OL_KM_KEYBOARD 0 |
Definition at line 648 of file outliner_draw.c.
Referenced by keymap_menu_type(), keymap_type_cb(), keymap_type_menu(), and outliner_draw_keymapbuts().
#define OL_KM_MOUSE 1 |
Definition at line 649 of file outliner_draw.c.
Referenced by keymap_menu_type(), keymap_type_cb(), keymap_type_menu(), and outliner_draw_keymapbuts().
#define OL_KM_SPECIALS 3 |
Definition at line 651 of file outliner_draw.c.
Referenced by keymap_type_cb().
#define OL_KM_TWEAK 2 |
Definition at line 650 of file outliner_draw.c.
Referenced by keymap_menu_type(), keymap_type_cb(), keymap_type_menu(), and outliner_draw_keymapbuts().
void draw_outliner | ( | const bContext * | C | ) |
Definition at line 1591 of file outliner_draw.c.
References DrawIconArg::block, CTX_data_main(), CTX_data_scene(), CTX_wm_region(), CTX_wm_space_outliner(), ELEM, ELEM3, View2D::flag, SpaceOops::flag, MAX2, OL_RNA_COL_SIZEX, OL_RNA_COL_SPACEX, OL_RNA_COLX, OL_TOGW, OL_Y_OFFSET, outliner_back(), outliner_build_tree(), outliner_buttons(), outliner_draw_keymapbuts(), outliner_draw_restrictbuts(), outliner_draw_restrictcols(), outliner_draw_rnabuts(), outliner_draw_rnacols(), outliner_draw_tree(), outliner_height(), outliner_rna_width(), SpaceOops::outlinevis, SO_DATABLOCKS, SO_HIDE_RESTRICTCOLS, SO_KEYMAP, SO_TREESTORE_REDRAW, SO_USERDEF, SpaceOops::storeflag, SpaceOops::tree, UI_EMBOSS, UI_view2d_totRect_set(), UI_view2d_view_ortho(), uiBeginBlock(), uiDrawBlock(), uiEndBlock(), ARegion::v2d, V2D_PIXELOFS_X, V2D_PIXELOFS_Y, and V2D_SCROLL_HEIGHT.
Referenced by outliner_main_area_draw().
static int group_restrict_flag | ( | Group * | gr, |
int | flag | ||
) | [static] |
Definition at line 216 of file outliner_draw.c.
References ListBase::first, Group::gobject, GroupObject::next, GroupObject::ob, and Object::restrictflag.
Referenced by outliner_draw_restrictbuts(), and restrictbutton_gr_restrict_flag().
static int group_select_flag | ( | Group * | gr | ) | [static] |
Definition at line 228 of file outliner_draw.c.
References ListBase::first, Object::flag, Group::gobject, GroupObject::next, GroupObject::ob, and SELECT.
Referenced by outliner_draw_tree_element().
static short keymap_menu_type | ( | short | type | ) | [static] |
Definition at line 653 of file outliner_draw.c.
References ISKEYBOARD, ISMOUSE, ISTWEAK, OL_KM_KEYBOARD, OL_KM_MOUSE, and OL_KM_TWEAK.
Referenced by keymap_type_cb(), and outliner_draw_keymapbuts().
static const char* keymap_mouse_menu | ( | void | ) | [static] |
Definition at line 675 of file outliner_draw.c.
References ACTIONMOUSE, BUTTON4MOUSE, BUTTON5MOUSE, LEFTMOUSE, MIDDLEMOUSE, MOUSEMOVE, MOUSEPAN, MOUSEROTATE, MOUSEZOOM, RIGHTMOUSE, SELECTMOUSE, STRINGIFY, WHEELDOWNMOUSE, WHEELINMOUSE, WHEELOUTMOUSE, and WHEELUPMOUSE.
Referenced by outliner_draw_keymapbuts().
static const char* keymap_tweak_dir_menu | ( | void | ) | [static] |
Definition at line 715 of file outliner_draw.c.
References EVT_GESTURE_E, EVT_GESTURE_N, EVT_GESTURE_NE, EVT_GESTURE_NW, EVT_GESTURE_S, EVT_GESTURE_SE, EVT_GESTURE_SW, EVT_GESTURE_W, KM_ANY, and STRINGIFY.
Referenced by outliner_draw_keymapbuts().
static const char* keymap_tweak_menu | ( | void | ) | [static] |
Definition at line 701 of file outliner_draw.c.
References EVT_TWEAK_A, EVT_TWEAK_L, EVT_TWEAK_M, EVT_TWEAK_R, EVT_TWEAK_S, and STRINGIFY.
Referenced by outliner_draw_keymapbuts().
static void keymap_type_cb | ( | bContext * | C, |
void * | kmi_v, | ||
void * | UNUSEDarg_v | ||
) | [static] |
Definition at line 734 of file outliner_draw.c.
References AKEY, CTX_wm_region(), ED_region_tag_redraw(), EVT_TWEAK_L, keymap_menu_type(), KM_ANY, KM_PRESS, LEFTMOUSE, wmKeyMapItem::maptype, OL_KM_KEYBOARD, OL_KM_MOUSE, OL_KM_SPECIALS, OL_KM_TWEAK, wmKeyMapItem::type, and wmKeyMapItem::val.
Referenced by outliner_draw_keymapbuts().
static const char* keymap_type_menu | ( | void | ) | [static] |
Definition at line 662 of file outliner_draw.c.
References OL_KM_KEYBOARD, OL_KM_MOUSE, OL_KM_TWEAK, and STRINGIFY.
Referenced by outliner_draw_keymapbuts().
static void namebutton_cb | ( | bContext * | C, |
void * | tsep, | ||
char * | oldname | ||
) | [static] |
Definition at line 285 of file outliner_draw.c.
References bPose::agroups, BKE_library_filepath_set(), BKE_reportf(), BLI_exists(), BLI_path_abs(), BLI_strncpy(), BLI_uniquename(), CTX_data_edit_object(), CTX_data_scene(), CTX_wm_reports(), CTX_wm_space_outliner(), Object::data, defgroup_unique_name(), TreeElement::directdata, ED_armature_bone_rename(), bArmature::edbo, FILE_MAX, TreeStoreElem::flag, G, GS, TreeStoreElem::id, ID_IM, ID_LI, ID_MA, ID_SCE, ID_TE, TreeElement::idcode, NA_RENAME, bPoseChannel::name, Bone::name, EditBone::name, Library::name, ID::name, NC_ID, NC_IMAGE, NC_MATERIAL, NC_OBJECT, NC_SCENE, NC_TEXTURE, ND_POSE, NULL, OBACT, outliner_find_tse(), Object::pose, RPT_ERROR, test_idbutton(), tree_element_active(), SpaceOops::treestore, TSE_BONE, TSE_DEFGROUP, TSE_EBONE, TSE_NLA_ACTION, TSE_POSE_CHANNEL, TSE_POSEGRP, TSE_R_LAYER, TSE_TEXTBUT, TreeStoreElem::type, and WM_event_add_notifier().
Referenced by outliner_buttons().
static void operator_call_cb | ( | struct bContext * | UNUSEDC, |
void * | arg_kmi, | ||
void * | arg2 | ||
) | [static] |
Definition at line 582 of file outliner_draw.c.
References BLI_strncpy(), wmOperatorType::idname, wmKeyMapItem::idname, and OP_MAX_TYPENAME.
Referenced by operator_search_menu().
static void operator_search_cb | ( | const struct bContext * | UNUSEDC, |
void * | UNUSEDarg_kmi, | ||
const char * | str, | ||
uiSearchItems * | items | ||
) | [static] |
Definition at line 591 of file outliner_draw.c.
References BLI_ghashIterator_free(), BLI_ghashIterator_getValue(), BLI_ghashIterator_isDone(), BLI_ghashIterator_step(), BLI_strcasestr(), wmOperatorType::idname, OP_MAX_TYPENAME, uiSearchItemAdd(), WM_operator_py_idname(), and WM_operatortype_iter().
Referenced by operator_search_menu().
Definition at line 612 of file outliner_draw.c.
References CTX_wm_window(), wmWindow::eventstate, EVT_BUT_OPEN, FALSE, wmKeyMapItem::idname, KM_PRESS, LABEL, NULL, OP_MAX_TYPENAME, operator_call_cb(), operator_search_cb(), UI_BLOCK_LOOP, UI_BLOCK_REDRAW, UI_BLOCK_RET_1, UI_DOWN, UI_EMBOSS, UI_UNIT_Y, uiBeginBlock(), uiBlockSetDirection(), uiBlockSetFlag(), uiBoundsBlock(), uiButSetSearchFunc(), uiDefBut(), uiDefSearchBut(), uiEndBlock(), uiSearchBoxhHeight(), wm_event_add(), and WM_operatortype_find().
Referenced by outliner_draw_keymapbuts().
static void outliner_back | ( | ARegion * | ar | ) | [static] |
Definition at line 1536 of file outliner_draw.c.
References View2D::cur, OL_Y_OFFSET, TH_BACK, View2D::tot, UI_ThemeColorShade(), UI_UNIT_Y, ARegion::v2d, V2D_SCROLL_WIDTH, rctf::xmax, rctf::ymax, and rctf::ymin.
Referenced by draw_outliner().
static void outliner_buttons | ( | const bContext * | C, |
uiBlock * | block, | ||
ARegion * | ar, | ||
SpaceOops * | soops, | ||
ListBase * | lb | ||
) | [static] |
Definition at line 840 of file outliner_draw.c.
References View2D::cur, ListBase::first, TreeStoreElem::flag, GS, TreeStoreElem::id, ID_LI, len(), MAX_ID_NAME, ID::name, TreeElement::name, namebutton_cb(), TreeElement::next, OL_NAMEBUTTON, TreeElement::subtree, TEX, TREESTORE, TSE_EBONE, TSE_MODIFIER, TSE_POSE_BASE, TSE_TEXTBUT, TSELEM_OPEN, TreeStoreElem::type, UI_GetStringWidth(), UI_UNIT_X, UI_UNIT_Y, uiButActiveOnly(), uiButSetRenameFunc(), uiDefBut(), ARegion::v2d, rctf::xmax, TreeElement::xs, rctf::ymax, rctf::ymin, and TreeElement::ys.
Referenced by draw_outliner().
static void outliner_draw_hierarchy | ( | SpaceOops * | soops, |
ListBase * | lb, | ||
int | startx, | ||
int * | starty | ||
) | [static] |
Definition at line 1425 of file outliner_draw.c.
References ListBase::first, ID_OB, ID_SCE, TreeElement::idcode, ListBase::last, TreeElement::next, NULL, TreeElement::parent, TreeElement::subtree, TREESTORE, TSELEM_OPEN, TreeStoreElem::type, UI_UNIT_X, and UI_UNIT_Y.
Referenced by outliner_draw_tree().
static void outliner_draw_iconrow | ( | bContext * | C, |
uiBlock * | block, | ||
Scene * | scene, | ||
SpaceOops * | soops, | ||
ListBase * | lb, | ||
int | level, | ||
int | xmax, | ||
int * | offsx, | ||
int | ys | ||
) | [static] |
Definition at line 1171 of file outliner_draw.c.
References Object::data, ListBase::first, TreeElement::flag, TreeStoreElem::id, ID_OB, TreeElement::idcode, TreeElement::next, NULL, OBACT, Scene::obedit, TreeElement::subtree, TE_ICONROW, tree_element_active(), tree_element_type_active(), TREESTORE, TSE_R_LAYER, tselem_draw_icon(), TreeStoreElem::type, UI_CNR_ALL, UI_UNIT_X, UI_UNIT_Y, uiRoundBox(), uiSetRoundBox(), TreeElement::xend, TreeElement::xs, and TreeElement::ys.
Referenced by outliner_draw_tree_element().
static void outliner_draw_keymapbuts | ( | uiBlock * | block, |
ARegion * | ar, | ||
SpaceOops * | soops, | ||
ListBase * | lb | ||
) | [static] |
Definition at line 761 of file outliner_draw.c.
References wmKeyMapItem::alt, wmKeyMapItem::ctrl, View2D::cur, PointerRNA::data, TreeElement::directdata, ListBase::first, keymap_menu_type(), keymap_mouse_menu(), keymap_tweak_dir_menu(), keymap_tweak_menu(), keymap_type_cb(), keymap_type_menu(), wmKeyMapItem::keymodifier, LABEL, wmKeyMapItem::maptype, MENU, TreeElement::next, NULL, OL_KM_KEYBOARD, OL_KM_MOUSE, OL_KM_TWEAK, operator_search_menu(), OPTION, wmKeyMapItem::oskey, wmKeyMapItem::propvalue, wmKeyMapItem::ptr, wmKeyMapItem::shift, str, TreeElement::subtree, TREESTORE, TSE_KEYMAP_ITEM, TSELEM_OPEN, wmKeyMapItem::type, TreeStoreElem::type, UI_EMBOSST, UI_UNIT_X, UI_UNIT_Y, uiBlockSetEmboss(), uiButSetFunc(), uiDefBlockBut(), uiDefBut(), uiDefButS(), uiDefKeyevtButS(), ARegion::v2d, wmKeyMapItem::val, rctf::ymax, rctf::ymin, and TreeElement::ys.
Referenced by draw_outliner().
static void outliner_draw_restrictbuts | ( | uiBlock * | block, |
Scene * | scene, | ||
ARegion * | ar, | ||
SpaceOops * | soops, | ||
ListBase * | lb | ||
) | [static] |
Definition at line 400 of file outliner_draw.c.
References bPoseChannel::bone, BONE_HIDDEN_A, BONE_HIDDEN_P, BONE_UNSELECTABLE, BUT, View2D::cur, TreeElement::directdata, ELEM8, eModifierMode_Realtime, eModifierMode_Render, ListBase::first, EditBone::flag, group_restrict_flag(), ICONTOG, ICONTOGN, TreeStoreElem::id, ID_GR, ID_OB, TreeElement::idcode, ModifierData::mode, TreeElement::next, TreeStoreElem::nr, NULL, OB_RESTRICT_RENDER, OB_RESTRICT_SELECT, OB_RESTRICT_VIEW, OL_TOG_RESTRICT_RENDERX, OL_TOG_RESTRICT_SELECTX, OL_TOG_RESTRICT_VIEWX, restrictbutton_bone_cb(), restrictbutton_ebone_cb(), restrictbutton_gr_restrict_render(), restrictbutton_gr_restrict_select(), restrictbutton_gr_restrict_view(), restrictbutton_modifier_cb(), restrictbutton_r_lay_cb(), restrictbutton_rend_cb(), restrictbutton_sel_cb(), restrictbutton_view_cb(), RNA_Object, RNA_pointer_create(), SCE_LAY_DISABLE, SCE_PASS_AO, SCE_PASS_EMIT, SCE_PASS_ENVIRONMENT, SCE_PASS_INDIRECT, SCE_PASS_REFLECT, SCE_PASS_REFRACT, SCE_PASS_SHADOW, SCE_PASS_SPEC, TreeElement::subtree, TOG, TREESTORE, TSE_EBONE, TSE_MODIFIER, TSE_POSE_CHANNEL, TSE_R_LAYER, TSE_R_PASS, TSELEM_OPEN, TreeStoreElem::type, UI_EMBOSS, UI_EMBOSSN, UI_UNIT_X, UI_UNIT_Y, uiBlockSetEmboss(), uiButSetFunc(), uiDefIconBut(), uiDefIconButBitI(), uiDefIconButR(), ARegion::v2d, rctf::xmax, rctf::ymax, rctf::ymin, and TreeElement::ys.
Referenced by draw_outliner().
static void outliner_draw_restrictcols | ( | ARegion * | ar | ) | [static] |
Definition at line 1550 of file outliner_draw.c.
References View2D::cur, fdrawline(), OL_TOG_RESTRICT_RENDERX, OL_TOG_RESTRICT_SELECTX, OL_TOG_RESTRICT_VIEWX, OL_TOGW, OL_Y_OFFSET, TH_BACK, View2D::tot, UI_ThemeColor(), UI_ThemeColorShade(), UI_ThemeColorShadeAlpha(), UI_UNIT_Y, ARegion::v2d, V2D_SCROLL_HEIGHT, V2D_SCROLL_WIDTH, rctf::xmax, rctf::ymax, and rctf::ymin.
Referenced by draw_outliner().
static void outliner_draw_rnabuts | ( | uiBlock * | block, |
Scene * | scene, | ||
ARegion * | ar, | ||
SpaceOops * | soops, | ||
int | sizex, | ||
ListBase * | lb | ||
) | [static] |
Definition at line 551 of file outliner_draw.c.
References View2D::cur, TreeElement::directdata, ListBase::first, TreeElement::index, TreeElement::next, OL_RNA_COL_SIZEX, PROP_POINTER, RNA_property_type(), TreeElement::rnaptr, TreeElement::subtree, TREESTORE, TSE_RNA_ARRAY_ELEM, TSE_RNA_PROPERTY, TSELEM_OPEN, TreeStoreElem::type, UI_EMBOSST, UI_UNIT_Y, uiBlockSetEmboss(), uiDefAutoButR(), ARegion::v2d, rctf::ymax, rctf::ymin, and TreeElement::ys.
Referenced by draw_outliner().
static void outliner_draw_rnacols | ( | ARegion * | ar, |
int | sizex | ||
) | [static] |
Definition at line 530 of file outliner_draw.c.
References View2D::cur, fdrawline(), OL_RNA_COL_SIZEX, TH_BACK, View2D::tot, UI_ThemeColorShadeAlpha(), ARegion::v2d, V2D_SCROLL_HEIGHT, rctf::ymax, and rctf::ymin.
Referenced by draw_outliner().
static void outliner_draw_selection | ( | ARegion * | ar, |
SpaceOops * | soops, | ||
ListBase * | lb, | ||
int * | starty | ||
) | [static] |
Definition at line 1481 of file outliner_draw.c.
References View2D::cur, ListBase::first, TreeStoreElem::flag, TreeElement::next, TreeElement::subtree, TREESTORE, TSE_SELECTED, TSELEM_OPEN, UI_UNIT_Y, ARegion::v2d, and rctf::xmax.
Referenced by outliner_draw_tree().
static void outliner_draw_struct_marks | ( | ARegion * | ar, |
SpaceOops * | soops, | ||
ListBase * | lb, | ||
int * | starty | ||
) | [static] |
Definition at line 1459 of file outliner_draw.c.
References View2D::cur, fdrawline(), ListBase::first, TreeElement::next, TreeElement::subtree, TREESTORE, TSE_RNA_STRUCT, TSELEM_OPEN, TreeStoreElem::type, UI_UNIT_Y, ARegion::v2d, V2D_SCROLL_WIDTH, and rctf::xmax.
Referenced by outliner_draw_tree().
static void outliner_draw_tree | ( | bContext * | C, |
uiBlock * | block, | ||
Scene * | scene, | ||
ARegion * | ar, | ||
SpaceOops * | soops | ||
) | [static] |
Definition at line 1499 of file outliner_draw.c.
References ELEM, ListBase::first, TreeElement::next, OL_Y_OFFSET, outliner_draw_hierarchy(), outliner_draw_selection(), outliner_draw_struct_marks(), outliner_draw_tree_element(), SpaceOops::outlinevis, SO_DATABLOCKS, SO_USERDEF, TH_BACK, TH_TEXT, View2D::tot, SpaceOops::tree, UI_GetThemeColor3fv(), UI_ThemeColorBlend(), UI_ThemeColorShadeAlpha(), UI_UNIT_Y, ARegion::v2d, and rctf::ymax.
Referenced by draw_outliner().
static void outliner_draw_tree_element | ( | bContext * | C, |
uiBlock * | block, | ||
Scene * | scene, | ||
ARegion * | ar, | ||
SpaceOops * | soops, | ||
TreeElement * | te, | ||
int | startx, | ||
int * | starty | ||
) | [static] |
Definition at line 1236 of file outliner_draw.c.
References View2D::cur, Object::data, ELEM, ListBase::first, ID::flag, TreeElement::flag, Object::flag, TreeStoreElem::flag, SpaceOops::flag, group_select_flag(), TreeStoreElem::id, ID_GR, ID_OB, ID_SCE, TreeElement::idcode, ID::lib, LIB_INDIRECT, TreeElement::name, TreeElement::next, NULL, OBACT, Scene::obedit, OL_TOGW, outliner_draw_iconrow(), outliner_set_coord_tree_element(), SpaceOops::outlinevis, SpaceOops::search_string, SEARCHING_OUTLINER, SELECT, SO_DATABLOCKS, SO_HIDE_RESTRICTCOLS, SPACE_VIEW3D, TreeElement::subtree, TE_ACTIVE, TE_LAZY_CLOSED, TH_ACTIVE, TH_BACK, TH_SELECT, TH_TEXT, TH_TEXT_HI, tree_element_active(), tree_element_type_active(), TREESTORE, TSE_R_LAYER, TSE_RNA_ARRAY_ELEM, TSE_RNA_PROPERTY, TSE_SEARCHMATCH, tselem_draw_icon(), TSELEM_OPEN, TreeStoreElem::type, UI_CNR_ALL, UI_DrawString(), UI_GetStringWidth(), UI_GetThemeColorType4ubv(), UI_icon_draw(), UI_ThemeColor(), UI_ThemeColorBlend(), UI_ThemeColorShade(), UI_UNIT_X, UI_UNIT_Y, uiRoundBox(), uiSetRoundBox(), ARegion::v2d, TreeElement::xend, rctf::xmax, DrawIconArg::xmax, TreeElement::xs, rctf::ymin, and TreeElement::ys.
Referenced by outliner_draw_tree().
Definition at line 95 of file outliner_draw.c.
References ListBase::first, TreeElement::next, TreeElement::subtree, TREESTORE, TSELEM_OPEN, and UI_UNIT_Y.
Referenced by draw_outliner().
Definition at line 125 of file outliner_draw.c.
References ListBase::first, TreeElement::next, TreeElement::subtree, TREESTORE, TSELEM_OPEN, and UI_UNIT_X.
Referenced by draw_outliner().
static void outliner_set_coord_tree_element | ( | SpaceOops * | soops, |
TreeElement * | te, | ||
int | startx, | ||
int * | starty | ||
) | [static] |
Definition at line 1222 of file outliner_draw.c.
References ListBase::first, TreeElement::next, TreeElement::subtree, UI_UNIT_X, TreeElement::xs, and TreeElement::ys.
Referenced by outliner_draw_tree_element().
static void restrictbutton_bone_cb | ( | bContext * | C, |
void * | UNUSEDpoin, | ||
void * | poin2 | ||
) | [static] |
Definition at line 199 of file outliner_draw.c.
References BONE_HIDDEN_P, BONE_ROOTSEL, BONE_SELECTED, BONE_TIPSEL, Bone::flag, NC_OBJECT, ND_POSE, NULL, and WM_event_add_notifier().
Referenced by outliner_draw_restrictbuts().
static void restrictbutton_ebone_cb | ( | bContext * | C, |
void * | UNUSEDpoin, | ||
void * | poin2 | ||
) | [static] |
Definition at line 207 of file outliner_draw.c.
References BONE_HIDDEN_A, BONE_ROOTSEL, BONE_SELECTED, BONE_TIPSEL, EditBone::flag, NC_OBJECT, ND_POSE, NULL, and WM_event_add_notifier().
Referenced by outliner_draw_restrictbuts().
void restrictbutton_gr_restrict_flag | ( | void * | poin, |
void * | poin2, | ||
int | flag | ||
) |
Definition at line 239 of file outliner_draw.c.
References BA_DESELECT, BA_SELECT, ED_base_object_select(), ListBase::first, Object::flag, Group::gobject, group_restrict_flag(), GroupObject::next, GroupObject::ob, OB_RESTRICT_VIEW, Scene::obedit, object_in_scene(), Object::restrictflag, and SELECT.
Referenced by group_toggle_renderability_cb(), group_toggle_selectability_cb(), group_toggle_visibility_cb(), restrictbutton_gr_restrict_render(), restrictbutton_gr_restrict_select(), and restrictbutton_gr_restrict_view().
static void restrictbutton_gr_restrict_render | ( | bContext * | C, |
void * | poin, | ||
void * | poin2 | ||
) | [static] |
Definition at line 278 of file outliner_draw.c.
References NC_GROUP, NULL, OB_RESTRICT_RENDER, restrictbutton_gr_restrict_flag(), and WM_event_add_notifier().
Referenced by outliner_draw_restrictbuts().
static void restrictbutton_gr_restrict_select | ( | bContext * | C, |
void * | poin, | ||
void * | poin2 | ||
) | [static] |
Definition at line 273 of file outliner_draw.c.
References NC_GROUP, NULL, OB_RESTRICT_SELECT, restrictbutton_gr_restrict_flag(), and WM_event_add_notifier().
Referenced by outliner_draw_restrictbuts().
static void restrictbutton_gr_restrict_view | ( | bContext * | C, |
void * | poin, | ||
void * | poin2 | ||
) | [static] |
Definition at line 268 of file outliner_draw.c.
References NC_GROUP, NULL, OB_RESTRICT_VIEW, restrictbutton_gr_restrict_flag(), and WM_event_add_notifier().
Referenced by outliner_draw_restrictbuts().
static void restrictbutton_modifier_cb | ( | bContext * | C, |
void * | UNUSEDpoin, | ||
void * | poin2 | ||
) | [static] |
Definition at line 190 of file outliner_draw.c.
References DAG_id_tag_update(), Object::id, NC_OBJECT, ND_DRAW, OB_RECALC_DATA, and WM_event_add_notifier().
Referenced by outliner_draw_restrictbuts().
static void restrictbutton_r_lay_cb | ( | bContext * | C, |
void * | poin, | ||
void * | UNUSEDpoin2 | ||
) | [static] |
Definition at line 185 of file outliner_draw.c.
References NC_SCENE, ND_RENDER_OPTIONS, and WM_event_add_notifier().
Referenced by outliner_draw_restrictbuts().
static void restrictbutton_rend_cb | ( | bContext * | C, |
void * | poin, | ||
void * | UNUSEDpoin2 | ||
) | [static] |
Definition at line 180 of file outliner_draw.c.
References NC_SCENE, ND_OB_RENDER, and WM_event_add_notifier().
Referenced by outliner_draw_restrictbuts().
static void restrictbutton_sel_cb | ( | bContext * | C, |
void * | poin, | ||
void * | poin2 | ||
) | [static] |
Definition at line 163 of file outliner_draw.c.
References BA_DESELECT, common_restrict_check(), ED_base_object_select(), NC_SCENE, ND_OB_SELECT, OB_RESTRICT_SELECT, object_in_scene(), Object::restrictflag, and WM_event_add_notifier().
Referenced by outliner_draw_restrictbuts().
static void restrictbutton_view_cb | ( | bContext * | C, |
void * | poin, | ||
void * | poin2 | ||
) | [static] |
Definition at line 146 of file outliner_draw.c.
References BA_DESELECT, common_restrict_check(), ED_base_object_select(), NC_SCENE, ND_OB_SELECT, OB_RESTRICT_VIEW, object_in_scene(), Object::restrictflag, and WM_event_add_notifier().
Referenced by outliner_draw_restrictbuts().
static void tselem_draw_icon | ( | uiBlock * | block, |
int | xmax, | ||
float | x, | ||
float | y, | ||
TreeStoreElem * | tselem, | ||
TreeElement * | te, | ||
float | alpha | ||
) | [static] |
Definition at line 911 of file outliner_draw.c.
References DrawIconArg::alpha, BLI_findlink(), DrawIconArg::block, PointerRNA::data, eModifierType_Armature, eModifierType_Array, eModifierType_Bevel, eModifierType_Boolean, eModifierType_Build, eModifierType_Cast, eModifierType_Cloth, eModifierType_Collision, eModifierType_Curve, eModifierType_Decimate, eModifierType_Displace, eModifierType_DynamicPaint, eModifierType_EdgeSplit, eModifierType_Explode, eModifierType_Fluidsim, eModifierType_Hook, eModifierType_Lattice, eModifierType_Mask, eModifierType_MeshDeform, eModifierType_Mirror, eModifierType_Multires, eModifierType_ParticleInstance, eModifierType_ParticleSystem, eModifierType_Remesh, eModifierType_Screw, eModifierType_Shrinkwrap, eModifierType_SimpleDeform, eModifierType_Smoke, eModifierType_Smooth, eModifierType_Softbody, eModifierType_Solidify, eModifierType_Subsurf, eModifierType_UVProject, eModifierType_Wave, eModifierType_WeightVGEdit, eModifierType_WeightVGMix, eModifierType_WeightVGProximity, GS, TreeStoreElem::id, DrawIconArg::id, ID_AC, ID_AR, ID_CA, ID_CU, ID_GR, ID_IM, ID_KE, ID_LA, ID_LI, ID_LT, ID_MA, ID_MB, ID_ME, ID_NLA, ID_OB, ID_SCE, ID_SO, ID_SPK, ID_TE, ID_TXT, ID_WO, TreeElement::idcode, LA_AREA, LA_HEMI, LA_LOCAL, LA_SPOT, LA_SUN, Object::modifiers, ID::name, TreeStoreElem::nr, OB_ARMATURE, OB_CAMERA, OB_CURVE, OB_EMPTY, OB_FONT, OB_LAMP, OB_LATTICE, OB_MBALL, OB_MESH, OB_SPEAKER, OB_SURF, RNA_struct_is_ID(), RNA_struct_ui_icon(), TreeElement::rnaptr, SEQ_IMAGE, SEQ_META, SEQ_MOVIE, SEQ_SCENE, SEQ_SOUND, TSE_ANIM_DATA, TSE_BONE, TSE_CONSTRAINT_BASE, TSE_DEFGROUP_BASE, TSE_DRIVER_BASE, TSE_EBONE, TSE_LINKED_LAMP, TSE_LINKED_MAT, 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_BASE, TSE_PROXY, TSE_R_LAYER, TSE_R_LAYER_BASE, TSE_RNA_STRUCT, TSE_SCRIPT_BASE, TSE_SEQ_STRIP, TSE_SEQUENCE, TSE_SEQUENCE_DUP, tselem_draw_icon_uibut(), Lamp::type, Object::type, PointerRNA::type, TreeStoreElem::type, UI_icon_draw(), DrawIconArg::x, DrawIconArg::xmax, and DrawIconArg::y.
Referenced by outliner_draw_iconrow(), and outliner_draw_tree_element().
static void tselem_draw_icon_uibut | ( | struct DrawIconArg * | arg, |
int | icon | ||
) | [static] |
Definition at line 893 of file outliner_draw.c.
References DrawIconArg::alpha, DrawIconArg::block, DrawIconArg::id, LABEL, ID::lib, Library::name, NULL, UI_icon_draw_aspect(), UI_UNIT_X, UI_UNIT_Y, uiButSetDragID(), uiDefIconBut(), DrawIconArg::x, DrawIconArg::xmax, and DrawIconArg::y.
Referenced by tselem_draw_icon().