]>
git.saurik.com Git - wxWidgets.git/blob - include/wx/spinctrl.h
1 /////////////////////////////////////////////////////////////////////////////
3 // Purpose: wxSpinCtrlBase class
4 // Author: Vadim Zeitlin
8 // Copyright: (c) Vadim Zeitlin
9 // Licence: wxWindows licence
10 /////////////////////////////////////////////////////////////////////////////
12 #ifndef _WX_SPINCTRL_H_
13 #define _WX_SPINCTRL_H_
15 #include "wx/spinbutt.h" // should make wxSpinEvent visible to the app
17 // ----------------------------------------------------------------------------
18 // a spin ctrl is a text control with a spin button which is usually used to
19 // prompt the user for a numeric input
20 // ----------------------------------------------------------------------------
22 /* there is no generic base class for this control because it's imlpemented
23 very differently under MSW and other platforms
25 class WXDLLEXPORT wxSpinCtrlBase : public wxControl
28 wxSpinCtrlBase() { Init(); }
31 virtual int GetValue() const = 0;
32 virtual int GetMin() const { return m_min; }
33 virtual int GetMax() const { return m_max; }
36 virtual void SetValue(const wxString& value) = 0;
37 virtual void SetValue(int val) = 0;
38 virtual void SetRange(int minVal, int maxVal) = 0;
40 // as the wxTextCtrl method
41 virtual void SetSelection(long from, long to) = 0;
44 // initialize m_min/max with the default values
45 void Init() { m_min = 0; m_max = 100; }
52 // ----------------------------------------------------------------------------
53 // include the platform-dependent class implementation
54 // ----------------------------------------------------------------------------
56 #if defined(__WXUNIVERSAL__)
57 #include "wx/generic/spinctlg.h"
58 #elif defined(__WXMSW__) && defined(__WIN32__)
59 #include "wx/msw/spinctrl.h"
60 #elif defined(__WXPM__)
61 #include "wx/os2/spinctrl.h"
62 #elif defined(__WXGTK__)
63 #include "wx/gtk/spinctrl.h"
64 #elif defined(__WXMOTIF__)
65 #include "wx/generic/spinctlg.h"
66 #elif defined(__WXMAC__)
67 #include "wx/mac/spinctrl.h"
68 #else // Win16 || !Win
69 #include "wx/generic/spinctlg.h"
72 #define EVT_SPINCTRL(id, fn) \
73 DECLARE_EVENT_TABLE_ENTRY( wxEVT_COMMAND_SPINCTRL_UPDATED, id, -1, (wxObjectEventFunction) (wxEventFunction) wxStaticCastEvent( wxSpinEventFunction, & fn ), (wxObject *) NULL ),
75 #endif // _WX_SPINCTRL_H_