X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/57c4d796c56bd48ce370240107f3e4c07e142985..f1c40652a0c2d6752c57df1b8aed22fae7e118dd:/include/wx/validate.h diff --git a/include/wx/validate.h b/include/wx/validate.h index 370f38e473..55005f9d87 100644 --- a/include/wx/validate.h +++ b/include/wx/validate.h @@ -1,31 +1,25 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: validate.h +// Name: wx/validate.h // Purpose: wxValidator class // Author: Julian Smart // Modified by: // Created: 29/01/98 // RCS-ID: $Id$ // Copyright: (c) 1998 Julian Smart -// Licence: wxWindows license +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#ifndef _WX_VALIDATEH__ -#define _WX_VALIDATEH__ +#ifndef _WX_VALIDATE_H_ +#define _WX_VALIDATE_H_ -#ifdef __GNUG__ - #pragma interface "validate.h" -#endif +#include "wx/defs.h" -#include "wx/event.h" +#if wxUSE_VALIDATORS -#if defined(wxUSE_VALIDATORS) && !wxUSE_VALIDATORS - // wxWindows is compiled without support for wxValidator - class WXDLLEXPORT wxValidator; - #define wxDefaultValidator (*((wxValidator *)NULL)) -#else // wxUSE_VALIDATORS +#include "wx/event.h" -class WXDLLEXPORT wxWindow; -class WXDLLEXPORT wxWindowBase; +class WXDLLIMPEXP_FWD_CORE wxWindow; +class WXDLLIMPEXP_FWD_CORE wxWindowBase; /* A validator has up to three purposes: @@ -39,7 +33,7 @@ class WXDLLEXPORT wxWindowBase; Note that wxValidator and derived classes use reference counting. */ -class WXDLLEXPORT wxValidator : public wxEvtHandler +class WXDLLIMPEXP_CORE wxValidator : public wxEvtHandler { public: wxValidator(); @@ -50,19 +44,19 @@ public: // 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 (wxValidator *)NULL; } + { return NULL; } bool Copy(const wxValidator& val) - { m_validatorWindow = val.m_validatorWindow; return TRUE; } + { m_validatorWindow = val.m_validatorWindow; return true; } // Called when the value in the window must be validated. // This function can pop up an error message. - virtual bool Validate(wxWindow *WXUNUSED(parent)) { return FALSE; }; + virtual bool Validate(wxWindow *WXUNUSED(parent)) { return false; } // Called to transfer data to the window - virtual bool TransferToWindow() { return FALSE; } + virtual bool TransferToWindow() { return false; } // Called to transfer data from the window - virtual bool TransferFromWindow() { return FALSE; }; + virtual bool TransferFromWindow() { return false; } // accessors wxWindow *GetWindow() const { return (wxWindow *)m_validatorWindow; } @@ -71,7 +65,7 @@ public: // validators beep by default if invalid key is pressed, these functions // allow to change it static bool IsSilent() { return ms_isSilent; } - static void SetBellOnError(bool doIt = TRUE) { ms_isSilent = doIt; } + static void SetBellOnError(bool doIt = true) { ms_isSilent = doIt; } protected: wxWindowBase *m_validatorWindow; @@ -80,15 +74,25 @@ private: static bool ms_isSilent; DECLARE_DYNAMIC_CLASS(wxValidator) + wxDECLARE_NO_COPY_CLASS(wxValidator); }; -#if defined(__VISAGECPP__) -WXDLLEXPORT_DATA(extern const wxValidator*) wxDefaultValidator; -#else -WXDLLEXPORT_DATA(extern const wxValidator) wxDefaultValidator; -#endif +extern WXDLLIMPEXP_DATA_CORE(const wxValidator) wxDefaultValidator; + +#define wxVALIDATOR_PARAM(val) val + +#else // !wxUSE_VALIDATORS + // wxWidgets is compiled without support for wxValidator, but we still + // want to be able to pass wxDefaultValidator to the functions which take + // a wxValidator parameter to avoid using "#if wxUSE_VALIDATORS" + // everywhere + class WXDLLIMPEXP_FWD_CORE wxValidator; + #define wxDefaultValidator (*(NULL)) + + // this macro allows to avoid warnings about unused parameters when + // wxUSE_VALIDATORS == 0 + #define wxVALIDATOR_PARAM(val) +#endif // wxUSE_VALIDATORS/!wxUSE_VALIDATORS -#endif // wxUSE_VALIDATORS +#endif // _WX_VALIDATE_H_ -#endif - // _WX_VALIDATEH__