[Bf-blender-cvs] [3d9af1de8d4] modifier-panels-ui: Ocean: move spectrum to subpanel

Hans Goudey noreply at git.blender.org
Fri Apr 3 23:47:18 CEST 2020


Commit: 3d9af1de8d473ce329234b052cdc36f71f01ced1
Author: Hans Goudey
Date:   Fri Apr 3 16:17:48 2020 -0500
Branches: modifier-panels-ui
https://developer.blender.org/rB3d9af1de8d473ce329234b052cdc36f71f01ced1

Ocean: move spectrum to subpanel

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

M	source/blender/modifiers/intern/MOD_ocean.c

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

diff --git a/source/blender/modifiers/intern/MOD_ocean.c b/source/blender/modifiers/intern/MOD_ocean.c
index b1fad0df508..95010b746b8 100644
--- a/source/blender/modifiers/intern/MOD_ocean.c
+++ b/source/blender/modifiers/intern/MOD_ocean.c
@@ -518,8 +518,6 @@ static void panel_draw(const bContext *C, Panel *panel)
   PointerRNA ob_ptr;
   modifier_panel_get_property_pointers(C, panel, &ob_ptr, &ptr);
 
-  int spectrum = RNA_enum_get(&ptr, "spectrum");
-
   uiItemR(layout, &ptr, "geometry_mode", 0, NULL, ICON_NONE);
   if (RNA_enum_get(&ptr, "geometry_mode") == MOD_OCEAN_GEOM_GENERATE) {
     row = uiLayoutRow(layout, false);
@@ -540,15 +538,6 @@ static void panel_draw(const bContext *C, Panel *panel)
   uiItemR(col, &ptr, "size", 0, NULL, ICON_NONE);
   uiItemR(col, &ptr, "spatial_size", 0, NULL, ICON_NONE);
 
-  uiItemS(layout);
-
-  /* Spectrum settings. */
-  uiItemR(layout, &ptr, "spectrum", 0, NULL, ICON_NONE);
-  if (ELEM(spectrum, MOD_OCEAN_SPECTRUM_TEXEL_MARSEN_ARSLOE, MOD_OCEAN_SPECTRUM_JONSWAP)) {
-    uiItemR(layout, &ptr, "sharpen_peak_jonswap", 0, NULL, ICON_NONE);
-    uiItemR(layout, &ptr, "fetch_jonswap", 0, NULL, ICON_NONE);
-  }
-
   uiItemR(layout, &ptr, "use_normals", 0, NULL, ICON_NONE);
 
   modifier_panel_end(layout, &ptr);
@@ -613,6 +602,22 @@ static void foam_panel_draw(const bContext *C, Panel *panel)
   uiItemR(col, &ptr, "foam_layer_name", 0, "", ICON_NONE);
 }
 
+static void spectrum_panel_draw(const bContext *C, Panel *panel)
+{
+  uiLayout *layout = panel->layout;
+
+  PointerRNA ptr;
+  modifier_panel_get_property_pointers(C, panel, NULL, &ptr);
+
+  int spectrum = RNA_enum_get(&ptr, "spectrum");
+
+  uiItemR(layout, &ptr, "spectrum", 0, NULL, ICON_NONE);
+  if (ELEM(spectrum, MOD_OCEAN_SPECTRUM_TEXEL_MARSEN_ARSLOE, MOD_OCEAN_SPECTRUM_JONSWAP)) {
+    uiItemR(layout, &ptr, "sharpen_peak_jonswap", 0, NULL, ICON_NONE);
+    uiItemR(layout, &ptr, "fetch_jonswap", 0, NULL, ICON_NONE);
+  }
+}
+
 static void bake_panel_draw(const bContext *C, Panel *panel)
 {
   uiLayout *col;
@@ -658,9 +663,11 @@ static void panelRegister(ARegionType *region_type)
   PanelType *panel_type = modifier_panel_register(region_type, "Ocean", panel_draw);
 #ifdef WITH_OCEANSIM
   modifier_subpanel_register(
-      region_type, "ocean_waves", "Waves", NULL, waves_panel_draw, true, panel_type);
+      region_type, "ocean_waves", "Waves", NULL, waves_panel_draw, false, panel_type);
   modifier_subpanel_register(
       region_type, "ocean_foam", "", foam_panel_draw_header, foam_panel_draw, false, panel_type);
+  modifier_subpanel_register(
+      region_type, "ocean_spectrum", "Spectrum", NULL, spectrum_panel_draw, false, panel_type);
   modifier_subpanel_register(
       region_type, "ocean_bake", "Bake", NULL, bake_panel_draw, false, panel_type);
 #endif /* WITH_OCEANSIM */



More information about the Bf-blender-cvs mailing list