X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/d3b9f782ef3949f583e8ac53795d36787f044fc3..438959cca892a7651634cc3a7aad4819ac49b23c:/include/wx/validate.h diff --git a/include/wx/validate.h b/include/wx/validate.h index 353dc85dfe..e79a3becb5 100644 --- a/include/wx/validate.h +++ b/include/wx/validate.h @@ -37,6 +37,11 @@ class WXDLLIMPEXP_CORE wxValidator : public wxEvtHandler { public: wxValidator(); + wxValidator(const wxValidator& other) + : wxEvtHandler() + , m_validatorWindow(other.m_validatorWindow) + { + } virtual ~wxValidator(); // Make a clone of this validator (or return NULL) - currently necessary @@ -62,10 +67,23 @@ public: wxWindow *GetWindow() const { return (wxWindow *)m_validatorWindow; } void SetWindow(wxWindowBase *win) { m_validatorWindow = win; } - // validators beep by default if invalid key is pressed, these functions - // allow to change it + // validators beep by default if invalid key is pressed, this function + // allows to change this + static void SuppressBellOnError(bool suppress = true) + { ms_isSilent = suppress; } + + // test if beep is currently disabled static bool IsSilent() { return ms_isSilent; } - static void SetBellOnError(bool doIt = true) { ms_isSilent = doIt; } + + // this function is deprecated because it handled its parameter + // unnaturally: it disabled the bell when it was true, not false as could + // be expected; use SuppressBellOnError() instead +#if WXWIN_COMPATIBILITY_2_8 + static wxDEPRECATED_INLINE( + void SetBellOnError(bool doIt = true), + ms_isSilent = doIt; + ) +#endif protected: wxWindowBase *m_validatorWindow; @@ -74,7 +92,7 @@ private: static bool ms_isSilent; DECLARE_DYNAMIC_CLASS(wxValidator) - DECLARE_NO_COPY_CLASS(wxValidator) + wxDECLARE_NO_ASSIGN_CLASS(wxValidator); }; extern WXDLLIMPEXP_DATA_CORE(const wxValidator) wxDefaultValidator; @@ -87,7 +105,7 @@ extern WXDLLIMPEXP_DATA_CORE(const wxValidator) wxDefaultValidator; // a wxValidator parameter to avoid using "#if wxUSE_VALIDATORS" // everywhere class WXDLLIMPEXP_FWD_CORE wxValidator; - #define wxDefaultValidator (*(NULL)) + #define wxDefaultValidator (*reinterpret_cast(NULL)) // this macro allows to avoid warnings about unused parameters when // wxUSE_VALIDATORS == 0