]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/valgen.h
Have the new incarnation of wxPGArrayEditorDialog support the old-style 'custom butto...
[wxWidgets.git] / include / wx / valgen.h
index 009db0c2dc1d125dd2b1748e13dfe7edd3876a83..63324a19627011ed764c13302d8a22e31c58ebe6 100644 (file)
@@ -2,57 +2,83 @@
 // Name:        valgen.h
 // Purpose:     wxGenericValidator class
 // Author:      Kevin Smith
 // Name:        valgen.h
 // Purpose:     wxGenericValidator class
 // Author:      Kevin Smith
-// Modified by:
 // Created:     Jan 22 1999
 // Created:     Jan 22 1999
-// RCS-ID:
-// Copyright:   (c) 1999 Kevin Smith
-// Licence:    wxWindows licence
+// RCS-ID:      $Id$
+// Copyright:   (c) 1999 Julian Smart (assigned from Kevin)
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef _WX_VALGENH__
 #define _WX_VALGENH__
 
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef _WX_VALGENH__
 #define _WX_VALGENH__
 
-#ifdef __GNUG__
-#pragma interface "valgen.h"
-#endif
-
 #include "wx/validate.h"
 
 #include "wx/validate.h"
 
-class WXDLLEXPORT wxGenericValidator: public wxValidator
+#if wxUSE_VALIDATORS
+
+class WXDLLIMPEXP_FWD_BASE wxDateTime;
+
+// ----------------------------------------------------------------------------
+// wxGenericValidator performs data transfer between many standard controls and
+// variables of the type corresponding to their values.
+//
+// It doesn't do any validation so its name is a slight misnomer.
+// ----------------------------------------------------------------------------
+
+class WXDLLIMPEXP_CORE wxGenericValidator: public wxValidator
 {
 public:
 {
 public:
-  wxGenericValidator(bool* val);
-  wxGenericValidator(int* val);
-  wxGenericValidator(wxString* val);
-  wxGenericValidator(wxArrayInt* val);
-  wxGenericValidator(const wxGenericValidator& copyFrom);
+    // Different constructors: each of them creates a validator which can only
+    // be used with some controls, the comments before each constructor
+    // indicate which ones:
+        // wxCheckBox, wxRadioButton, wx(Bitmap)ToggleButton
+    wxGenericValidator(bool* val);
+        // wxChoice, wxGauge, wxRadioBox, wxScrollBar, wxSlider, wxSpinButton
+    wxGenericValidator(int* val);
+        // wxComboBox, wxTextCtrl, wxButton, wxStaticText (read-only)
+    wxGenericValidator(wxString* val);
+        // wxListBox, wxCheckListBox
+    wxGenericValidator(wxArrayInt* val);
+#if wxUSE_DATETIME
+        // wxDatePickerCtrl
+    wxGenericValidator(wxDateTime* val);
+#endif // wxUSE_DATETIME
+    wxGenericValidator(const wxGenericValidator& copyFrom);
 
 
-  ~wxGenericValidator();
+    virtual ~wxGenericValidator(){}
 
 
-  // Make a clone of this validator (or return NULL) - currently necessary
-  // if you're passing a reference to a validator.
-  // Another possibility is to always pass a pointer to a new validator
-  // (so the calling code can use a copy constructor of the relevant class).
-  virtual wxObject *Clone(void) const { return new wxGenericValidator(*this); }
-  bool Copy(const wxGenericValidator& val);
+    // Make a clone of this validator (or return NULL) - currently necessary
+    // if you're passing a reference to a validator.
+    // Another possibility is to always pass a pointer to a new validator
+    // (so the calling code can use a copy constructor of the relevant class).
+    virtual wxObject *Clone() const { return new wxGenericValidator(*this); }
+    bool Copy(const wxGenericValidator& val);
 
 
-  // Called when the value in the window must be validated.
-  // This function can pop up an error message.
-  virtual bool Validate(wxWindow *parent)      {return TRUE;}
+    // Called when the value in the window must be validated: this is not used
+    // by this class
+    virtual bool Validate(wxWindow * WXUNUSED(parent)) { return true; }
 
 
-  // Called to transfer data to the window
-  virtual bool TransferToWindow(void);
+    // Called to transfer data to the window
+    virtual bool TransferToWindow();
 
 
-  // Called to transfer data to the window
-  virtual bool TransferFromWindow(void);
+    // Called to transfer data to the window
+    virtual bool TransferFromWindow();
 
 protected:
 
 protected:
-  void Initialize();
+    void Initialize();
+
+    bool*       m_pBool;
+    int*        m_pInt;
+    wxString*   m_pString;
+    wxArrayInt* m_pArrayInt;
+#if wxUSE_DATETIME
+    wxDateTime* m_pDateTime;
+#endif // wxUSE_DATETIME
 
 
-  bool*       m_pBool;
-  int*        m_pInt;
-  wxString*   m_pString;
-  wxArrayInt* m_pArrayInt;
+private:
+    DECLARE_CLASS(wxGenericValidator)
+    wxDECLARE_NO_ASSIGN_CLASS(wxGenericValidator);
 };
 
 };
 
-#endif // _WX_VALGENH__
+#endif // wxUSE_VALIDATORS
+
+#endif // _WX_VALGENH__