Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAntonio Vazquez <blendergit@gmail.com>2019-12-21 18:00:11 +0300
committerAntonio Vazquez <blendergit@gmail.com>2019-12-21 18:00:11 +0300
commit51d8d790d75f61cc30af08f03db92c38b196d793 (patch)
tree74ef06979b2efe78dd108185d41cdedb0708d1e6 /source/blender/editors/animation
parentc1242874c98be830a4bdf4db194d3a8001e4969b (diff)
GPencil: Hide dopesheet slider options for Annotations
Diffstat (limited to 'source/blender/editors/animation')
-rw-r--r--source/blender/editors/animation/anim_channels_defines.c134
1 files changed, 69 insertions, 65 deletions
diff --git a/source/blender/editors/animation/anim_channels_defines.c b/source/blender/editors/animation/anim_channels_defines.c
index a3d8695d186..2ec1634fa38 100644
--- a/source/blender/editors/animation/anim_channels_defines.c
+++ b/source/blender/editors/animation/anim_channels_defines.c
@@ -5057,72 +5057,76 @@ void ANIM_channel_draw_widgets(const bContext *C,
}
/* Special for Grease Pencil Layer. */
else if (ale->type == ANIMTYPE_GPLAYER) {
- /* Add some offset to make it more pleasing to the eye. */
- offset += SLIDER_WIDTH / 2.1f;
-
- char *gp_rna_path = NULL;
- bGPDlayer *gpl = (bGPDlayer *)ale->data;
- const short width = SLIDER_WIDTH / 5;
-
- /* Create the RNA pointers. */
- RNA_pointer_create(ale->id, &RNA_GPencilLayer, ale->data, &ptr);
- RNA_id_pointer_create(ale->id, &id_ptr);
- int icon;
-
- /* Layer opacity. */
- UI_block_emboss_set(block, UI_EMBOSS);
- prop = RNA_struct_find_property(&ptr, "opacity");
- gp_rna_path = RNA_path_from_ID_to_property(&ptr, prop);
- if (RNA_path_resolve_property(&id_ptr, gp_rna_path, &ptr, &prop)) {
- uiDefAutoButR(block,
- &ptr,
- prop,
- array_index,
- "",
- ICON_NONE,
- offset,
- ymid,
- width * 3,
- channel_height);
- }
- MEM_freeN(gp_rna_path);
-
- /* Mask Layer. */
- UI_block_emboss_set(block, UI_EMBOSS_NONE);
- prop = RNA_struct_find_property(&ptr, "mask_layer");
- gp_rna_path = RNA_path_from_ID_to_property(&ptr, prop);
- if (RNA_path_resolve_property(&id_ptr, gp_rna_path, &ptr, &prop)) {
- icon = (gpl->flag & GP_LAYER_USE_MASK) ? ICON_MOD_MASK : ICON_LAYER_ACTIVE;
- uiDefAutoButR(block,
- &ptr,
- prop,
- array_index,
- "",
- icon,
- offset + (width * 3),
- ymid,
- width,
- channel_height);
- }
- MEM_freeN(gp_rna_path);
-
- /* Layer onion skinning switch. */
- prop = RNA_struct_find_property(&ptr, "use_onion_skinning");
- gp_rna_path = RNA_path_from_ID_to_property(&ptr, prop);
- if (RNA_path_resolve_property(&id_ptr, gp_rna_path, &ptr, &prop)) {
- icon = (gpl->onion_flag & GP_LAYER_ONIONSKIN) ? ICON_ONIONSKIN_ON : ICON_ONIONSKIN_OFF;
- uiDefAutoButR(block,
- &ptr,
- prop,
- array_index,
- "",
- icon,
- offset + (width * 4),
- ymid,
- width,
- channel_height);
+ bGPdata *gpd = (bGPdata *)ale->id;
+ if ((gpd != NULL) && ((gpd->flag & GP_DATA_ANNOTATIONS) == 0)) {
+ /* Add some offset to make it more pleasing to the eye. */
+ offset += SLIDER_WIDTH / 2.1f;
+
+ char *gp_rna_path = NULL;
+ bGPDlayer *gpl = (bGPDlayer *)ale->data;
+ const short width = SLIDER_WIDTH / 5;
+
+ /* Create the RNA pointers. */
+ RNA_pointer_create(ale->id, &RNA_GPencilLayer, ale->data, &ptr);
+ RNA_id_pointer_create(ale->id, &id_ptr);
+ int icon;
+
+ /* Layer opacity. */
+ UI_block_emboss_set(block, UI_EMBOSS);
+ prop = RNA_struct_find_property(&ptr, "opacity");
+ gp_rna_path = RNA_path_from_ID_to_property(&ptr, prop);
+ if (RNA_path_resolve_property(&id_ptr, gp_rna_path, &ptr, &prop)) {
+ uiDefAutoButR(block,
+ &ptr,
+ prop,
+ array_index,
+ "",
+ ICON_NONE,
+ offset,
+ ymid,
+ width * 3,
+ channel_height);
+ }
+ MEM_freeN(gp_rna_path);
+
+ /* Mask Layer. */
+ UI_block_emboss_set(block, UI_EMBOSS_NONE);
+ prop = RNA_struct_find_property(&ptr, "mask_layer");
+ gp_rna_path = RNA_path_from_ID_to_property(&ptr, prop);
+ if (RNA_path_resolve_property(&id_ptr, gp_rna_path, &ptr, &prop)) {
+ icon = (gpl->flag & GP_LAYER_USE_MASK) ? ICON_MOD_MASK : ICON_LAYER_ACTIVE;
+ uiDefAutoButR(block,
+ &ptr,
+ prop,
+ array_index,
+ "",
+ icon,
+ offset + (width * 3),
+ ymid,
+ width,
+ channel_height);
+ }
+ MEM_freeN(gp_rna_path);
+
+ /* Layer onion skinning switch. */
+ prop = RNA_struct_find_property(&ptr, "use_onion_skinning");
+ gp_rna_path = RNA_path_from_ID_to_property(&ptr, prop);
+ if (RNA_path_resolve_property(&id_ptr, gp_rna_path, &ptr, &prop)) {
+ icon = (gpl->onion_flag & GP_LAYER_ONIONSKIN) ? ICON_ONIONSKIN_ON :
+ ICON_ONIONSKIN_OFF;
+ uiDefAutoButR(block,
+ &ptr,
+ prop,
+ array_index,
+ "",
+ icon,
+ offset + (width * 4),
+ ymid,
+ width,
+ channel_height);
+ }
+ MEM_freeN(gp_rna_path);
}
- MEM_freeN(gp_rna_path);
}
/* Only if RNA-Path found. */