- 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