X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/8e18907799c4b338607b4d57861f97266431b01d..cbeda384e51acb82e13994cb67ac1714669cae10:/include/wx/gtk/spinbutt.h?ds=sidebyside diff --git a/include/wx/gtk/spinbutt.h b/include/wx/gtk/spinbutt.h index 4192465863..5449e2add7 100644 --- a/include/wx/gtk/spinbutt.h +++ b/include/wx/gtk/spinbutt.h @@ -1,98 +1,68 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: spinbutt.h +// Name: wx/gtk/spinbutt.h // Purpose: wxSpinButton class // Author: Robert Roebling // Modified by: // RCS-ID: $Id$ // Copyright: (c) Robert Roebling -// Licence: wxWindows licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#ifndef __GTKSPINPUTTH__ -#define __GTKSPINBUTTH__ - -#ifdef __GNUG__ -#pragma interface -#endif - -#include "wx/defs.h" -#include "wx/object.h" -#include "wx/control.h" - -//----------------------------------------------------------------------------- -// classes -//----------------------------------------------------------------------------- - -class wxSpinButton; -class wxSpinEvent; +#ifndef _WX_GTK_SPINBUTT_H_ +#define _WX_GTK_SPINBUTT_H_ //----------------------------------------------------------------------------- // wxSpinButton //----------------------------------------------------------------------------- -class wxSpinButton : public wxControl +class WXDLLIMPEXP_CORE wxSpinButton : public wxSpinButtonBase { - DECLARE_DYNAMIC_CLASS(wxSpinButton) - public: - wxSpinButton(); - inline wxSpinButton( wxWindow *parent, wxWindowID id = -1, - const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, - long style = wxSP_VERTICAL, const wxString& name = "wxSpinButton") - { - Create(parent, id, pos, size, style, name); - } - ~wxSpinButton(); - bool Create( wxWindow *parent, wxWindowID id = -1, - const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, - long style = wxSP_VERTICAL, const wxString& name = "wxSpinButton" ); + wxSpinButton(); + wxSpinButton(wxWindow *parent, + wxWindowID id = -1, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = wxSP_VERTICAL, + const wxString& name = wxSPIN_BUTTON_NAME) + { + Create(parent, id, pos, size, style, name); + } + + bool Create(wxWindow *parent, + wxWindowID id = -1, + const wxPoint& pos = wxDefaultPosition, + const wxSize& size = wxDefaultSize, + long style = wxSP_VERTICAL, + const wxString& name = wxSPIN_BUTTON_NAME); + + 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); + + virtual bool Enable( bool enable = true ); - int GetValue() const; - void SetValue( int value ); - void SetRange( int minVal, int maxVal ); - int GetMin() const; - int GetMax() const; + // implementation + void OnSize( wxSizeEvent &event ); -// implementation + int m_pos; - void OnSize( wxSizeEvent &event ); - - bool IsOwnGtkWindow( GdkWindow *window ); - void ApplyWidgetStyle(); +protected: + void GtkDisableEvents() const; + void GtkEnableEvents() const; - GtkAdjustment *m_adjust; - float m_oldPos; - - DECLARE_EVENT_TABLE(); -}; + virtual wxSize DoGetBestSize() const; + virtual GdkWindow *GTKGetWindow(wxArrayGdkWindows& windows) const; -//----------------------------------------------------------------------------- -// wxSpinEvent -//----------------------------------------------------------------------------- - -class wxSpinEvent : public wxScrollEvent -{ - DECLARE_DYNAMIC_CLASS(wxSpinEvent) - -public: - wxSpinEvent(wxEventType commandType = wxEVT_NULL, int id = 0); +private: + DECLARE_EVENT_TABLE() + DECLARE_DYNAMIC_CLASS(wxSpinButton) }; -typedef void (wxEvtHandler::*wxSpinEventFunction)(wxSpinEvent&); - -// Spin events - -#define EVT_SPIN_UP(id, func) { wxEVT_SCROLL_LINEUP, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxSpinEventFunction) & func } -#define EVT_SPIN_DOWN(id, func) { wxEVT_SCROLL_LINEDOWN, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxSpinEventFunction) & func } - -#define EVT_SPIN(id, func) \ - { wxEVT_SCROLL_TOP, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxSpinEventFunction) & func },\ - { wxEVT_SCROLL_BOTTOM, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxSpinEventFunction) & func },\ - { wxEVT_SCROLL_LINEUP, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxSpinEventFunction) & func },\ - { wxEVT_SCROLL_LINEDOWN, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxSpinEventFunction) & func },\ - { wxEVT_SCROLL_PAGEUP, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxSpinEventFunction) & func },\ - { wxEVT_SCROLL_PAGEDOWN, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxSpinEventFunction) & func },\ - { wxEVT_SCROLL_THUMBTRACK, id, -1, (wxObjectEventFunction) (wxEventFunction) (wxSpinEventFunction) & func }, - #endif - // __GTKSPINBUTTH__ + // _WX_GTK_SPINBUTT_H_