1 /////////////////////////////////////////////////////////////////////////////
3 // Purpose: wxScrollBar class
4 // Author: Stefan Csomor
8 // Copyright: (c) Stefan Csomor
9 // Licence: wxWindows licence
10 /////////////////////////////////////////////////////////////////////////////
12 #ifndef _WX_SCROLBAR_H_
13 #define _WX_SCROLBAR_H_
15 #include "wx/control.h"
17 WXDLLEXPORT_DATA(extern const wxChar
) wxScrollBarNameStr
[];
20 class WXDLLEXPORT wxScrollBar
: public wxControl
22 DECLARE_DYNAMIC_CLASS(wxScrollBar
)
25 inline wxScrollBar() { m_pageSize
= 0; m_viewSize
= 0; m_objectSize
= 0; }
28 inline wxScrollBar(wxWindow
*parent
, wxWindowID id
,
29 const wxPoint
& pos
= wxDefaultPosition
,
30 const wxSize
& size
= wxDefaultSize
,
31 long style
= wxSB_HORIZONTAL
,
32 const wxValidator
& validator
= wxDefaultValidator
,
33 const wxString
& name
= wxScrollBarNameStr
)
35 Create(parent
, id
, pos
, size
, style
, validator
, name
);
37 bool Create(wxWindow
*parent
, wxWindowID id
,
38 const wxPoint
& pos
= wxDefaultPosition
,
39 const wxSize
& size
= wxDefaultSize
,
40 long style
= wxSB_HORIZONTAL
,
41 const wxValidator
& validator
= wxDefaultValidator
,
42 const wxString
& name
= wxScrollBarNameStr
);
44 int GetThumbPosition() const ;
45 inline int GetThumbSize() const { return m_viewSize
; }
46 inline int GetPageSize() const { return m_pageSize
; }
47 inline int GetRange() const { return m_objectSize
; }
49 bool IsVertical() const { return (m_windowStyle
& wxVERTICAL
) != 0; }
51 virtual void SetThumbPosition(int viewStart
);
52 virtual void SetScrollbar(int position
, int thumbSize
, int range
, int pageSize
,
55 void Command(wxCommandEvent
& event
);
56 virtual void MacHandleControlClick( WXWidget control
, wxInt16 controlpart
, bool mouseStillDown
) ;
57 virtual wxInt32
MacControlHit( WXEVENTHANDLERREF handler
, WXEVENTREF mevent
) ;
59 wxSize
DoGetBestSize() const;