]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/tvalidat.tex
Added some constants. wxRAISED_BORDER not GTK+-only.
[wxWidgets.git] / docs / latex / wx / tvalidat.tex
index 2709a704c69549f5cab34689c6f25706021fc7c4..f0ccdf69788136ba06306d3355d6873b8edd7f37 100644 (file)
@@ -1,6 +1,7 @@
-\section{Validator overview}\label{validatoroverview}
+\section{wxValidator overview}\label{validatoroverview}
 
-Classes: \helpref{wxValidator}{wxvalidator}, \helpref{wxTextValidator}{wxtextvalidator}
+Classes: \helpref{wxValidator}{wxvalidator}, \helpref{wxTextValidator}{wxtextvalidator}, 
+\helpref{wxGenericValidator}{wxgenericvalidator}
 
 The aim of the validator concept is to make dialogs very much easier to write.
 A validator is an object that can be plugged into a control (such as a wxTextCtrl), and
@@ -8,15 +9,17 @@ mediates between C++ data and the control, transferring the data in either direc
 and validating it. It also is able to intercept events generated
 by the control, providing filtering behaviour without the need to derive a new control class.
 
-You can use a stock validator, such as \helpref{wxTextValidator}{wxtextvalidator}; or
-you can write your own.
+You can use a stock validator, such as \helpref{wxTextValidator}{wxtextvalidator} (which does text
+control data transfer, validation and filtering) and 
+\helpref{wxGenericValidator}{wxgenericvalidator} (which does data transfer for a range of controls);
+or you can write your own.
 
 \wxheading{Example}
 
 Here is an example of wxTextValidator usage.
 
 \begin{verbatim}
-  wxTextCtrl *txt1 = new wxTextCtrl(this, VALIDATE_TEXT, "",
+  wxTextCtrl *txt1 = new wxTextCtrl(this, -1, wxT(""),
     wxPoint(10, 10), wxSize(100, 80), 0,
     wxTextValidator(wxFILTER_ALPHA, &g_data.m_string));
 \end{verbatim}
@@ -47,7 +50,7 @@ data for the control. If such a variable address is not supplied by the user, th
 the validator should store the data internally.
 
 The \helpref{wxValidator::Validate}{wxvalidatorvalidate} member function should return
-TRUE if the data in the control (not the C++ variable) is valid. It should also show
+true if the data in the control (not the C++ variable) is valid. It should also show
 an appropriate message if data was not valid.
 
 The \helpref{wxValidator::TransferToWindow}{wxvalidatortransfertowindow} member function should
@@ -85,7 +88,7 @@ call \helpref{wxWindow::InitDialog}{wxwindowinitdialog} explicitly before showin
 window.}
 
 When the user clicks on a button, for example the OK button, the application should
-first call \helpref{wxWindow::Validate}{wxwindowvalidate}, which returns FALSE if
+first call \helpref{wxWindow::Validate}{wxwindowvalidate}, which returns false if
 any of the child window validators failed to validate the window data. The button handler
 should return immediately if validation failed. Secondly, the application should
 call \helpref{wxWindow::TransferDataFromWindow}{wxwindowtransferdatafromwindow} and
@@ -105,7 +108,7 @@ void wxDialog::OnOK(wxCommandEvent& event)
         else
         {
                    SetReturnCode(wxID_OK);
-                   this->Show(FALSE);
+                   this->Show(false);
         }
        }
 }
@@ -114,3 +117,6 @@ void wxDialog::OnOK(wxCommandEvent& event)
 So if using validators and a normal OK button, you may not even need to write any
 code for handling dialog dismissal.
 
+If you load your dialog from a resource file, you will need to iterate through the controls
+setting validators, since validators can't be specified in a dialog resource.
+