]> git.saurik.com Git - wxWidgets.git/blob - interface/spinbutt.h
mac paths updated
[wxWidgets.git] / interface / spinbutt.h
1 /////////////////////////////////////////////////////////////////////////////
2 // Name: spinbutt.h
3 // Purpose: interface of wxSpinEvent
4 // Author: wxWidgets team
5 // RCS-ID: $Id$
6 // Licence: wxWindows license
7 /////////////////////////////////////////////////////////////////////////////
8
9 /**
10 @class wxSpinEvent
11 @wxheader{spinbutt.h}
12
13 This event class is used for the events generated by
14 wxSpinButton and wxSpinCtrl.
15
16 @library{wxcore}
17 @category{events}
18
19 @see wxSpinButton and wxSpinCtrl
20 */
21 class wxSpinEvent : public wxNotifyEvent
22 {
23 public:
24 /**
25 The constructor is not normally used by the user code.
26 */
27 wxSpinEvent(wxEventType commandType = wxEVT_NULL, int id = 0);
28
29 /**
30 Retrieve the current spin button or control value.
31 */
32 int GetPosition() const;
33
34 /**
35 Set the value associated with the event.
36 */
37 void SetPosition(int pos);
38 };
39
40
41
42 /**
43 @class wxSpinButton
44 @wxheader{spinbutt.h}
45
46 A wxSpinButton has two small up and down (or left and right) arrow buttons. It
47 is often used next to a text control for increment and decrementing a value.
48 Portable programs should try to use wxSpinCtrl instead
49 as wxSpinButton is not implemented for all platforms but wxSpinCtrl is as it
50 degenerates to a simple wxTextCtrl on such platforms.
51
52 @note the range supported by this control (and wxSpinCtrl) depends on the
53 platform but is at least @c -0x8000 to @c 0x7fff. Under GTK and
54 Win32 with sufficiently new version of @c comctrl32.dll (at least 4.71 is
55 required, 5.80 is recommended) the full 32 bit range is supported.
56
57 @beginStyleTable
58 @style{wxSP_HORIZONTAL}
59 Specifies a horizontal spin button (note that this style is not
60 supported in wxGTK).
61 @style{wxSP_VERTICAL}
62 Specifies a vertical spin button.
63 @style{wxSP_ARROW_KEYS}
64 The user can use arrow keys to change the value.
65 @style{wxSP_WRAP}
66 The value wraps at the minimum and maximum.
67 @endStyleTable
68
69 @library{wxcore}
70 @category{ctrl}
71 <!-- @appearance{spinbutton.png} -->
72
73 @see wxSpinCtrl
74 */
75 class wxSpinButton : public wxControl
76 {
77 public:
78 /**
79 Default constructor.
80 */
81 wxSpinButton();
82
83 /**
84 Constructor, creating and showing a spin button.
85
86 @param parent
87 Parent window. Must not be @NULL.
88 @param id
89 Window identifier. The value wxID_ANY indicates a default value.
90 @param pos
91 Window position. If wxDefaultPosition is specified then a default
92 position is chosen.
93 @param size
94 Window size. If wxDefaultSize is specified then a default size
95 is chosen.
96 @param style
97 Window style. See wxSpinButton.
98 @param name
99 Window name.
100
101 @see Create()
102 */
103 wxSpinButton(wxWindow* parent, wxWindowID id,
104 const wxPoint& pos = wxDefaultPosition,
105 const wxSize& size = wxDefaultSize,
106 long style = wxSP_HORIZONTAL,
107 const wxString& name = "spinButton");
108
109 /**
110 Destructor, destroys the spin button control.
111 */
112 ~wxSpinButton();
113
114 /**
115 Scrollbar creation function called by the spin button constructor.
116 See wxSpinButton() for details.
117 */
118 bool Create(wxWindow* parent, wxWindowID id,
119 const wxPoint& pos = wxDefaultPosition,
120 const wxSize& size = wxDefaultSize,
121 long style = wxSP_HORIZONTAL,
122 const wxString& name = "spinButton");
123
124 /**
125 Returns the maximum permissible value.
126
127 @see SetRange()
128 */
129 int GetMax() const;
130
131 /**
132 Returns the minimum permissible value.
133
134 @see SetRange()
135 */
136 int GetMin() const;
137
138 /**
139 Returns the current spin button value.
140
141 @see SetValue()
142 */
143 int GetValue() const;
144
145 /**
146 Sets the range of the spin button.
147
148 @param min
149 The minimum value for the spin button.
150 @param max
151 The maximum value for the spin button.
152
153 @see GetMin(), GetMax()
154 */
155 void SetRange(int min, int max);
156
157 /**
158 Sets the value of the spin button.
159
160 @param value
161 The value for the spin button.
162 */
163 void SetValue(int value);
164 };
165