[Bf-blender-cvs] [191ddaf577c] modifier-panels-ui: New layouts for more modifiers - Armature - Corrective Smooth - Laplacian Smooth - Multiresolution And progress for data transfer modifier

Hans Goudey noreply at git.blender.org
Mon Apr 6 05:02:24 CEST 2020


Commit: 191ddaf577c37664408e4645feb55e75d6893fdf
Author: Hans Goudey
Date:   Sun Apr 5 21:38:18 2020 -0500
Branches: modifier-panels-ui
https://developer.blender.org/rB191ddaf577c37664408e4645feb55e75d6893fdf

New layouts for more modifiers
- Armature
- Corrective Smooth
- Laplacian Smooth
- Multiresolution
And progress for data transfer modifier

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

M	source/blender/modifiers/intern/MOD_armature.c
M	source/blender/modifiers/intern/MOD_correctivesmooth.c
M	source/blender/modifiers/intern/MOD_datatransfer.c
M	source/blender/modifiers/intern/MOD_laplaciansmooth.c
M	source/blender/modifiers/intern/MOD_multires.c

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

diff --git a/source/blender/modifiers/intern/MOD_armature.c b/source/blender/modifiers/intern/MOD_armature.c
index 25d69a899dc..6b93c46f941 100644
--- a/source/blender/modifiers/intern/MOD_armature.c
+++ b/source/blender/modifiers/intern/MOD_armature.c
@@ -252,7 +252,7 @@ static void deformMatrices(ModifierData *md,
 
 static void panel_draw(const bContext *C, Panel *panel)
 {
-  uiLayout *sub, *row, *col, *split;
+  uiLayout *sub, *row;
 
   uiLayout *layout = panel->layout;
   PointerRNA ptr;
@@ -262,30 +262,21 @@ static void panel_draw(const bContext *C, Panel *panel)
 
   bool has_vertex_group = RNA_string_length(&ptr, "vertex_group") != 0;
 
-  split = uiLayoutSplit(layout, 0.5f, false);
+  uiLayoutSetPropSep(layout, true);
 
-  col = uiLayoutColumn(split, false);
-  uiItemL(col, IFACE_("Object:"), ICON_NONE);
-  uiItemR(col, &ptr, "object", 0, "", ICON_NONE);
-  uiItemR(col, &ptr, "use_deform_preserve_volume", 0, NULL, ICON_NONE);
-
-  col = uiLayoutColumn(split, false);
-  uiItemL(col, IFACE_("Bind to:"), ICON_NONE);
-  uiItemR(col, &ptr, "use_vertex_groups", 0, IFACE_("Vertex Groups"), ICON_NONE);
-  uiItemR(col, &ptr, "use_bone_envelopes", 0, IFACE_("Bone Envelopes"), ICON_NONE);
-
-  uiItemS(layout);
-
-  split = uiLayoutSplit(layout, 0.5f, false);
-
-  row = uiLayoutRow(split, true);
-  uiItemPointerR(row, &ptr, "vertex_group", &ob_ptr, "vertex_groups", "", ICON_NONE);
+  uiItemR(layout, &ptr, "object", 0, NULL, ICON_NONE);
+  row = uiLayoutRow(layout, 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);
+  uiLayoutSetPropDecorate(sub, false);
   uiItemR(sub, &ptr, "invert_vertex_group", 0, "", ICON_ARROW_LEFTRIGHT);
 
-  uiItemR(split, &ptr, "use_multi_modifier", 0, NULL, ICON_NONE);
+  uiItemL(layout, IFACE_("Bind to:"), ICON_NONE);
+  uiItemR(layout, &ptr, "use_vertex_groups", 0, NULL, ICON_NONE);
+  uiItemR(layout, &ptr, "use_bone_envelopes", 0, NULL, ICON_NONE);
+  uiItemR(layout, &ptr, "use_deform_preserve_volume", 0, NULL, ICON_NONE);
+  uiItemR(layout, &ptr, "use_multi_modifier", 0, NULL, ICON_NONE);
 
   modifier_panel_end(layout, &ptr);
 }
diff --git a/source/blender/modifiers/intern/MOD_correctivesmooth.c b/source/blender/modifiers/intern/MOD_correctivesmooth.c
index 9f69b4d2c09..e604d1deb07 100644
--- a/source/blender/modifiers/intern/MOD_correctivesmooth.c
+++ b/source/blender/modifiers/intern/MOD_correctivesmooth.c
@@ -776,7 +776,7 @@ static void deformVertsEM(ModifierData *md,
 
 static void panel_draw(const bContext *C, Panel *panel)
 {
-  uiLayout *sub, *row, *col, *split;
+  uiLayout *sub, *row;
   uiLayout *layout = panel->layout;
 
   PointerRNA ptr;
@@ -786,27 +786,22 @@ 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, "factor", 0, IFACE_("Factor"), ICON_NONE);
   uiItemR(layout, &ptr, "iterations", 0, NULL, ICON_NONE);
   uiItemR(layout, &ptr, "scale", 0, NULL, ICON_NONE);
   uiItemR(layout, &ptr, "smooth_type", 0, NULL, ICON_NONE);
 
-  split = uiLayoutSplit(layout, 0.5f, false);
-
-  col = uiLayoutColumn(split, false);
-  uiItemL(col, IFACE_("Vertex Group:"), ICON_NONE);
-  row = uiLayoutRow(col, true);
-  uiItemPointerR(row, &ptr, "vertex_group", &ob_ptr, "vertex_groups", "", ICON_NONE);
+  row = uiLayoutRow(layout, 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);
-
+  uiLayoutSetPropDecorate(sub, false);
   uiItemR(sub, &ptr, "invert_vertex_group", 0, "", ICON_ARROW_LEFTRIGHT);
 
-  col = uiLayoutColumn(split, false);
-
-  uiItemR(col, &ptr, "use_only_smooth", 0, NULL, ICON_NONE);
-  uiItemR(col, &ptr, "use_pin_boundary", 0, NULL, ICON_NONE);
+  uiItemR(layout, &ptr, "use_only_smooth", 0, NULL, ICON_NONE);
+  uiItemR(layout, &ptr, "use_pin_boundary", 0, NULL, ICON_NONE);
 
   uiItemR(layout, &ptr, "rest_source", 0, NULL, ICON_NONE);
   if (RNA_enum_get(&ptr, "rest_source") == MOD_CORRECTIVESMOOTH_RESTSOURCE_BIND) {
diff --git a/source/blender/modifiers/intern/MOD_datatransfer.c b/source/blender/modifiers/intern/MOD_datatransfer.c
index b09c76c5659..78829826f5b 100644
--- a/source/blender/modifiers/intern/MOD_datatransfer.c
+++ b/source/blender/modifiers/intern/MOD_datatransfer.c
@@ -248,19 +248,20 @@ static void panel_draw(const bContext *C, Panel *panel)
 {
   uiLayout *sub, *row;
   uiLayout *layout = panel->layout;
+
   PointerRNA ptr;
   PointerRNA ob_ptr;
   modifier_panel_get_property_pointers(C, panel, &ob_ptr, &ptr);
   modifier_panel_buttons(C, panel);
 
+  uiLayoutSetPropSep(layout, true);
+
   bool has_vertex_group = RNA_string_length(&ptr, "vertex_group") != 0;
 
   row = uiLayoutRow(layout, true);
   uiItemR(row, &ptr, "object", 0, IFACE_("Source"), ICON_NONE);
   uiItemR(row, &ptr, "use_object_transform", 0, "", ICON_ORIENTATION_GLOBAL);
 
-  uiItemO(layout, "Generate Data Layers", ICON_NONE, "OBJECT_OT_datalayout_transfer");
-
   row = uiLayoutRow(layout, true);
   uiItemR(row, &ptr, "max_distance", 0, NULL, ICON_NONE);
   uiItemR(row, &ptr, "use_max_distance", 0, "", ICON_STYLUS_PRESSURE);
@@ -269,11 +270,15 @@ static void panel_draw(const bContext *C, Panel *panel)
   uiItemR(layout, &ptr, "mix_factor", 0, NULL, ICON_NONE);
 
   row = uiLayoutRow(layout, true);
-  uiItemPointerR(row, &ptr, "vertex_group", &ob_ptr, "vertex_groups", "", ICON_NONE);
-  sub = uiLayoutRow(row, 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);
 
+  uiItemO(layout, "Generate Data Layers", ICON_NONE, "OBJECT_OT_datalayout_transfer");
+
   modifier_panel_end(layout, &ptr);
 }
 
@@ -289,49 +294,76 @@ static void vertex_panel_draw_header(const bContext *C, Panel *panel)
 static void vertex_panel_draw(const bContext *C, Panel *panel)
 {
   uiLayout *row;
+  uiLayout *layout = panel->layout;
+
   PointerRNA ptr;
   modifier_panel_get_property_pointers(C, panel, NULL, &ptr);
-  uiLayout *layout = panel->layout;
+
+  uiLayoutSetPropSep(layout, true);
 
   bool use_vert_data = RNA_boolean_get(&ptr, "use_vert_data");
   uiLayoutSetActive(layout, use_vert_data);
-  uiItemR(layout, &ptr, "vert_mapping", 0, "", ICON_NONE);
+  uiItemR(layout, &ptr, "vert_mapping", 0, IFACE_("Mapping"), ICON_NONE);
   row = uiLayoutRow(layout, false);
-  uiItemR(row, &ptr, "data_types_verts", UI_ITEM_R_EXPAND, NULL, ICON_NONE);
-  if (RNA_enum_get(&ptr, "data_types_verts") & DT_TYPE_MDEFORMVERT) {
-    row = uiLayoutRow(layout, false);
-    uiItemR(row, &ptr, "layers_vgroup_select_src", 0, "", ICON_NONE);
-    uiItemL(row, NULL, ICON_RIGHTARROW);
-    uiItemR(row, &ptr, "layers_vgroup_select_dst", 0, "", ICON_NONE);
-  }
+  uiItemR(row, &ptr, "data_types_verts", 0, IFACE_("Data Types"), ICON_NONE);
 }
 
-static void edge_panel_draw_header(const bContext *C, Panel *panel)
+static void vertex_vgroup_panel_draw_header(const bContext *C, Panel *panel)
 {
+  uiLayout *layout = panel->layout;
+
   PointerRNA ptr;
   modifier_panel_get_property_pointers(C, panel, NULL, &ptr);
+
+  PropertyRNA *prop = RNA_struct_find_property(&ptr, "data_types_verts");
+  uiItemFullR(layout, &ptr, prop, 0, 1, 0, NULL, ICON_NONE);
+}
+
+static void vertex_vgroup_panel_draw(const bContext *C, Panel *panel)
+{
   uiLayout *layout = panel->layout;
 
+  PointerRNA ptr;
+  modifier_panel_get_property_pointers(C, panel, NULL, &ptr);
+
+  uiLayoutSetPropSep(layout, true);
+
+  uiLayoutSetActive(layout, RNA_enum_get(&ptr, "data_types_verts") & DT_TYPE_MDEFORMVERT);
+  uiItemR(layout, &ptr, "layers_vgroup_select_src", 0, NULL, ICON_NONE);
+  uiItemR(layout, &ptr, "layers_vgroup_select_dst", 0, NULL, ICON_NONE);
+}
+
+static void edge_panel_draw_header(const bContext *C, Panel *panel)
+{
+  uiLayout *layout = panel->layout;
+
+  PointerRNA ptr;
+  modifier_panel_get_property_pointers(C, panel, NULL, &ptr);
+
   uiItemR(layout, &ptr, "use_edge_data", 0, NULL, ICON_NONE);
 }
 
 static void edge_panel_draw(const bContext *C, Panel *panel)
 {
+  uiLayout *layout = panel->layout;
+
   PointerRNA ptr;
   modifier_panel_get_property_pointers(C, panel, NULL, &ptr);
-  uiLayout *layout = panel->layout;
+
+  uiLayoutSetPropSep(layout, true);
 
   bool use_edge_data = RNA_boolean_get(&ptr, "use_edge_data");
   uiLayoutSetActive(layout, use_edge_data);
-  uiItemR(layout, &ptr, "edge_mapping", 0, "", ICON_NONE);
-  uiItemR(layout, &ptr, "data_types_edges", 0, NULL, ICON_NONE);
+  uiItemR(layout, &ptr, "edge_mapping", 0, IFACE_("Mapping"), ICON_NONE);
+  uiItemR(layout, &ptr, "data_types_edges", 0, IFACE_("Data Types"), ICON_NONE);
 }
 
 static void face_corner_panel_draw_header(const bContext *C, Panel *panel)
 {
+  uiLayout *layout = panel->layout;
+
   PointerRNA ptr;
   modifier_panel_get_property_pointers(C, panel, NULL, &ptr);
-  uiLayout *layout = panel->layout;
 
   uiItemR(layout, &ptr, "use_loop_data", 0, NULL, ICON_NONE);
 }
@@ -339,15 +371,19 @@ static void face_corner_panel_draw_header(const bContext *C, Panel *panel)
 static void face_corner_panel_draw(const bContext *C, Panel *panel)
 {
   uiLayout *row, *split, *col;
+  uiLayout *layout = panel->layout;
+
   PointerRNA ptr;
   modifier_panel_get_property_pointers(C, panel, NULL, &ptr);
-  uiLayout *layout = panel->layout;
+
+  uiLayoutSetPropSep(layout, true);
 
   bool use_loop_data = RNA_boolean_get(&ptr, "use_loop_data");
   uiLayoutSetActive(layout, use_loop_data);
-  uiItemR(layout, &ptr, "loop_mapping", 0, "", ICON_NONE);
+  uiItemR(layout, &ptr, "loop_mapping", 0, IFACE_("Mapping"), ICON_NONE);
   row = uiLayoutRow(layout, false);
-  uiItemR(row, &ptr, "data_types_loops", UI_ITEM_R_EXPAND, NULL, ICON_NONE);
+  uiItemR(row, &ptr, "data_types_loops", 0, IFACE_("Data Types"), ICON_NONE);
+
   if (RNA_enum_get(&ptr, "data_types_loops") &

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list