]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gtk/scrolbar.h
Native spline drawing.
[wxWidgets.git] / include / wx / gtk / scrolbar.h
index 5badbfcb2891b478e9a10b4cfe5ba758727702dc..7a982bf669f74ac1b6c6f1d81494b9a2b5e4c8d2 100644 (file)
@@ -2,67 +2,63 @@
 // Name:        scrolbar.h
 // Purpose:
 // Author:      Robert Roebling
 // Name:        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__
 
 /////////////////////////////////////////////////////////////////////////////
 
 
 #ifndef __GTKSCROLLBARH__
 #define __GTKSCROLLBARH__
 
-#ifdef __GNUG__
-#pragma interface
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
+#pragma interface "scrolbar.h"
 #endif
 
 #include "wx/defs.h"
 #endif
 
 #include "wx/defs.h"
-#include "wx/object.h"
-#include "wx/control.h"
 
 //-----------------------------------------------------------------------------
 // classes
 //-----------------------------------------------------------------------------
 
 
 //-----------------------------------------------------------------------------
 // classes
 //-----------------------------------------------------------------------------
 
-class wxScrollBar;
-
-//-----------------------------------------------------------------------------
-// global data
-//-----------------------------------------------------------------------------
-
-extern const char *wxScrollBarNameStr;
+class WXDLLIMPEXP_CORE wxScrollBar;
 
 //-----------------------------------------------------------------------------
 // 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 = (GtkAdjustment *) NULL; m_oldPos = 0.0; }
+    inline wxScrollBar( wxWindow *parent, wxWindowID id,
            const wxPoint& pos = wxDefaultPosition,
            const wxSize& size = wxDefaultSize,
            long style = wxSB_HORIZONTAL,
            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 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 );
+    ~wxScrollBar();
+    int GetThumbPosition() const;
     int GetThumbSize() const;
     int GetPageSize() const;
     int GetRange() 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
     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;
     int GetValue(void) const;
     void SetValue( int viewStart );
     void GetValues( int *viewStart, int *viewLength, int *objectLength, int *pageLength) const;
@@ -72,10 +68,22 @@ class wxScrollBar: public wxControl
     void SetObjectLength( int objectLength );
     void SetViewLength( int viewLength );
 
     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;
     GtkAdjustment  *m_adjust;
     float           m_oldPos;
+
+protected:
+    virtual wxSize DoGetBestSize() const;
+
+private:
+    DECLARE_DYNAMIC_CLASS(wxScrollBar)
 };
 
 #endif
 };
 
 #endif