///////////////////////////////////////////////////////////////////////////// // Name: wx/motif/spinbutt.h // Purpose: wxSpinButton class // Author: Julian Smart // Modified by: // Created: 17/09/98 // RCS-ID: $Id$ // Copyright: (c) Julian Smart // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef _WX_SPINBUTT_H_ #define _WX_SPINBUTT_H_ class WXDLLIMPEXP_FWD_CORE wxArrowButton; // internal class WXDLLIMPEXP_CORE wxSpinButton : public wxSpinButtonBase { DECLARE_DYNAMIC_CLASS(wxSpinButton) public: wxSpinButton() : m_up( 0 ), m_down( 0 ), m_pos( 0 ) { } wxSpinButton(wxWindow *parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxSP_VERTICAL, const wxString& name = "wxSpinButton") : m_up( 0 ), m_down( 0 ), m_pos( 0 ) { Create(parent, id, pos, size, style, name); } virtual ~wxSpinButton(); bool Create(wxWindow *parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize, long style = wxSP_VERTICAL, const wxString& name = "wxSpinButton"); // accessors int GetValue() const; int GetMin() const { return m_min; } int GetMax() const { return m_max; } // operations void SetValue(int val); void SetRange(int minVal, int maxVal); // Implementation virtual void Command(wxCommandEvent& event) { (void)ProcessCommand(event); } virtual void ChangeFont(bool keepOriginalSize = true); virtual void ChangeBackgroundColour(); virtual void ChangeForegroundColour(); public: // implementation detail void Increment( int delta ); private: virtual void DoSetSize(int x, int y, int width, int height, int sizeFlags = wxSIZE_AUTO); virtual void DoMoveWindow(int x, int y, int width, int height); virtual wxSize DoGetBestSize() const; wxArrowButton* m_up; wxArrowButton* m_down; int m_pos; }; #endif // _WX_SPINBUTT_H_