Changeset View
Changeset View
Standalone View
Standalone View
source/blender/editors/space_outliner/outliner_draw.c
| Context not available. | |||||
| } | } | ||||
| static void UNUSED_FUNCTION(tselem_draw_gp_icon_uibut)(struct DrawIconArg *arg, ID *id, bGPDlayer *gpl) | |||||
| { | |||||
| /* restrict column clip - skip it for now... */ | |||||
| if (arg->x >= arg->xmax) { | |||||
| /* pass */ | |||||
| } | |||||
| else { | |||||
| PointerRNA ptr; | |||||
| const float eps = 0.001f; | |||||
| const bool is_stroke_visible = (gpl->color[3] > eps); | |||||
| const bool is_fill_visible = (gpl->fill[3] > eps); | |||||
| float w = 0.5f * UI_UNIT_X; | |||||
| float h = 0.85f * UI_UNIT_Y; | |||||
| RNA_pointer_create(id, &RNA_GPencilLayer, gpl, &ptr); | |||||
| UI_block_align_begin(arg->block); | |||||
| UI_block_emboss_set(arg->block, is_stroke_visible ? UI_EMBOSS : UI_EMBOSS_NONE); | |||||
| uiDefButR(arg->block, UI_BTYPE_COLOR, 1, "", arg->xb, arg->yb, w, h, | |||||
| &ptr, "color", -1, | |||||
| 0, 0, 0, 0, NULL); | |||||
| UI_block_emboss_set(arg->block, is_fill_visible ? UI_EMBOSS : UI_EMBOSS_NONE); | |||||
| uiDefButR(arg->block, UI_BTYPE_COLOR, 1, "", arg->xb + w, arg->yb, w, h, | |||||
| &ptr, "fill_color", -1, | |||||
| 0, 0, 0, 0, NULL); | |||||
| UI_block_emboss_set(arg->block, UI_EMBOSS_NONE); | |||||
| UI_block_align_end(arg->block); | |||||
| } | |||||
| } | |||||
| static void tselem_draw_icon(uiBlock *block, int xmax, float x, float y, TreeStoreElem *tselem, TreeElement *te, | static void tselem_draw_icon(uiBlock *block, int xmax, float x, float y, TreeStoreElem *tselem, TreeElement *te, | ||||
| float alpha) | float alpha) | ||||
| { | { | ||||
| Context not available. | |||||
| case eModifierType_NormalEdit: | case eModifierType_NormalEdit: | ||||
| ICON_DRAW(ICON_MOD_NORMALEDIT); | ICON_DRAW(ICON_MOD_NORMALEDIT); | ||||
| break; | break; | ||||
| /* GPencil Modifiers */ | |||||
| case eModifierType_GpencilNoise: | |||||
| ICON_DRAW(ICON_RNDCURVE); | |||||
| break; | |||||
| case eModifierType_GpencilSubdiv: | |||||
| ICON_DRAW(ICON_MOD_SUBSURF); | |||||
| break; | |||||
| case eModifierType_GpencilThick: | |||||
| ICON_DRAW(ICON_MAN_ROT); | |||||
| break; | |||||
| case eModifierType_GpencilTint: | |||||
| ICON_DRAW(ICON_COLOR); | |||||
| break; | |||||
| case eModifierType_GpencilArray: | |||||
| ICON_DRAW(ICON_MOD_ARRAY); | |||||
| break; | |||||
| case eModifierType_GpencilBuild: | |||||
| ICON_DRAW(ICON_MOD_BUILD); | |||||
| break; | |||||
| case eModifierType_GpencilOpacity: | |||||
| ICON_DRAW(ICON_MOD_MASK); | |||||
| break; | |||||
| case eModifierType_GpencilColor: | |||||
| ICON_DRAW(ICON_GROUP_VCOL); | |||||
| break; | |||||
| case eModifierType_GpencilLattice: | |||||
| ICON_DRAW(ICON_MOD_LATTICE); | |||||
| break; | |||||
| case eModifierType_GpencilSimplify: | |||||
| ICON_DRAW(ICON_MOD_DECIM); | |||||
| break; | |||||
| case eModifierType_GpencilSmooth: | |||||
| ICON_DRAW(ICON_MOD_SMOOTH); | |||||
| break; | |||||
| case eModifierType_GpencilHook: | |||||
| ICON_DRAW(ICON_HOOK); | |||||
| break; | |||||
| case eModifierType_GpencilOffset: | |||||
| ICON_DRAW(ICON_MOD_DISPLACE); | |||||
| break; | |||||
| /* GPencil VFX Modifiers */ | |||||
| case eModifierType_GpencilBlur: | |||||
| case eModifierType_GpencilWave: | |||||
| case eModifierType_GpencilPixel: | |||||
| case eModifierType_GpencilSwirl: | |||||
| case eModifierType_GpencilFlip: | |||||
| case eModifierType_GpencilLight: | |||||
| ICON_DRAW(ICON_SOLO_ON); | |||||
| break; | |||||
| /* Default */ | /* Default */ | ||||
| case eModifierType_None: | case eModifierType_None: | ||||
| case eModifierType_ShapeKey: | case eModifierType_ShapeKey: | ||||
| case NUM_MODIFIER_TYPES: | case NUM_MODIFIER_TYPES: | ||||
| ICON_DRAW(ICON_DOT); | ICON_DRAW(ICON_DOT); | ||||
| break; | break; | ||||
| Context not available. | |||||
| ICON_DRAW(ICON_COLLAPSEMENU); | ICON_DRAW(ICON_COLLAPSEMENU); | ||||
| break; | break; | ||||
| /* Removed the icons from outliner. Need a better structure with Layers, Palettes and Colors */ | /* Removed the icons from outliner. Need a better structure with Layers, Palettes and Colors */ | ||||
| #if 0 | |||||
| case TSE_GP_LAYER: | case TSE_GP_LAYER: | ||||
| tselem_draw_gp_icon_uibut(&arg, tselem->id, te->directdata); | { | ||||
| /* indicate whether layer is active */ | |||||
| bGPDlayer *gpl = te->directdata; | |||||
| if (gpl->flag & GP_LAYER_ACTIVE) { | |||||
| ICON_DRAW(ICON_GREASEPENCIL); | |||||
| } | |||||
| else { | |||||
| ICON_DRAW(ICON_DOT); | |||||
| } | |||||
| break; | break; | ||||
| #endif | } | ||||
| default: | default: | ||||
| ICON_DRAW(ICON_DOT); | ICON_DRAW(ICON_DOT); | ||||
| break; | break; | ||||
| Context not available. | |||||
| tselem_draw_icon_uibut(&arg, ICON_OUTLINER_OB_SPEAKER); break; | tselem_draw_icon_uibut(&arg, ICON_OUTLINER_OB_SPEAKER); break; | ||||
| case OB_EMPTY: | case OB_EMPTY: | ||||
| tselem_draw_icon_uibut(&arg, ICON_OUTLINER_OB_EMPTY); break; | tselem_draw_icon_uibut(&arg, ICON_OUTLINER_OB_EMPTY); break; | ||||
| case OB_GPENCIL: | |||||
| tselem_draw_icon_uibut(&arg, ICON_OUTLINER_OB_GREASEPENCIL); break; | |||||
| } | } | ||||
| } | } | ||||
| else { | else { | ||||
| Context not available. | |||||
| case ID_LS: | case ID_LS: | ||||
| tselem_draw_icon_uibut(&arg, ICON_LINE_DATA); break; | tselem_draw_icon_uibut(&arg, ICON_LINE_DATA); break; | ||||
| case ID_GD: | case ID_GD: | ||||
| tselem_draw_icon_uibut(&arg, ICON_GREASEPENCIL); break; | tselem_draw_icon_uibut(&arg, ICON_OUTLINER_DATA_GREASEPENCIL); break; | ||||
| default: | default: | ||||
| break; | break; | ||||
| } | } | ||||
| Context not available. | |||||