1/////////////////////////////////////////////////////////////////////////////
2// Name:        wx/motif/scrollbar.h
3// Purpose:     wxScrollBar class
4// Author:      Julian Smart
5// Modified by:
6// Created:     17/09/98
7// RCS-ID:      $Id: scrolbar.h 41020 2006-09-05 20:47:48Z VZ $
8// Copyright:   (c) Julian Smart
9// Licence:     wxWindows licence
10/////////////////////////////////////////////////////////////////////////////
11
12#ifndef _WX_SCROLBAR_H_
13#define _WX_SCROLBAR_H_
14
15// Scrollbar item
16class WXDLLEXPORT wxScrollBar: public wxScrollBarBase
17{
18    DECLARE_DYNAMIC_CLASS(wxScrollBar)
19
20public:
21    inline wxScrollBar() { m_pageSize = 0; m_viewSize = 0; m_objectSize = 0; }
22    virtual ~wxScrollBar();
23
24    inline wxScrollBar(wxWindow *parent, wxWindowID id,
25        const wxPoint& pos = wxDefaultPosition,
26        const wxSize& size = wxDefaultSize,
27        long style = wxSB_HORIZONTAL,
28        const wxValidator& validator = wxDefaultValidator,
29        const wxString& name = wxScrollBarNameStr)
30    {
31        Create(parent, id, pos, size, style, validator, name);
32    }
33    bool Create(wxWindow *parent, wxWindowID id,
34        const wxPoint& pos = wxDefaultPosition,
35        const wxSize& size = wxDefaultSize,
36        long style = wxSB_HORIZONTAL,
37        const wxValidator& validator = wxDefaultValidator,
38        const wxString& name = wxScrollBarNameStr);
39
40    int GetThumbPosition() const ;
41    inline int GetThumbSize() const { return m_pageSize; }
42    inline int GetPageSize() const { return m_viewSize; }
43    inline int GetRange() const { return m_objectSize; }
44
45    virtual void SetThumbPosition(int viewStart);
46    virtual void SetScrollbar(int position, int thumbSize, int range, int pageSize,
47        bool refresh = true);
48
49    void Command(wxCommandEvent& event);
50
51    // Implementation
52    virtual void ChangeFont(bool keepOriginalSize = true);
53    virtual void ChangeBackgroundColour();
54
55protected:
56    int m_pageSize;
57    int m_viewSize;
58    int m_objectSize;
59};
60
61#endif
62// _WX_SCROLBAR_H_
63