1. validator fixes: don't eat TAB. Added new SetBellOnError() function to
suppress _annoying_ bell. 2. Docs and samples updated to reflect this. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1791 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -6,14 +6,14 @@
|
||||
// Created: 29/01/98
|
||||
// RCS-ID: $Id$
|
||||
// Copyright: (c) 1998 Julian Smart
|
||||
// Licence: wxWindows license
|
||||
// Licence: wxWindows license
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#ifndef _WX_VALIDATEH__
|
||||
#define _WX_VALIDATEH__
|
||||
|
||||
#ifdef __GNUG__
|
||||
#pragma interface "validate.h"
|
||||
#pragma interface "validate.h"
|
||||
#endif
|
||||
|
||||
#include "wx/event.h"
|
||||
@@ -30,38 +30,49 @@ class WXDLLEXPORT wxWindow;
|
||||
to intercept e.g. OnChar.
|
||||
|
||||
Note that wxValidator and derived classes use reference counting.
|
||||
*/
|
||||
*/
|
||||
|
||||
class WXDLLEXPORT wxValidator: public wxEvtHandler
|
||||
class WXDLLEXPORT wxValidator : public wxEvtHandler
|
||||
{
|
||||
DECLARE_DYNAMIC_CLASS(wxValidator)
|
||||
public:
|
||||
wxValidator(void);
|
||||
~wxValidator();
|
||||
wxValidator();
|
||||
~wxValidator();
|
||||
|
||||
// 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 wxValidator *Clone(void) const { return (wxValidator *) NULL; }
|
||||
inline bool Copy(const wxValidator& val) { m_validatorWindow = val.m_validatorWindow; return TRUE; }
|
||||
// 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 wxValidator *Clone() const
|
||||
{ return (wxValidator *)NULL; }
|
||||
bool Copy(const wxValidator& val)
|
||||
{ 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; };
|
||||
// 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; };
|
||||
|
||||
// Called to transfer data to the window
|
||||
virtual bool TransferToWindow(void) { return FALSE; }
|
||||
// Called to transfer data to the window
|
||||
virtual bool TransferToWindow() { return FALSE; }
|
||||
|
||||
// Called to transfer data from the window
|
||||
virtual bool TransferFromWindow(void) { return FALSE; };
|
||||
// Called to transfer data from the window
|
||||
virtual bool TransferFromWindow() { return FALSE; };
|
||||
|
||||
// ACCESSORS
|
||||
inline wxWindow *GetWindow(void) const { return m_validatorWindow; }
|
||||
inline void SetWindow(wxWindow *win) { m_validatorWindow = win; }
|
||||
// accessors
|
||||
wxWindow *GetWindow() const { return m_validatorWindow; }
|
||||
void SetWindow(wxWindow *win) { m_validatorWindow = win; }
|
||||
|
||||
// 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; }
|
||||
|
||||
protected:
|
||||
wxWindow *m_validatorWindow;
|
||||
|
||||
private:
|
||||
static bool ms_isSilent;
|
||||
|
||||
DECLARE_DYNAMIC_CLASS(wxValidator)
|
||||
};
|
||||
|
||||
WXDLLEXPORT_DATA(extern const wxValidator) wxDefaultValidator;
|
||||
|
Reference in New Issue
Block a user