Exemple #1
0
 public static float FloatField(GUIContent label, float value,
                                FloatChangeHandler change, FloatFailureHandler failure = null, FloatValidationHandler validate = null,
                                params GUILayoutOption[] options)
 {
     EditorGUI.BeginChangeCheck();
     value = EditorGUILayout.FloatField(label, value, options);
     if (EditorGUI.EndChangeCheck())
     {
         FloatApplyChangeHandlers(value, change, failure, validate);
     }
     return(value);
 }
Exemple #2
0
        private static void FloatApplyChangeHandlers(float value, FloatChangeHandler change, FloatFailureHandler failure, FloatValidationHandler validate)
        {
            bool validated = (validate == null) ? true : validate(value);

            if (validated)
            {
                change(value);
            }
            else if (!validated && failure != null)
            {
                failure();
            }
        }