[Bf-blender-cvs] [2fc5af5b191] temp-lineart-contained: LineArt: show full options in first modifier.

YimingWu noreply at git.blender.org
Sun May 9 05:12:37 CEST 2021


Commit: 2fc5af5b19174b24e9f786714132eeb3921fa93f
Author: YimingWu
Date:   Sun May 9 10:17:59 2021 +0800
Branches: temp-lineart-contained
https://developer.blender.org/rB2fc5af5b19174b24e9f786714132eeb3921fa93f

LineArt: show full options in first modifier.

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

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 d9263770372..eebbd00162c 100644
--- a/source/blender/gpencil_modifiers/intern/MOD_gpencillineart.c
+++ b/source/blender/gpencil_modifiers/intern/MOD_gpencillineart.c
@@ -298,8 +298,10 @@ static void panel_draw(const bContext *UNUSED(C), Panel *panel)
   uiItemR(col, ptr, "use_crease", 0, IFACE_("Crease"), ICON_NONE);
 
   uiLayout *sub = uiLayoutRow(col, true);
-  uiLayoutSetActive(
-      sub, RNA_boolean_get(ptr, "use_crease") && (!RNA_boolean_get(ptr, "use_cached_result")));
+  uiLayoutSetActive(sub,
+                    RNA_boolean_get(ptr, "use_crease") &&
+                        (!RNA_boolean_get(ptr, "use_cached_result") ||
+                         BKE_gpencil_lineart_is_first_run(ob_ptr.data, ptr->data)));
   uiLayoutSetPropSep(sub, true);
   uiItemR(sub, ptr, "crease_threshold", UI_ITEM_R_SLIDER, " ", ICON_NONE);
 
@@ -330,13 +332,16 @@ static void panel_draw(const bContext *UNUSED(C), Panel *panel)
 static void options_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_cache = RNA_boolean_get(ptr, "use_cached_result");
 
   uiLayoutSetPropSep(layout, true);
-  uiLayoutSetEnabled(layout, !is_baked && !use_cache);
+  uiLayoutSetEnabled(layout,
+                     !is_baked &&
+                         (!use_cache || BKE_gpencil_lineart_is_first_run(ob_ptr.data, ptr->data)));
 
   uiItemR(layout, ptr, "use_remove_doubles", 0, NULL, ICON_NONE);
   uiItemR(layout, ptr, "use_edge_overlap", 0, IFACE_("Overlapping Edges As Contour"), ICON_NONE);
@@ -437,7 +442,8 @@ static void transparency_panel_draw(const bContext *UNUSED(C), Panel *panel)
 
 static void chaining_panel_draw(const bContext *UNUSED(C), Panel *panel)
 {
-  PointerRNA *ptr = gpencil_modifier_panel_get_property_pointers(panel, NULL);
+  PointerRNA ob_ptr;
+  PointerRNA *ptr = gpencil_modifier_panel_get_property_pointers(panel, &ob_ptr);
 
   uiLayout *layout = panel->layout;
 
@@ -445,7 +451,9 @@ static void chaining_panel_draw(const bContext *UNUSED(C), Panel *panel)
   const bool use_cache = RNA_boolean_get(ptr, "use_cached_result");
 
   uiLayoutSetPropSep(layout, true);
-  uiLayoutSetEnabled(layout, !is_baked && !use_cache);
+  uiLayoutSetEnabled(layout,
+                     !is_baked &&
+                         (!use_cache || BKE_gpencil_lineart_is_first_run(ob_ptr.data, ptr->data)));
 
   uiLayout *col = uiLayoutColumnWithHeading(layout, true, IFACE_("Chain"));
   uiItemR(col, ptr, "use_fuzzy_intersections", 0, NULL, ICON_NONE);
@@ -468,7 +476,9 @@ static void vgroup_panel_draw(const bContext *UNUSED(C), Panel *panel)
   const bool use_cache = RNA_boolean_get(ptr, "use_cached_result");
 
   uiLayoutSetPropSep(layout, true);
-  uiLayoutSetEnabled(layout, !is_baked && !use_cache);
+  uiLayoutSetEnabled(layout,
+                     !is_baked &&
+                         (!use_cache || BKE_gpencil_lineart_is_first_run(ob_ptr.data, ptr->data)));
 
   uiLayout *col = uiLayoutColumn(layout, true);



More information about the Bf-blender-cvs mailing list