Create a group of controls that can be disabled.
If disabled is true, the controls inside the group will be disabled.
If false, the enabled/disabled state will not be changed.
The group cannot be used to enable controls that would otherwise be disabled to begin with.
The groups can be nested and the controls within a child group will be disabled
both if that child group is itself disabled or if a parent group is.
#pragma strict canJump = EditorGUILayout.Toggle("Can Jump", canJump); var group = EditorGUI.BeginDisabledGroup(canJump == false); { jumpHeight = EditorGUILayout.FloatField("Jump Height", jumpHeight); }
class ExampleClass { void Example() { canJump = EditorGUILayout.Toggle ("Can Jump", canJump); // Disable the jumping height control if canJump is false: using (var group = EditorGUI.BeginDisabledGroup (canJump == false)) { jumpHeight = EditorGUILayout.FloatField ("Jump Height", jumpHeight); } } }
The group cannot be used to enable controls that would otherwise be disabled to begin with. The groups can be nested and the controls within a child group will be disabled both if that child group is itself disabled or if a parent group is.
EditorGUI.DisabledGroupScope | Create a new DisabledGroupScope and begin the corresponding group. |