[Bf-blender-cvs] [8658ae92ed5] temp-lineart-contained: LineArt: In-front UI hints.

YimingWu noreply at git.blender.org
Thu May 6 05:51:28 CEST 2021


Commit: 8658ae92ed5146df0334e05b0bc2e4887a57fd2f
Author: YimingWu
Date:   Thu May 6 11:34:36 2021 +0800
Branches: temp-lineart-contained
https://developer.blender.org/rB8658ae92ed5146df0334e05b0bc2e4887a57fd2f

LineArt: In-front UI hints.

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

M	source/blender/gpencil_modifiers/intern/MOD_gpencillineart.c

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

diff --git a/source/blender/gpencil_modifiers/intern/MOD_gpencillineart.c b/source/blender/gpencil_modifiers/intern/MOD_gpencillineart.c
index f3d09d9af45..4c89518627a 100644
--- a/source/blender/gpencil_modifiers/intern/MOD_gpencillineart.c
+++ b/source/blender/gpencil_modifiers/intern/MOD_gpencillineart.c
@@ -363,14 +363,23 @@ static void style_panel_draw(const bContext *UNUSED(C), Panel *panel)
 static void occlusion_panel_draw(const bContext *UNUSED(C), Panel *panel)
 {
   uiLayout *layout = panel->layout;
-  PointerRNA *ptr = gpencil_modifier_panel_get_property_pointers(panel, NULL);
+  PointerRNA ob_ptr;
+  PointerRNA *ptr = gpencil_modifier_panel_get_property_pointers(panel, &ob_ptr);
 
   const bool is_baked = RNA_boolean_get(ptr, "is_baked");
 
+  const bool use_multiple_levels = RNA_boolean_get(ptr, "use_multiple_levels");
+  const bool show_in_front = RNA_boolean_get(&ob_ptr, "show_in_front");
+
   uiLayoutSetPropSep(layout, true);
   uiLayoutSetEnabled(layout, !is_baked);
 
-  const bool use_multiple_levels = RNA_boolean_get(ptr, "use_multiple_levels");
+  if (!show_in_front) {
+    uiItemL(layout, IFACE_("Object is not in front"), ICON_INFO);
+  }
+
+  layout = uiLayoutColumn(layout, false);
+  uiLayoutSetActive(layout, show_in_front);
 
   uiItemR(layout, ptr, "use_multiple_levels", 0, IFACE_("Range"), ICON_NONE);
 
@@ -387,10 +396,14 @@ static void occlusion_panel_draw(const bContext *UNUSED(C), Panel *panel)
 static void transparency_panel_draw_header(const bContext *UNUSED(C), Panel *panel)
 {
   uiLayout *layout = panel->layout;
-  PointerRNA *ptr = gpencil_modifier_panel_get_property_pointers(panel, NULL);
+  PointerRNA ob_ptr;
+  PointerRNA *ptr = gpencil_modifier_panel_get_property_pointers(panel, &ob_ptr);
 
   const bool is_baked = RNA_boolean_get(ptr, "is_baked");
+  const bool show_in_front = RNA_boolean_get(&ob_ptr, "show_in_front");
+
   uiLayoutSetEnabled(layout, !is_baked);
+  uiLayoutSetActive(layout, show_in_front);
 
   uiItemR(layout, ptr, "use_transparency", 0, IFACE_("Transparency"), ICON_NONE);
 }
@@ -510,6 +523,10 @@ static void composition_panel_draw(const bContext *UNUSED(C), Panel *panel)
 
   uiLayoutSetPropSep(layout, true);
 
+  if (show_in_front) {
+    uiItemL(layout, IFACE_("Object is shown in front"), ICON_ERROR);
+  }
+
   uiLayout *row = uiLayoutRow(layout, false);
   uiLayoutSetActive(row, !show_in_front);



More information about the Bf-blender-cvs mailing list