NAME

     QValidator - Validation of input text


SYNOPSIS

     #include <qvalidator.h>

     Inherits QObject.

     Inherited by QIntValidator, QDoubleValidator, and
     QRegExpValidator.

  Public Members
     QValidator ( QObject * parent, const char * name = 0 )
     ~QValidator ()
     enum State { Invalid, Intermediate, Valid = Intermediate,
         Acceptable }
     virtual State validate ( QString & input, int & pos ) const
         = 0
     virtual void fixup ( QString & input ) const


DESCRIPTION

     The QValidator class provides validation of input text.

     The class itself is abstract. Two subclasses, QIntValidator
     and QDoubleValidator, provide basic numeric-range checking,
     and QRegExpValidator provides general checking using a
     custom regular expression.

     If the built-in validators aren't sufficient, you can
     subclass QValidator. The class has two virtual functions:
     validate() and fixup().

     validate() must be implemented by every subclass. It returns
     Invalid, Intermediate or Acceptable depending on whether its
     argument is valid (for the subclass's definition of valid).

     These three states require some explanation. An Invalid
     string is clearly invalid. Intermediate is less obvious: the
     concept of validity is slippery when the string is
     incomplete (still being edited). QValidator defines
     Intermediate as the property of a string that is neither
     clearly invalid nor acceptable as a final result. Acceptable
     means that the string is acceptable as a final result. One
     might say that any string that is a plausible intermediate
     state during entry of an Acceptable string is Intermediate.

     Here are some examples:



and 666 are Acceptable, the empty string and 1114 are
Intermediate and asdf is Invalid.
     For a line edit that accepts integers from 0 to 999 inclusive, 42



is Acceptable, "http://www.trolltech.com/," is Intermediate (it
might be a cut-and-paste that accidentally took in a comma at the
end), the empty string is valid (the user might select and delete
all of the text in preparation of entering a new URL) and"
http:///./" is Invalid.
     For an editable combobox that accepts URLs, any well-
          formed URL



Acceptable, "11" and the empty string are Intermediate and"
http://www.trolltech.com" and "hour" are Invalid.
     For a spin box that accepts lengths, "11cm" and "1in" are



     fixup() is provided for validators that can repair some user
     errors. The default implementation does nothing. QLineEdit,
     for example, will call fixup() if the user presses Enter (or
     Return) and the content is not currently valid. This allows
     the fixup() function the opportunity of performing some
     magic to make an Invalid string Acceptable.

     QValidator is typically used with QLineEdit, QSpinBox and
     QComboBox.

     See also Miscellaneous Classes.

  Member Type Documentation

QValidator::State

     This enum type defines the states in which a validated
     string can exist.

     QValidator::Invalid - the string is clearly invalid.

value during editing.
     QValidator::Intermediate -
           the string is a plausible intermediate

result, i.e. it is valid.
     QValidator::Acceptable - the string is acceptable as a final


MEMBER FUNCTION DOCUMENTATION


QValidator::QValidator ( QObject * parent, const char * name = 0

     )
     Sets up the validator. The parent and name parameters are
     passed on to the QObject constructor.


QValidator::~QValidator ()

     Destroys the validator, freeing any storage and other
     resources used.


void QValidator::fixup ( QString & input ) const [virtual]

     This function attempts to change input to be valid according
     to this validator's rules. It need not result in a valid
     string: callers of this function must re-test afterwards;
     the default does nothing.

     Reimplementations of this function can change input even if
     they do not produce a valid string. For example, an ISBN
     validator might want to delete every character except digits
     and "-", even if the result is still not a valid ISBN; a
     surname validator might want to remove whitespace from the
     start and end of the string, even if the resulting string is
     not in the list of accepted surnames.


State QValidator::validate ( QString & input, int & pos ) const

     [pure virtual]
     This pure virtual function returns Invalid if input is
     invalid according to this validator's rules, Intermediate if
     it is likely that a little more editing will make the input
     acceptable (e.g. the user types '4' into a widget which
     accepts integers between 10 and 99) and Acceptable if the
     input is valid.

     The function can change input and pos (the cursor position)
     if it wants to.

     Reimplemented in QIntValidator, QDoubleValidator, and
     QRegExpValidator.



SEE ALSO

     http://doc.trolltech.com/qvalidator.html
     http://www.trolltech.com/faq/tech.html


COPYRIGHT

     Copyright 1992-2001 Trolltech AS, http://www.trolltech.com.
     See the license file included in the distribution for a
     complete license statement.


AUTHOR

     Generated automatically from the source code.


BUGS

     If you find a bug in Qt, please report it as described in
     http://doc.trolltech.com/bughowto.html.  Good bug reports
     help us to help you. Thank you.


     The definitive Qt documentation is provided in HTML format;
     it is located at $QTDIR/doc/html and can be read using Qt
     Assistant or with a web browser. This man page is provided
     as a convenience for those users who prefer man pages,
     although this format is not officially supported by
     Trolltech.

     If you find errors in this manual page, please report them
     to qt-bugs@trolltech.com.  Please include the name of the
     manual page (qvalidator.3qt) and the Qt version (3.2.0b2).











































Man(1) output converted with man2html