totalPosition | Rectangle on the screen to use for the control, including label if applicable. |
label | Optional label in front of the slider. Use null to use the name from the SerializedProperty. Use GUIContent.none to not display a label. |
property | The SerializedProperty to use for the control. |
Create a Property wrapper, useful for making regular GUI controls work with SerializedProperty.
// A slider function that takes a SerializedProperty function Slider (position : Rect, property : SerializedProperty, leftValue : float, rightValue : float, label : GUIContent) { label = EditorGUI.BeginProperty (position, label, property); EditorGUI.BeginChangeCheck (); var newValue = EditorGUI.Slider (position, label, property.floatValue, leftValue, rightValue); // Only assign the value back if it was actually changed by the user. // Otherwise a single value will be assigned to all objects when multi-object editing, // even when the user didn't touch the control. if (EditorGUI.EndChangeCheck ()) property.floatValue = newValue; EditorGUI.EndProperty (); }