1 ///////////////////////////////////////////////////////////////////////////// 2 // Name: valgen.h 3 // Purpose: wxGenericValidator class 4 // Author: Kevin Smith 5 // Modified by: 6 // Created: Jan 22 1999 7 // RCS-ID: 8 // Copyright: (c) 1999 Julian Smart (assigned from Kevin) 9 // Licence: wxWindows licence 10 ///////////////////////////////////////////////////////////////////////////// 11 12 #ifndef _WX_VALGENH__ 13 #define _WX_VALGENH__ 14 15 #include "wx/validate.h" 16 17 #if wxUSE_VALIDATORS 18 19 class WXDLLEXPORT wxGenericValidator: public wxValidator 20 { 21 DECLARE_CLASS(wxGenericValidator) 22 public: 23 wxGenericValidator(bool* val); 24 wxGenericValidator(int* val); 25 wxGenericValidator(wxString* val); 26 wxGenericValidator(wxArrayInt* val); 27 wxGenericValidator(const wxGenericValidator& copyFrom); 28 ~wxGenericValidator()29 virtual ~wxGenericValidator(){} 30 31 // Make a clone of this validator (or return NULL) - currently necessary 32 // if you're passing a reference to a validator. 33 // Another possibility is to always pass a pointer to a new validator 34 // (so the calling code can use a copy constructor of the relevant class). Clone()35 virtual wxObject *Clone() const { return new wxGenericValidator(*this); } 36 bool Copy(const wxGenericValidator& val); 37 38 // Called when the value in the window must be validated. 39 // This function can pop up an error message. Validate(wxWindow * WXUNUSED (parent))40 virtual bool Validate(wxWindow * WXUNUSED(parent)) { return true; } 41 42 // Called to transfer data to the window 43 virtual bool TransferToWindow(); 44 45 // Called to transfer data to the window 46 virtual bool TransferFromWindow(); 47 48 protected: 49 void Initialize(); 50 51 bool* m_pBool; 52 int* m_pInt; 53 wxString* m_pString; 54 wxArrayInt* m_pArrayInt; 55 56 private: 57 // Cannot use 58 // DECLARE_NO_COPY_CLASS(wxGenericValidator) 59 // because copy constructor is explicitly declared above; 60 // but no copy assignment operator is defined, so declare 61 // it private to prevent the compiler from defining it: 62 wxGenericValidator& operator=(const wxGenericValidator&); 63 }; 64 65 #endif 66 // wxUSE_VALIDATORS 67 68 #endif 69 // _WX_VALGENH__ 70