]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/scrolbar.h
correct positioning of the control and removed workarounds for old MSW bugs
[wxWidgets.git] / include / wx / scrolbar.h
index a4b86f01036fdd32d8aa3a9157f868a2df4dd449..868c0ff593b84cc3527fb26287fa218d5403a74d 100644 (file)
@@ -1,19 +1,34 @@
+/////////////////////////////////////////////////////////////////////////////
+// Name:        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:
+    wxScrollBarBase() { }
+
     // scrollbar construction
     bool Create(wxWindow *parent,
                 wxWindowID id,
@@ -35,7 +50,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:
+    DECLARE_NO_COPY_CLASS(wxScrollBarBase)
 };
 
 #if defined(__WXUNIVERSAL__)
@@ -44,14 +65,16 @@ 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"
+#elif defined(__WXCOCOA__)
+    #include "wx/cocoa/scrolbar.h"
 #elif defined(__WXPM__)
     #include "wx/os2/scrolbar.h"
-#elif defined(__WXSTUBS__)
-    #include "wx/stubs/scrolbar.h"
 #endif
 
 #endif // wxUSE_SCROLLBAR