1///////////////////////////////////////////////////////////////////////////// 2// Name: scrollbar.h 3// Purpose: wxScrollBar class 4// Author: Stefan Csomor 5// Modified by: 6// Created: 1998-01-01 7// RCS-ID: $Id: scrolbar.h 41020 2006-09-05 20:47:48Z VZ $ 8// Copyright: (c) Stefan Csomor 9// Licence: wxWindows licence 10///////////////////////////////////////////////////////////////////////////// 11 12#ifndef _WX_SCROLBAR_H_ 13#define _WX_SCROLBAR_H_ 14 15#include "wx/control.h" 16 17WXDLLEXPORT_DATA(extern const wxChar) wxScrollBarNameStr[]; 18 19// Scrollbar item 20class WXDLLEXPORT wxScrollBar: public wxControl 21{ 22 DECLARE_DYNAMIC_CLASS(wxScrollBar) 23 24public: 25 inline wxScrollBar() { m_pageSize = 0; m_viewSize = 0; m_objectSize = 0; } 26 virtual ~wxScrollBar(); 27 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) 34 { 35 Create(parent, id, pos, size, style, validator, name); 36 } 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); 43 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; } 48 49 bool IsVertical() const { return (m_windowStyle & wxVERTICAL) != 0; } 50 51 virtual void SetThumbPosition(int viewStart); 52 virtual void SetScrollbar(int position, int thumbSize, int range, int pageSize, 53 bool refresh = TRUE); 54 55 void Command(wxCommandEvent& event); 56 virtual void MacHandleControlClick( WXWidget control , wxInt16 controlpart , bool mouseStillDown ) ; 57 58protected: 59 int m_pageSize; 60 int m_viewSize; 61 int m_objectSize; 62 63DECLARE_EVENT_TABLE() 64}; 65 66#endif 67 // _WX_SCROLBAR_H_ 68