]> git.saurik.com Git - wxWidgets.git/blame - interface/wx/valgen.h
Must clear property selection in wxPGProperty::SetChoices() or risk a crash
[wxWidgets.git] / interface / wx / valgen.h
CommitLineData
23324ae1
FM
1/////////////////////////////////////////////////////////////////////////////
2// Name: valgen.h
e54c96f1 3// Purpose: interface of wxGenericValidator
23324ae1
FM
4// Author: wxWidgets team
5// RCS-ID: $Id$
6// Licence: wxWindows license
7/////////////////////////////////////////////////////////////////////////////
8
9/**
10 @class wxGenericValidator
7c913512 11
fbec75d0 12 wxGenericValidator performs data transfer (but not validation or filtering)
52f2299c 13 for many type of controls.
fbec75d0 14
52f2299c
FM
15 wxGenericValidator supports:
16 - wxButton, wxRadioButton, wxToggleButton, wxBitmapToggleButton, wxSpinButton
17 - wxCheckBox, wxRadioBox, wxComboBox, wxListBox, wxCheckListBox
18 - wxGauge, wxSlider, wxScrollBar, wxChoice, wxStaticText
19 - wxSpinCtrl, wxTextCtrl
20
21 It checks the type of the window and uses an appropriate type for it.
22 For example, wxButton and wxTextCtrl transfer data to and from a
23 wxString variable; wxListBox uses a wxArrayInt; wxCheckBox uses a boolean.
fbec75d0
BP
24
25 For more information, please see @ref overview_validator.
7c913512 26
23324ae1
FM
27 @library{wxcore}
28 @category{validator}
7c913512 29
fbec75d0 30 @see @ref overview_validator, wxValidator, wxTextValidator
23324ae1
FM
31*/
32class wxGenericValidator : public wxValidator
33{
34public:
23324ae1 35 /**
fbec75d0 36 Copy constructor.
3c4f71cc 37
7c913512 38 @param validator
4cc4bfaf 39 Validator to copy.
fbec75d0
BP
40 */
41 wxGenericValidator(const wxGenericValidator& validator);
42 /**
43 Constructor taking a bool pointer. This will be used for wxCheckBox,
44 wxRadioButton, wxToggleButton and wxBitmapToggleButton.
45
7c913512 46 @param valPtr
4cc4bfaf 47 A pointer to a variable that contains the value. This variable
fbec75d0
BP
48 should have a lifetime equal to or longer than the validator
49 lifetime (which is usually determined by the lifetime of the
50 window).
23324ae1 51 */
7c913512 52 wxGenericValidator(bool* valPtr);
fbec75d0
BP
53 /**
54 Constructor taking a wxString pointer. This will be used for wxButton,
55 wxComboBox, wxStaticText, wxTextCtrl.
56
57 @param valPtr
58 A pointer to a variable that contains the value. This variable
59 should have a lifetime equal to or longer than the validator
60 lifetime (which is usually determined by the lifetime of the
61 window).
62 */
7c913512 63 wxGenericValidator(wxString* valPtr);
fbec75d0
BP
64 /**
65 Constructor taking an integer pointer. This will be used for wxChoice,
66 wxGauge, wxScrollBar, wxRadioBox, wxSlider, wxSpinButton and
67 wxSpinCtrl.
68
69 @param valPtr
70 A pointer to a variable that contains the value. This variable
71 should have a lifetime equal to or longer than the validator
72 lifetime (which is usually determined by the lifetime of the
73 window).
74 */
7c913512 75 wxGenericValidator(int* valPtr);
fbec75d0
BP
76 /**
77 Constructor taking a wxArrayInt pointer. This will be used for
78 wxListBox, wxCheckListBox.
79
80 @param valPtr
81 A pointer to a variable that contains the value. This variable
82 should have a lifetime equal to or longer than the validator
83 lifetime (which is usually determined by the lifetime of the
84 window).
85 */
7c913512 86 wxGenericValidator(wxArrayInt* valPtr);
fbec75d0
BP
87 /**
88 Constructor taking a wxDateTime pointer. This will be used for
89 wxDatePickerCtrl.
90
91 @param valPtr
92 A pointer to a variable that contains the value. This variable
93 should have a lifetime equal to or longer than the validator
94 lifetime (which is usually determined by the lifetime of the
95 window).
96 */
7c913512 97 wxGenericValidator(wxDateTime* valPtr);
23324ae1
FM
98
99 /**
100 Destructor.
101 */
adaaa686 102 virtual ~wxGenericValidator();
23324ae1
FM
103
104 /**
105 Clones the generic validator using the copy constructor.
106 */
43c48e1e 107 virtual wxObject* Clone() const;
23324ae1
FM
108
109 /**
110 Transfers the value from the window to the appropriate data type.
111 */
112 virtual bool TransferFromWindow();
113
114 /**
115 Transfers the value to the window.
116 */
117 virtual bool TransferToWindow();
118};
e54c96f1 119