]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gtk/slider.h
send more page change events (patch 750521); document this behaviour
[wxWidgets.git] / include / wx / gtk / slider.h
index b2400ebc3c7677cb945d7136edf423abf7976de1..e653f37efc1b8727987310e961ab0442a5a7d0cd 100644 (file)
@@ -1,90 +1,70 @@
 /////////////////////////////////////////////////////////////////////////////
 /////////////////////////////////////////////////////////////////////////////
-// Name:        slider.h
+// Name:        wx/gtk/slider.h
 // Purpose:
 // Author:      Robert Roebling
 // Id:          $Id$
 // Purpose:
 // Author:      Robert Roebling
 // Id:          $Id$
-// Copyright:   (c) 1998 Robert Roebling, Julian Smart and Markus Holzem
-// Licence:    wxWindows licence
+// Copyright:   (c) 1998 Robert Roebling
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef __GTKSLIDERH__
 #define __GTKSLIDERH__
 
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef __GTKSLIDERH__
 #define __GTKSLIDERH__
 
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(__APPLE__)
 #pragma interface
 #endif
 
 #pragma interface
 #endif
 
-#include "wx/defs.h"
-
-#if wxUSE_SLIDER
-
-#include "wx/object.h"
-#include "wx/list.h"
-#include "wx/control.h"
-
-//-----------------------------------------------------------------------------
-// classes
-//-----------------------------------------------------------------------------
-
-class wxSlider;
-
-//-----------------------------------------------------------------------------
-// global data
-//-----------------------------------------------------------------------------
-
-extern const char *wxSliderNameStr;
-
-//-----------------------------------------------------------------------------
+// ----------------------------------------------------------------------------
 // wxSlider
 // wxSlider
-//-----------------------------------------------------------------------------
+// ----------------------------------------------------------------------------
 
 
-class wxSlider: public wxControl
+class wxSlider : public wxSliderBase
 {
 public:
 {
 public:
-    wxSlider();
-    inline wxSlider( wxWindow *parent, wxWindowID id,
-           int value, int minValue, int maxValue,
-           const wxPoint& pos = wxDefaultPosition,
-           const wxSize& size = wxDefaultSize,
-           long style = wxSL_HORIZONTAL,
-           const wxValidator& validator = wxDefaultValidator,
-           const wxString& name = wxSliderNameStr )
+    wxSlider() { }
+    wxSlider(wxWindow *parent,
+             wxWindowID id,
+             int value, int minValue, int maxValue,
+             const wxPoint& pos = wxDefaultPosition,
+             const wxSize& size = wxDefaultSize,
+             long style = wxSL_HORIZONTAL,
+             const wxValidator& validator = wxDefaultValidator,
+             const wxString& name = wxSliderNameStr)
     {
     {
-      Create( parent, id, value, minValue, maxValue, pos, size, style, validator, name );
+        Create( parent, id, value, minValue, maxValue,
+                pos, size, style, validator, name );
     }
     }
-    ~wxSlider();
-    bool Create(wxWindow *parent, wxWindowID id,
-           int value, int minValue, int maxValue,
-           const wxPoint& pos = wxDefaultPosition,
-           const wxSize& size = wxDefaultSize,
-           long style = wxSL_HORIZONTAL,
-           const wxValidator& validator = wxDefaultValidator,
-           const wxString& name = wxSliderNameStr );
+
+    bool Create(wxWindow *parent,
+                wxWindowID id,
+                int value, int minValue, int maxValue,
+                const wxPoint& pos = wxDefaultPosition,
+                const wxSize& size = wxDefaultSize,
+                long style = wxSL_HORIZONTAL,
+                const wxValidator& validator = wxDefaultValidator,
+                const wxString& name = wxSliderNameStr);
+
+    // implement the base class pure virtuals
     virtual int GetValue() const;
     virtual int GetValue() const;
-    virtual void SetValue( int );
-    void SetRange( int minValue, int maxValue );
-    int GetMin() const;
-    int GetMax() const;
-    void SetTickFreq( int n, int pos );
-    int GetTickFreq() const;
-    void SetPageSize( int pageSize );
-    int GetPageSize() const;
-    void ClearSel();
-    void ClearTicks();
-    void SetLineSize( int lineSize );
-    int GetLineSize() const;
-    int GetSelEnd() const;
-    int GetSelStart() const;
-    void SetSelection( int minPos, int maxPos );
-    void SetThumbLength( int len );
-    int GetThumbLength() const;
-    void SetTick( int tickPos );
+    virtual void SetValue(int value);
 
 
-    // implementation
-    // --------------
+    virtual void SetRange(int minValue, int maxValue);
+    virtual int GetMin() const;
+    virtual int GetMax() const;
+
+    virtual void SetLineSize(int lineSize);
+    virtual void SetPageSize(int pageSize);
+    virtual int GetLineSize() const;
+    virtual int GetPageSize() const;
+
+    virtual void SetThumbLength(int lenPixels);
+    virtual int GetThumbLength() const;
 
 
+    // implementation
     bool IsOwnGtkWindow( GdkWindow *window );
     void ApplyWidgetStyle();
     bool IsOwnGtkWindow( GdkWindow *window );
     void ApplyWidgetStyle();
+    void GtkDisableEvents();
+    void GtkEnableEvents();
 
     GtkAdjustment  *m_adjust;
     float           m_oldPos;
 
     GtkAdjustment  *m_adjust;
     float           m_oldPos;
@@ -93,6 +73,4 @@ private:
     DECLARE_DYNAMIC_CLASS(wxSlider)
 };
 
     DECLARE_DYNAMIC_CLASS(wxSlider)
 };
 
-#endif
-
 #endif // __GTKSLIDERH__
 #endif // __GTKSLIDERH__