Beispiel #1
0
        private void OnStateChangedHandler(INPUT_FIELD_STATES newState)
        {
            bool hasError = newState != INPUT_FIELD_STATES.NONE;

            gameObject.SetActive(hasError);

            if (hasError)
            {
                ShowErrorTextByType(newState);
            }
        }
Beispiel #2
0
        private void OnValueChangedHandler(string newValue)
        {
            INPUT_FIELD_STATES newState = InputState.Value;

            newState = CheckForOverflow(newValue, newState);
            newState = CheckForInvalid(newValue, newState);

            if (newState != InputState.Value)
            {
                InputState.Value = newState;
            }
        }
Beispiel #3
0
        private INPUT_FIELD_STATES CheckForOverflow(string newValue, INPUT_FIELD_STATES state)
        {
            if (newValue.Length > maxLength)
            {
                state |= INPUT_FIELD_STATES.OVERFLOW;
            }
            else
            {
                state &= ~INPUT_FIELD_STATES.OVERFLOW;
            }

            return(state);
        }
Beispiel #4
0
        private INPUT_FIELD_STATES CheckForInvalid(string newValue, INPUT_FIELD_STATES state)
        {
            bool hasInvalid = Regex.IsMatch(newValue, regexPattern);

            if (hasInvalid)
            {
                state |= INPUT_FIELD_STATES.INVALID;
            }
            else
            {
                state &= ~INPUT_FIELD_STATES.INVALID;
            }

            return(state);
        }
Beispiel #5
0
        private void ShowErrorTextByType(INPUT_FIELD_STATES state)
        {
            StringBuilder builder = new StringBuilder();

            if ((state & INPUT_FIELD_STATES.OVERFLOW) == INPUT_FIELD_STATES.OVERFLOW)
            {
                builder.AppendLine(overflowTextError);
            }

            if ((state & INPUT_FIELD_STATES.INVALID) == INPUT_FIELD_STATES.INVALID)
            {
                builder.AppendLine(invalidTextError);
            }

            errorText.text = builder.ToString();
        }
Beispiel #6
0
 private void OnStateChangedHandler(INPUT_FIELD_STATES state)
 {
     btn.interactable = state == INPUT_FIELD_STATES.NONE;
 }