- Home /
How to indent EditorGUILayout.BeginToggleGroup()
In my editor script I have a couple nested foldouts. I am using EditorGUI.indentLevel++
and EditorGUI.indentLevel--
to change the indent level of the inspector, however this doesn't affect the EditorGUILayout.BeginToggleGroup()
. The indentation applies itself to the contents within the toggle group, but not for the toggle group itself. If and how I can make the indentation apply to the toggle group as well?
Here is the example of one such foldout:
ob.xBounds = EditorGUILayout.Foldout (ob.xBounds, "X Bounds");
if (ob.xBounds) {
EditorGUI.indentLevel++;
ob.useMinX = EditorGUILayout.BeginToggleGroup ("Minimum", ob.useMinX);
ob.minX = EditorGUILayout.FloatField ("Min X", ob.minX);
EditorGUILayout.EndToggleGroup ();
ob.useMaxX = EditorGUILayout.BeginToggleGroup ("Maximum", ob.useMaxX);
ob.maxX = EditorGUILayout.FloatField ("Max X", ob.maxX);
EditorGUILayout.EndToggleGroup ();
ob.useFixedX = EditorGUILayout.BeginToggleGroup ("Fixed X Position", ob.useFixedX);
ob.fixedX = EditorGUILayout.FloatField ("Fixed at", ob.fixedX);
EditorGUILayout.EndToggleGroup ();
EditorGUI.indentLevel--;
}
Answer by Razeeo · Aug 28, 2013 at 02:41 AM
So, I battled with this for a considerable amount of time recently too. I think there may be a bug (who knows) with toggle group formatting. What you need to do is encapsulate your entire block inside a horizontal layout element so that you can manually shift it using the GUILayout.Space function, and then inside that, encapsulate your actual toggle group inside a vertical layout element, otherwise the contents of your toggle group won't be lined up vertically. Here's an example:
EditorGUILayout.BeginHorizontal();
GUILayout.Space(55);
EditorGUILayout.BeginVertical();
EditorGUILayout.BeginToggleGroup("PleaseIndent", toggleVar);
EditorGUILayout.FloatField("ToggleGroupAttribute", floatVar);
EditorGUILayout.EndToggleGroup();
EditorGUILayout.EndVertical();
EditorGUILayout.EndHorizontal();
Enjoy.
Your answer
Follow this Question
Related Questions
Toggles in Inspector Not Working Properly 2 Answers
Missing Inspector 1 Answer
UI Toggle OnValueChanged sometimes forces me to select an input. 1 Answer
Mixed-state toggles for multi-object editing? 1 Answer
Inspector browsing problem 1 Answer