]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gtk1/scrolbar.h
support SDK < 10.6, fixes #14902
[wxWidgets.git] / include / wx / gtk1 / scrolbar.h
index 5badbfcb2891b478e9a10b4cfe5ba758727702dc..4a0eb2dfdcfd3cb9af5a0b9a065dbd963cbe186e 100644 (file)
@@ -1,68 +1,59 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        scrolbar.h
+// Name:        wx/gtk1/scrolbar.h
 // Purpose:
 // Author:      Robert Roebling
-// Created:     01/02/97
-// Id:
-// Copyright:   (c) 1998 Robert Roebling, Julian Smart and Markus Holzem
-// Licence:    wxWindows licence
+// Id:          $Id$
+// Copyright:   (c) 1998 Robert Roebling
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
-
 #ifndef __GTKSCROLLBARH__
 #define __GTKSCROLLBARH__
 
-#ifdef __GNUG__
-#pragma interface
-#endif
-
 #include "wx/defs.h"
-#include "wx/object.h"
-#include "wx/control.h"
 
 //-----------------------------------------------------------------------------
 // classes
 //-----------------------------------------------------------------------------
 
-class wxScrollBar;
-
-//-----------------------------------------------------------------------------
-// global data
-//-----------------------------------------------------------------------------
-
-extern const char *wxScrollBarNameStr;
+class WXDLLIMPEXP_FWD_CORE wxScrollBar;
 
 //-----------------------------------------------------------------------------
 // wxScrollBar
 //-----------------------------------------------------------------------------
 
-class wxScrollBar: public wxControl
+class WXDLLIMPEXP_CORE wxScrollBar: public wxScrollBarBase
 {
-  DECLARE_DYNAMIC_CLASS(wxScrollBar)
-
-  public:
-  
-    wxScrollBar(void) { m_adjust = NULL; m_oldPos = 0.0; };
-    wxScrollBar(wxWindow *parent, wxWindowID id,
+public:
+    wxScrollBar()
+       { m_adjust = NULL; m_oldPos = 0.0; }
+    inline wxScrollBar( wxWindow *parent, wxWindowID id,
            const wxPoint& pos = wxDefaultPosition,
            const wxSize& size = wxDefaultSize,
            long style = wxSB_HORIZONTAL,
-           const wxString& name = wxScrollBarNameStr );
-    ~wxScrollBar(void);
-    bool Create(wxWindow *parent, wxWindowID id,
+           const wxValidator& validator = wxDefaultValidator,
+           const wxString& name = wxScrollBarNameStr )
+    {
+        Create( parent, id, pos, size, style, validator, name );
+    }
+    bool Create( wxWindow *parent, wxWindowID id,
            const wxPoint& pos = wxDefaultPosition,
            const wxSize& size = wxDefaultSize,
            long style = wxSB_HORIZONTAL,
-           const wxString& name = wxScrollBarNameStr);
-    int GetPosition(void) const;
+           const wxValidator& validator = wxDefaultValidator,
+           const wxString& name = wxScrollBarNameStr );
+    virtual ~wxScrollBar();
+    int GetThumbPosition() const;
     int GetThumbSize() const;
     int GetPageSize() const;
     int GetRange() const;
-    virtual void SetPosition( int viewStart );
+    virtual void SetThumbPosition( int viewStart );
     virtual void SetScrollbar( int position, int thumbSize, int range, int pageSize,
       bool refresh = TRUE );
 
     // Backward compatibility
+    // ----------------------
+
     int GetValue(void) const;
     void SetValue( int viewStart );
     void GetValues( int *viewStart, int *viewLength, int *objectLength, int *pageLength) const;
@@ -72,10 +63,22 @@ class wxScrollBar: public wxControl
     void SetObjectLength( int objectLength );
     void SetViewLength( int viewLength );
 
-  public:
-  
+    static wxVisualAttributes
+    GetClassDefaultAttributes(wxWindowVariant variant = wxWINDOW_VARIANT_NORMAL);
+
+    // implementation
+    // --------------
+
+    bool IsOwnGtkWindow( GdkWindow *window );
+
     GtkAdjustment  *m_adjust;
     float           m_oldPos;
+
+protected:
+    virtual wxSize DoGetBestSize() const;
+
+private:
+    DECLARE_DYNAMIC_CLASS(wxScrollBar)
 };
 
 #endif