X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/738f9e5a12b8bb3936cc10347be98390602d3660..c27bcbd5a7cec9f03b15c69824da99c5bb75924a:/include/wx/gtk/spinctrl.h diff --git a/include/wx/gtk/spinctrl.h b/include/wx/gtk/spinctrl.h index b3a0d0cdd6..7ca72d8262 100644 --- a/include/wx/gtk/spinctrl.h +++ b/include/wx/gtk/spinctrl.h @@ -11,12 +11,18 @@ #ifndef __GTKSPINCTRLH__ #define __GTKSPINCTRLH__ -#ifdef __GNUG__ +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #pragma interface #endif +#include "wx/defs.h" + +#if wxUSE_SPINCTRL + +#include "wx/control.h" + //----------------------------------------------------------------------------- -// wxSpinButton +// wxSpinCtrl //----------------------------------------------------------------------------- class wxSpinCtrl : public wxControl @@ -25,38 +31,61 @@ public: wxSpinCtrl() {} wxSpinCtrl(wxWindow *parent, wxWindowID id = -1, + const wxString& value = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxSP_ARROW_KEYS, int min = 0, int max = 100, int initial = 0, const wxString& name = _T("wxSpinCtrl")) { - Create(parent, id, pos, size, style, min, max, initial, name); + Create(parent, id, value, pos, size, style, min, max, initial, name); } bool Create(wxWindow *parent, wxWindowID id = -1, + const wxString& value = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxSP_ARROW_KEYS, int min = 0, int max = 100, int initial = 0, const wxString& name = _T("wxSpinCtrl")); + void SetValue(const wxString& text); + void SetSelection(long from, long to); + virtual int GetValue() const; virtual void SetValue( int value ); virtual void SetRange( int minVal, int maxVal ); virtual int GetMin() const; virtual int GetMax() const; + static wxVisualAttributes + GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL); + + // implementation + void OnChar( wxKeyEvent &event ); + bool IsOwnGtkWindow( GdkWindow *window ); - void ApplyWidgetStyle(); + void GtkDisableEvents(); + void GtkEnableEvents(); GtkAdjustment *m_adjust; float m_oldPos; +protected: + virtual wxSize DoGetBestSize() const; + + // Widgets that use the style->base colour for the BG colour should + // override this and return true. + virtual bool UseGTKStyleBase() const { return true; } + private: DECLARE_DYNAMIC_CLASS(wxSpinCtrl) + DECLARE_EVENT_TABLE() }; +#endif + // wxUSE_SPINCTRL + #endif // __GTKSPINCTRLH__