[Bf-blender-cvs] [e7458db4b46] modifier-panels-ui: Update UI layouts for Lattice, Mesh Deform, Shrinkwrap and Simple Deform modifiers

William Reynish noreply at git.blender.org
Sun Apr 5 23:33:34 CEST 2020


Commit: e7458db4b46b008385bb32e0d0f9417362adb91f
Author: William Reynish
Date:   Sun Apr 5 23:32:47 2020 +0200
Branches: modifier-panels-ui
https://developer.blender.org/rBe7458db4b46b008385bb32e0d0f9417362adb91f

Update UI layouts for Lattice, Mesh Deform, Shrinkwrap and Simple Deform modifiers

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

M	source/blender/makesrna/intern/rna_modifier.c
M	source/blender/modifiers/intern/MOD_lattice.c
M	source/blender/modifiers/intern/MOD_meshdeform.c
M	source/blender/modifiers/intern/MOD_shrinkwrap.c
M	source/blender/modifiers/intern/MOD_simpledeform.c

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

diff --git a/source/blender/makesrna/intern/rna_modifier.c b/source/blender/makesrna/intern/rna_modifier.c
index 455d158fc8a..a2b8848fcbc 100644
--- a/source/blender/makesrna/intern/rna_modifier.c
+++ b/source/blender/makesrna/intern/rna_modifier.c
@@ -4044,7 +4044,7 @@ static void rna_def_modifier_shrinkwrap(BlenderRNA *brna)
   prop = RNA_def_property(srna, "wrap_method", PROP_ENUM, PROP_NONE);
   RNA_def_property_enum_sdna(prop, NULL, "shrinkType");
   RNA_def_property_enum_items(prop, shrink_type_items);
-  RNA_def_property_ui_text(prop, "Mode", "");
+  RNA_def_property_ui_text(prop, "Wrap Method", "");
   RNA_def_property_update(prop, 0, "rna_Modifier_dependency_update");
 
   prop = RNA_def_property(srna, "wrap_mode", PROP_ENUM, PROP_NONE);
diff --git a/source/blender/modifiers/intern/MOD_lattice.c b/source/blender/modifiers/intern/MOD_lattice.c
index 603f9d9e4f9..f00227bed06 100644
--- a/source/blender/modifiers/intern/MOD_lattice.c
+++ b/source/blender/modifiers/intern/MOD_lattice.c
@@ -155,6 +155,8 @@ static void panel_draw(const bContext *C, Panel *panel)
 
   bool has_vertex_group = RNA_string_length(&ptr, "vertex_group") != 0;
 
+  uiLayoutSetPropSep(layout, true);
+
   uiItemR(layout, &ptr, "object", 0, NULL, ICON_NONE);
 
   row = uiLayoutRow(layout, true);
diff --git a/source/blender/modifiers/intern/MOD_meshdeform.c b/source/blender/modifiers/intern/MOD_meshdeform.c
index 42ced52aaec..0adeaa892f5 100644
--- a/source/blender/modifiers/intern/MOD_meshdeform.c
+++ b/source/blender/modifiers/intern/MOD_meshdeform.c
@@ -575,14 +575,17 @@ static void panel_draw(const bContext *C, Panel *panel)
   bool is_bound = RNA_boolean_get(&ptr, "is_bound");
   bool has_vertex_group = RNA_string_length(&ptr, "vertex_group") != 0;
 
+  uiLayoutSetPropSep(layout, true);
+
   col = uiLayoutColumn(layout, true);
   uiLayoutSetEnabled(col, !is_bound);
-  uiItemR(col, &ptr, "object", 0, "", ICON_NONE);
+  uiItemR(col, &ptr, "object", 0, NULL, ICON_NONE);
 
   row = uiLayoutRow(layout, true);
-  uiItemPointerR(row, &ptr, "vertex_group", &ob_ptr, "vertex_groups", "", ICON_NONE);
+  uiItemPointerR(row, &ptr, "vertex_group", &ob_ptr, "vertex_groups", NULL, ICON_NONE);
   sub = uiLayoutRow(row, true);
   uiLayoutSetActive(sub, has_vertex_group);
+  uiLayoutSetPropDecorate(sub, false);
   uiItemR(sub, &ptr, "invert_vertex_group", 0, "", ICON_ARROW_LEFTRIGHT);
 
   col = uiLayoutColumn(layout, false);
diff --git a/source/blender/modifiers/intern/MOD_shrinkwrap.c b/source/blender/modifiers/intern/MOD_shrinkwrap.c
index e99b8f76629..1db290ea002 100644
--- a/source/blender/modifiers/intern/MOD_shrinkwrap.c
+++ b/source/blender/modifiers/intern/MOD_shrinkwrap.c
@@ -211,7 +211,7 @@ static bool dependsOnNormals(ModifierData *md)
 
 static void panel_draw(const bContext *C, Panel *panel)
 {
-  uiLayout *sub, *row;
+  uiLayout *sub, *row, *split, *col;
   uiLayout *layout = panel->layout;
 
   PointerRNA ptr;
@@ -222,31 +222,6 @@ static void panel_draw(const bContext *C, Panel *panel)
   uiLayoutSetPropSep(layout, true);
 
   bool has_vertex_group = RNA_string_length(&ptr, "vertex_group") != 0;
-
-  uiItemR(layout, &ptr, "target", 0, NULL, ICON_NONE);
-
-  row = uiLayoutRow(layout, true);
-  uiItemPointerR(row, &ptr, "vertex_group", &ob_ptr, "vertex_groups", NULL, ICON_NONE);
-  sub = uiLayoutColumn(row, true);
-  uiLayoutSetActive(sub, has_vertex_group);
-  uiLayoutSetPropSep(sub, false);
-  uiItemR(sub, &ptr, "invert_vertex_group", 0, "", ICON_ARROW_LEFTRIGHT);
-
-  uiItemR(layout, &ptr, "offset", 0, NULL, ICON_NONE);
-
-  modifier_panel_end(layout, &ptr);
-}
-
-static void mode_panel_draw(const bContext *C, Panel *panel)
-{
-  uiLayout *row, *col, *split;
-  uiLayout *layout = panel->layout;
-
-  PointerRNA ptr;
-  modifier_panel_get_property_pointers(C, panel, NULL, &ptr);
-
-  uiLayoutSetPropSep(layout, true);
-
   int wrap_method = RNA_enum_get(&ptr, "wrap_method");
 
   uiItemR(layout, &ptr, "wrap_method", 0, NULL, ICON_NONE);
@@ -283,16 +258,27 @@ static void mode_panel_draw(const bContext *C, Panel *panel)
                       RNA_boolean_get(&ptr, "use_negative_direction") &&
                           RNA_enum_get(&ptr, "cull_face") != 0);
     uiItemR(col, &ptr, "use_invert_cull", 0, NULL, ICON_NONE);
+  }
 
+  uiItemR(layout, &ptr, "target", 0, NULL, ICON_NONE);
+  if (wrap_method == MOD_SHRINKWRAP_PROJECT) {
     uiItemR(layout, &ptr, "auxiliary_target", 0, NULL, ICON_NONE);
   }
+  uiItemR(layout, &ptr, "offset", 0, NULL, ICON_NONE);
+
+  row = uiLayoutRow(layout, true);
+  uiItemPointerR(row, &ptr, "vertex_group", &ob_ptr, "vertex_groups", NULL, ICON_NONE);
+  sub = uiLayoutColumn(row, true);
+  uiLayoutSetActive(sub, has_vertex_group);
+  uiLayoutSetPropSep(sub, false);
+  uiItemR(sub, &ptr, "invert_vertex_group", 0, "", ICON_ARROW_LEFTRIGHT);
+
+  modifier_panel_end(layout, &ptr);
 }
 
 static void panelRegister(ARegionType *region_type)
 {
-  PanelType *panel_type = modifier_panel_register(region_type, "Shrinkwrap", panel_draw);
-  modifier_subpanel_register(
-      region_type, "shrinkwrap_mode", "Mode", NULL, mode_panel_draw, panel_type);
+  modifier_panel_register(region_type, "Shrinkwrap", panel_draw);
 }
 
 ModifierTypeInfo modifierType_Shrinkwrap = {
diff --git a/source/blender/modifiers/intern/MOD_simpledeform.c b/source/blender/modifiers/intern/MOD_simpledeform.c
index 5858a96bf7d..521b688c4a7 100644
--- a/source/blender/modifiers/intern/MOD_simpledeform.c
+++ b/source/blender/modifiers/intern/MOD_simpledeform.c
@@ -466,6 +466,7 @@ static void panel_draw(const bContext *C, Panel *panel)
   PointerRNA ptr;
   PointerRNA ob_ptr;
   modifier_panel_get_property_pointers(C, panel, &ob_ptr, &ptr);
+  modifier_panel_buttons(C, panel);
 
   bool has_vertex_group = RNA_string_length(&ptr, "vertex_group") != 0;
   int deform_method = RNA_enum_get(&ptr, "deform_method");
@@ -473,14 +474,7 @@ static void panel_draw(const bContext *C, Panel *panel)
   row = uiLayoutRow(layout, false);
   uiItemR(row, &ptr, "deform_method", UI_ITEM_R_EXPAND, NULL, ICON_NONE);
 
-  col = uiLayoutColumn(layout, true);
-  uiItemL(col, IFACE_("Vertex Group:"), ICON_NONE);
-  row = uiLayoutRow(col, true);
-  uiItemPointerR(row, &ptr, "vertex_group", &ob_ptr, "vertex_groups", "", ICON_NONE);
-  sub = uiLayoutRow(row, true);
-  uiLayoutSetActive(sub, has_vertex_group);
-  uiLayoutSetPropSep(sub, false);
-  uiItemR(sub, &ptr, "invert_vertex_group", 0, "", ICON_ARROW_LEFTRIGHT);
+  uiLayoutSetPropSep(layout, true);
 
   if (ELEM(deform_method, MOD_SIMPLEDEFORM_MODE_TAPER, MOD_SIMPLEDEFORM_MODE_STRETCH)) {
     uiItemR(layout, &ptr, "factor", 0, NULL, ICON_NONE);
@@ -490,39 +484,53 @@ static void panel_draw(const bContext *C, Panel *panel)
   }
   uiItemR(layout, &ptr, "limits", UI_ITEM_R_SLIDER, NULL, ICON_NONE);
 
+  col = uiLayoutColumn(layout, true);
+  row = uiLayoutRow(col, true);
+  uiItemPointerR(row, &ptr, "vertex_group", &ob_ptr, "vertex_groups", NULL, ICON_NONE);
+  sub = uiLayoutRow(row, true);
+  uiLayoutSetActive(sub, has_vertex_group);
+  uiLayoutSetPropSep(sub, false);
+  uiItemR(sub, &ptr, "invert_vertex_group", 0, "", ICON_ARROW_LEFTRIGHT);
+
   modifier_panel_end(layout, &ptr);
 }
 
 static void axis_origin_panel_draw(const bContext *C, Panel *panel)
 {
-  uiLayout *row;
+  uiLayout *row, *split;
   uiLayout *layout = panel->layout;
 
   PointerRNA ptr;
   modifier_panel_get_property_pointers(C, panel, NULL, &ptr);
-  modifier_panel_buttons(C, panel);
 
   int deform_method = RNA_enum_get(&ptr, "deform_method");
 
-  uiItemR(layout, &ptr, "origin", 0, "", ICON_NONE);
-  uiItemR(layout, &ptr, "deform_axis", 0, NULL, ICON_NONE);
+  uiLayoutSetPropSep(layout, true);
+
+  uiItemR(layout, &ptr, "origin", 0, NULL, ICON_NONE);
+  uiItemR(layout, &ptr, "deform_axis", UI_ITEM_R_EXPAND, NULL, ICON_NONE);
 
   if (ELEM(deform_method,
            MOD_SIMPLEDEFORM_MODE_TAPER,
            MOD_SIMPLEDEFORM_MODE_STRETCH,
            MOD_SIMPLEDEFORM_MODE_TWIST)) {
-    row = uiLayoutRow(layout, true);
-    uiItemL(row, IFACE_("Lock:"), ICON_NONE);
+    split = uiLayoutSplit(layout, 0.5f, false);
+    row = uiLayoutRow(split, true);
+    uiLayoutSetAlignment(row, UI_LAYOUT_ALIGN_RIGHT);
+    uiItemL(row, IFACE_("Lock"), ICON_NONE);
+    row = uiLayoutRow(split, true);
+    uiLayoutSetPropSep(row, false);
     int deform_axis = RNA_enum_get(&ptr, "deform_axis");
     if (deform_axis != 0) {
-      uiItemR(row, &ptr, "lock_x", 0, NULL, ICON_NONE);
+      uiItemR(row, &ptr, "lock_x", UI_ITEM_R_TOGGLE, NULL, ICON_NONE);
     }
     if (deform_axis != 1) {
-      uiItemR(row, &ptr, "lock_y", 0, NULL, ICON_NONE);
+      uiItemR(row, &ptr, "lock_y", UI_ITEM_R_TOGGLE, NULL, ICON_NONE);
     }
     if (deform_axis != 2) {
-      uiItemR(row, &ptr, "lock_z", 0, NULL, ICON_NONE);
+      uiItemR(row, &ptr, "lock_z", UI_ITEM_R_TOGGLE, NULL, ICON_NONE);
     }
+    uiItemL(row, "", ICON_BLANK1);
   }
 }



More information about the Bf-blender-cvs mailing list