]>
git.saurik.com Git - wxWidgets.git/blob - include/wx/msw/scrolbar.h
5c269fbcde333c51f66ece81c31a08a00713f3c9
1 /////////////////////////////////////////////////////////////////////////////
3 // Purpose: wxScrollBar class
4 // Author: Julian Smart
8 // Copyright: (c) Julian Smart
9 // Licence: wxWindows licence
10 /////////////////////////////////////////////////////////////////////////////
12 #ifndef _WX_SCROLBAR_H_
13 #define _WX_SCROLBAR_H_
15 #if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
16 #pragma interface "scrolbar.h"
20 class WXDLLEXPORT wxScrollBar
: public wxScrollBarBase
23 wxScrollBar() { m_pageSize
= 0; m_viewSize
= 0; m_objectSize
= 0; }
26 wxScrollBar(wxWindow
*parent
, wxWindowID id
,
27 const wxPoint
& pos
= wxDefaultPosition
,
28 const wxSize
& size
= wxDefaultSize
,
29 long style
= wxSB_HORIZONTAL
,
30 const wxValidator
& validator
= wxDefaultValidator
,
31 const wxString
& name
= wxScrollBarNameStr
)
33 Create(parent
, id
, pos
, size
, style
, validator
, name
);
35 bool Create(wxWindow
*parent
, wxWindowID id
,
36 const wxPoint
& pos
= wxDefaultPosition
,
37 const wxSize
& size
= wxDefaultSize
,
38 long style
= wxSB_HORIZONTAL
,
39 const wxValidator
& validator
= wxDefaultValidator
,
40 const wxString
& name
= wxScrollBarNameStr
);
42 int GetThumbPosition() const ;
43 int GetThumbSize() const { return m_pageSize
; }
44 int GetPageSize() const { return m_viewSize
; }
45 int GetRange() const { return m_objectSize
; }
47 virtual void SetThumbPosition(int viewStart
);
48 virtual void SetScrollbar(int position
, int thumbSize
, int range
, int pageSize
,
52 void SetThumbSize( int s
) { SetScrollbar( GetThumbPosition() , s
, GetRange() , GetPageSize() , true ) ; }
53 void SetPageSize( int s
) { SetScrollbar( GetThumbPosition() , GetThumbSize() , GetRange() , s
, true ) ; }
54 void SetRange( int s
) { SetScrollbar( GetThumbPosition() , GetThumbSize() , s
, GetPageSize() , true ) ; }
56 void Command(wxCommandEvent
& event
);
57 virtual bool MSWOnScroll(int orientation
, WXWORD wParam
,
58 WXWORD pos
, WXHWND control
);
60 // override wxControl version to not use solid background here
61 virtual WXHBRUSH
MSWControlColor(WXHDC pDC
, WXHWND hWnd
);
64 virtual wxSize
DoGetBestSize() const;
65 virtual WXDWORD
MSWGetStyle(long style
, WXDWORD
*exstyle
) const;
71 DECLARE_DYNAMIC_CLASS_NO_COPY(wxScrollBar
)