X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e9e4acc5197ac49259b9a39468c5931b4459d87f..8e77fd8bca165aab9709649d79a7cbc6a172d4e1:/include/wx/scrolbar.h?ds=sidebyside diff --git a/include/wx/scrolbar.h b/include/wx/scrolbar.h index 72e37cfcca..f63573c0cb 100644 --- a/include/wx/scrolbar.h +++ b/include/wx/scrolbar.h @@ -1,20 +1,38 @@ +///////////////////////////////////////////////////////////////////////////// +// Name: wx/scrolbar.h +// Purpose: wxScrollBar base header +// Author: Julian Smart +// Modified by: +// Created: +// Copyright: (c) Julian Smart +// RCS-ID: $Id$ +// Licence: wxWindows licence +///////////////////////////////////////////////////////////////////////////// + #ifndef _WX_SCROLBAR_H_BASE_ #define _WX_SCROLBAR_H_BASE_ +#include "wx/defs.h" + #if wxUSE_SCROLLBAR #include "wx/control.h" -WXDLLEXPORT_DATA(extern const wxChar*) wxScrollBarNameStr; +extern WXDLLIMPEXP_DATA_CORE(const char) wxScrollBarNameStr[]; // ---------------------------------------------------------------------------- // wxScrollBar: a scroll bar control // ---------------------------------------------------------------------------- -class WXDLLEXPORT wxScrollBarBase : public wxControl +class WXDLLIMPEXP_CORE wxScrollBarBase : public wxControl { public: - // scrollbar construction + wxScrollBarBase() { } + + /* + Derived classes should provide the following method and ctor with the + same parameters: + bool Create(wxWindow *parent, wxWindowID id, const wxPoint& pos = wxDefaultPosition, @@ -22,6 +40,7 @@ public: long style = wxSB_HORIZONTAL, const wxValidator& validator = wxDefaultValidator, const wxString& name = wxScrollBarNameStr); + */ // accessors virtual int GetThumbPosition() const = 0; @@ -35,7 +54,13 @@ public: virtual void SetThumbPosition(int viewStart) = 0; virtual void SetScrollbar(int position, int thumbSize, int range, int pageSize, - bool refresh = TRUE) = 0; + bool refresh = true) = 0; + + // implementation-only + bool IsNeeded() const { return GetRange() > GetThumbSize(); } + +private: + wxDECLARE_NO_COPY_CLASS(wxScrollBarBase); }; #if defined(__WXUNIVERSAL__) @@ -44,10 +69,14 @@ public: #include "wx/msw/scrolbar.h" #elif defined(__WXMOTIF__) #include "wx/motif/scrolbar.h" -#elif defined(__WXGTK__) +#elif defined(__WXGTK20__) #include "wx/gtk/scrolbar.h" +#elif defined(__WXGTK__) + #include "wx/gtk1/scrolbar.h" #elif defined(__WXMAC__) - #include "wx/mac/scrolbar.h" + #include "wx/osx/scrolbar.h" +#elif defined(__WXCOCOA__) + #include "wx/cocoa/scrolbar.h" #elif defined(__WXPM__) #include "wx/os2/scrolbar.h" #endif