Skip to content

Commit e721567

Browse files
committed
style(editor): DisabledGroup scoping
Code between calls EditorGUI.BeginDisabledGroup and EditorGUI.EndDisabledGroup scoped for clarity.
1 parent 7bf06ba commit e721567

File tree

1 file changed

+66
-55
lines changed

1 file changed

+66
-55
lines changed

Editor/LODGeneratorHelperEditor.cs

Lines changed: 66 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -135,22 +135,28 @@ private void DrawGeneratedView()
135135
private void DrawNotGeneratedView()
136136
{
137137
EditorGUI.BeginDisabledGroup(customizeSettingsProperty.boolValue == true);
138-
EditorGUILayout.ObjectField(lodGeneratorPresetProperty, typeof(LODGeneratorPreset));
138+
{
139+
EditorGUILayout.ObjectField(lodGeneratorPresetProperty, typeof(LODGeneratorPreset));
140+
}
139141
EditorGUI.EndDisabledGroup();
140142

141143
EditorGUILayout.PropertyField(customizeSettingsProperty);
142144

143145
EditorGUI.BeginDisabledGroup(customizeSettingsProperty.boolValue == false);
144-
EditorGUILayout.PropertyField(fadeModeProperty);
146+
{
147+
EditorGUILayout.PropertyField(fadeModeProperty);
148+
}
145149
EditorGUI.EndDisabledGroup();
146150
var fadeMode = (LODFadeMode)fadeModeProperty.intValue;
147151

148152
bool hasCrossFade = (fadeMode == LODFadeMode.CrossFade || fadeMode == LODFadeMode.SpeedTree);
149153

150154
EditorGUI.BeginDisabledGroup(customizeSettingsProperty.boolValue == false);
151-
if (hasCrossFade)
152155
{
153-
EditorGUILayout.PropertyField(animateCrossFadingProperty);
156+
if (hasCrossFade)
157+
{
158+
EditorGUILayout.PropertyField(animateCrossFadingProperty);
159+
}
154160
}
155161
EditorGUI.EndDisabledGroup();
156162

@@ -196,9 +202,11 @@ private void DrawNotGeneratedView()
196202
}
197203

198204
EditorGUI.BeginDisabledGroup(customizeSettingsProperty.boolValue == false);
199-
if (GUILayout.Button(createLevelButtonContent))
200205
{
201-
CreateLevel();
206+
if (GUILayout.Button(createLevelButtonContent))
207+
{
208+
CreateLevel();
209+
}
202210
}
203211
EditorGUI.EndDisabledGroup();
204212

@@ -231,72 +239,75 @@ private void DrawSimplificationOptions()
231239

232240
private void DrawLevel(int index, SerializedProperty levelProperty, bool hasCrossFade)
233241
{
234-
EditorGUI.BeginDisabledGroup(customizeSettingsProperty.boolValue == false);
235-
EditorGUILayout.BeginVertical(EditorStyles.helpBox);
236-
EditorGUILayout.BeginHorizontal(EditorStyles.helpBox);
237-
GUILayout.Label(string.Format("Level {0}", index + 1), EditorStyles.boldLabel);
242+
var renderersProperty = levelProperty.FindPropertyRelative(LevelRenderersFieldName);
238243

239-
var previousBackgroundColor = GUI.backgroundColor;
240-
GUI.backgroundColor = removeColor;
241-
if (GUILayout.Button(deleteLevelButtonContent, GUILayout.Width(RemoveLevelButtonSize)))
244+
EditorGUI.BeginDisabledGroup(customizeSettingsProperty.boolValue == false);
242245
{
243-
DeleteLevel(index);
244-
}
245-
GUI.backgroundColor = previousBackgroundColor;
246-
EditorGUILayout.EndHorizontal();
247-
248-
++EditorGUI.indentLevel;
249-
250-
var screenRelativeHeightProperty = levelProperty.FindPropertyRelative(LevelScreenRelativeHeightFieldName);
251-
EditorGUILayout.PropertyField(screenRelativeHeightProperty);
246+
EditorGUILayout.BeginVertical(EditorStyles.helpBox);
247+
EditorGUILayout.BeginHorizontal(EditorStyles.helpBox);
248+
GUILayout.Label(string.Format("Level {0}", index + 1), EditorStyles.boldLabel);
252249

253-
var qualityProperty = levelProperty.FindPropertyRelative(LevelQualityFieldName);
254-
EditorGUILayout.PropertyField(qualityProperty);
250+
var previousBackgroundColor = GUI.backgroundColor;
251+
GUI.backgroundColor = removeColor;
252+
if (GUILayout.Button(deleteLevelButtonContent, GUILayout.Width(RemoveLevelButtonSize)))
253+
{
254+
DeleteLevel(index);
255+
}
256+
GUI.backgroundColor = previousBackgroundColor;
257+
EditorGUILayout.EndHorizontal();
255258

256-
bool animateCrossFading = (hasCrossFade ? animateCrossFadingProperty.boolValue : false);
257-
settingsExpanded[index] = EditorGUILayout.Foldout(settingsExpanded[index], settingsContent);
258-
if (settingsExpanded[index])
259-
{
260259
++EditorGUI.indentLevel;
261260

262-
var combineMeshesProperty = levelProperty.FindPropertyRelative(LevelCombineMeshesFieldName);
263-
EditorGUILayout.PropertyField(combineMeshesProperty);
261+
var screenRelativeHeightProperty = levelProperty.FindPropertyRelative(LevelScreenRelativeHeightFieldName);
262+
EditorGUILayout.PropertyField(screenRelativeHeightProperty);
264263

265-
if (combineMeshesProperty.boolValue)
266-
{
267-
var combineSubMeshesProperty = levelProperty.FindPropertyRelative(LevelCombineSubMeshesFieldName);
268-
EditorGUILayout.PropertyField(combineSubMeshesProperty);
269-
}
264+
var qualityProperty = levelProperty.FindPropertyRelative(LevelQualityFieldName);
265+
EditorGUILayout.PropertyField(qualityProperty);
270266

271-
var childProperties = levelProperty.GetChildProperties();
272-
foreach (var childProperty in childProperties)
267+
bool animateCrossFading = (hasCrossFade ? animateCrossFadingProperty.boolValue : false);
268+
settingsExpanded[index] = EditorGUILayout.Foldout(settingsExpanded[index], settingsContent);
269+
if (settingsExpanded[index])
273270
{
274-
if (string.Equals(childProperty.name, LevelScreenRelativeHeightFieldName) || string.Equals(childProperty.name, LevelQualityFieldName) ||
275-
string.Equals(childProperty.name, LevelCombineMeshesFieldName) || string.Equals(childProperty.name, LevelCombineSubMeshesFieldName) ||
276-
string.Equals(childProperty.name, LevelRenderersFieldName))
271+
++EditorGUI.indentLevel;
272+
273+
var combineMeshesProperty = levelProperty.FindPropertyRelative(LevelCombineMeshesFieldName);
274+
EditorGUILayout.PropertyField(combineMeshesProperty);
275+
276+
if (combineMeshesProperty.boolValue)
277277
{
278-
continue;
278+
var combineSubMeshesProperty = levelProperty.FindPropertyRelative(LevelCombineSubMeshesFieldName);
279+
EditorGUILayout.PropertyField(combineSubMeshesProperty);
279280
}
280-
else if ((!hasCrossFade || !animateCrossFading) && string.Equals(childProperty.name, LevelFadeTransitionWidthFieldName))
281+
282+
var childProperties = levelProperty.GetChildProperties();
283+
foreach (var childProperty in childProperties)
281284
{
282-
continue;
285+
if (string.Equals(childProperty.name, LevelScreenRelativeHeightFieldName) || string.Equals(childProperty.name, LevelQualityFieldName) ||
286+
string.Equals(childProperty.name, LevelCombineMeshesFieldName) || string.Equals(childProperty.name, LevelCombineSubMeshesFieldName) ||
287+
string.Equals(childProperty.name, LevelRenderersFieldName))
288+
{
289+
continue;
290+
}
291+
else if ((!hasCrossFade || !animateCrossFading) && string.Equals(childProperty.name, LevelFadeTransitionWidthFieldName))
292+
{
293+
continue;
294+
}
295+
296+
EditorGUILayout.PropertyField(childProperty, true);
283297
}
284298

285-
EditorGUILayout.PropertyField(childProperty, true);
299+
--EditorGUI.indentLevel;
286300
}
287301

288-
--EditorGUI.indentLevel;
289-
}
290-
291-
// Remove any null renderers
292-
var renderersProperty = levelProperty.FindPropertyRelative(LevelRenderersFieldName);
293-
for (int rendererIndex = renderersProperty.arraySize - 1; rendererIndex >= 0; rendererIndex--)
294-
{
295-
var rendererProperty = renderersProperty.GetArrayElementAtIndex(rendererIndex);
296-
var renderer = rendererProperty.objectReferenceValue as Renderer;
297-
if (renderer == null)
302+
// Remove any null renderers
303+
for (int rendererIndex = renderersProperty.arraySize - 1; rendererIndex >= 0; rendererIndex--)
298304
{
299-
renderersProperty.DeleteArrayElementAtIndex(rendererIndex);
305+
var rendererProperty = renderersProperty.GetArrayElementAtIndex(rendererIndex);
306+
var renderer = rendererProperty.objectReferenceValue as Renderer;
307+
if (renderer == null)
308+
{
309+
renderersProperty.DeleteArrayElementAtIndex(rendererIndex);
310+
}
300311
}
301312
}
302313
EditorGUI.EndDisabledGroup();

0 commit comments

Comments
 (0)