[Bf-blender-cvs] [51d8d790d75] master: GPencil: Hide dopesheet slider options for Annotations

Antonio Vazquez noreply at git.blender.org
Sat Dec 21 16:00:33 CET 2019


Commit: 51d8d790d75f61cc30af08f03db92c38b196d793
Author: Antonio Vazquez
Date:   Sat Dec 21 16:00:11 2019 +0100
Branches: master
https://developer.blender.org/rB51d8d790d75f61cc30af08f03db92c38b196d793

GPencil: Hide dopesheet slider options for Annotations

===================================================================

M	source/blender/editors/animation/anim_channels_defines.c

===================================================================

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. */



More information about the Bf-blender-cvs mailing list