1///////////////////////////////////////////////////////////////////////////// 2// Name: wx/univ/spinbutt.h 3// Purpose: wxSpinButton class 4// Author: Julian Smart 5// Modified by: 6// Created: 01/02/97 7// RCS-ID: $Id: spinbutt.h 41316 2006-09-20 14:15:14Z RR $ 8// Copyright: (c) Julian Smart 9// Licence: wxWindows licence 10///////////////////////////////////////////////////////////////////////////// 11 12#ifndef _WX_SPINBUTT_H_ 13#define _WX_SPINBUTT_H_ 14 15#include "wx/control.h" 16#include "wx/event.h" 17 18#if wxUSE_SPINBTN 19 20class WXDLLEXPORT wxSpinButton : public wxSpinButtonBase 21{ 22public: 23 // construction 24 wxSpinButton() { } 25 26 wxSpinButton(wxWindow *parent, 27 wxWindowID id = wxID_ANY, 28 const wxPoint& pos = wxDefaultPosition, 29 const wxSize& size = wxDefaultSize, 30 long style = wxSP_VERTICAL | wxSP_ARROW_KEYS, 31 const wxString& name = wxSPIN_BUTTON_NAME) 32 { 33 Create(parent, id, pos, size, style, name); 34 } 35 36 virtual ~wxSpinButton(); 37 38 bool Create(wxWindow *parent, 39 wxWindowID id = wxID_ANY, 40 const wxPoint& pos = wxDefaultPosition, 41 const wxSize& size = wxDefaultSize, 42 long style = wxSP_VERTICAL | wxSP_ARROW_KEYS, 43 const wxString& name = wxSPIN_BUTTON_NAME); 44 45 46 // accessors 47 virtual int GetValue() const; 48 virtual void SetValue(int val); 49 virtual void SetRange(int minVal, int maxVal); 50 51 // implementation 52 virtual bool MSWCommand(WXUINT param, WXWORD id); 53 virtual bool MSWOnNotify(int idCtrl, WXLPARAM lParam, WXLPARAM *result); 54 virtual bool MSWOnScroll(int orientation, WXWORD wParam, 55 WXWORD pos, WXHWND control); 56 57 // a wxSpinButton can't do anything useful with focus, only wxSpinCtrl can 58 virtual bool AcceptsFocus() const { return false; } 59 60protected: 61 virtual wxSize DoGetBestSize() const; 62 63 // ensure that the control displays a value in the current range 64 virtual void NormalizeValue(); 65 66private: 67 DECLARE_DYNAMIC_CLASS_NO_COPY(wxSpinButton) 68}; 69 70#endif // wxUSE_SPINBTN 71 72#endif // _WX_SPINBUTT_H_ 73