]>
git.saurik.com Git - wxWidgets.git/blob - include/wx/msw/scrolbar.h
1 /////////////////////////////////////////////////////////////////////////////
3 // Purpose: wxScrollBar class
4 // Author: Julian Smart
8 // Copyright: (c) Julian Smart and Markus Holzem
9 // Licence: wxWindows license
10 /////////////////////////////////////////////////////////////////////////////
16 #pragma interface "scrolbar.h"
19 #include "wx/control.h"
21 WXDLLEXPORT_DATA(extern const char*) wxScrollBarNameStr
;
24 class WXDLLEXPORT wxScrollBar
: public wxControl
26 DECLARE_DYNAMIC_CLASS(wxScrollBar
)
29 inline wxScrollBar(void) { m_pageSize
= 0; m_viewSize
= 0; m_objectSize
= 0; }
32 inline wxScrollBar(wxWindow
*parent
, const wxWindowID id
,
33 const wxPoint
& pos
= wxDefaultPosition
,
34 const wxSize
& size
= wxDefaultSize
,
35 const long style
= wxSB_HORIZONTAL
,
36 const wxValidator
& validator
= wxDefaultValidator
,
37 const wxString
& name
= wxScrollBarNameStr
)
39 Create(parent
, id
, pos
, size
, style
, validator
, name
);
41 bool Create(wxWindow
*parent
, const wxWindowID id
,
42 const wxPoint
& pos
= wxDefaultPosition
,
43 const wxSize
& size
= wxDefaultSize
,
44 const long style
= wxSB_HORIZONTAL
,
45 const wxValidator
& validator
= wxDefaultValidator
,
46 const wxString
& name
= wxScrollBarNameStr
);
48 int GetPosition(void) const ;
49 inline int GetThumbSize() const { return m_pageSize
; }
50 inline int GetPageSize() const { return m_viewSize
; }
51 inline int GetRange() const { return m_objectSize
; }
53 virtual void SetPosition(const int viewStart
);
54 virtual void SetScrollbar(const int position
, const int thumbSize
, const int range
, const int pageSize
,
55 const bool refresh
= TRUE
);
57 #if WXWIN_COMPATIBILITY
58 // Backward compatibility
59 inline int GetValue(void) const { return GetPosition(); }
60 inline void SetValue(const int viewStart
) { SetPosition(viewStart
); }
61 void GetValues(int *viewStart
, int *viewLength
, int *objectLength
,
62 int *pageLength
) const ;
63 inline int GetViewLength() const { return m_viewSize
; }
64 inline int GetObjectLength() const { return m_objectSize
; }
66 void SetPageSize(const int pageLength
);
67 void SetObjectLength(const int objectLength
);
68 void SetViewLength(const int viewLength
);
71 void Command(wxCommandEvent
& event
);
72 virtual WXHBRUSH
OnCtlColor(const WXHDC pDC
, const WXHWND pWnd
, const WXUINT nCtlColor
,
73 WXUINT message
, WXWPARAM wParam
, WXLPARAM lParam
);
74 void MSWOnVScroll(const WXWORD wParam
, const WXWORD pos
, const WXHWND control
);
75 void MSWOnHScroll(const WXWORD wParam
, const WXWORD pos
, const WXHWND control
);
77 #if WXWIN_COMPATIBILITY
78 // Backward compatibility: generate an old-style scroll command
79 void OnScroll(wxScrollEvent
& event
);