]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/mac/carbon/scrolbar.h
use wxWindowIDRef to transparently implement auto-generated ids ref-counting (slightl...
[wxWidgets.git] / include / wx / mac / carbon / scrolbar.h
index eba51e47f9ba3c5fd68bdac139156e860cdfd66b..80db4ce694c5e99106ad59e9a75ccb320d4c7568 100644 (file)
@@ -6,66 +6,63 @@
 // Created:     1998-01-01
 // RCS-ID:      $Id$
 // Copyright:   (c) Stefan Csomor
-// Licence:     wxWidgets licence
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef _WX_SCROLBAR_H_
 #define _WX_SCROLBAR_H_
 
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
-#pragma interface "scrolbar.h"
-#endif
-
-#include "wx/control.h"
-
-WXDLLEXPORT_DATA(extern const wxChar*) wxScrollBarNameStr;
-
 // Scrollbar item
-class WXDLLEXPORT wxScrollBar: public wxControl
+class WXDLLEXPORT wxScrollBar : public wxScrollBarBase
 {
-  DECLARE_DYNAMIC_CLASS(wxScrollBar)
-
 public:
-  inline wxScrollBar() { m_pageSize = 0; m_viewSize = 0; m_objectSize = 0; }
-  ~wxScrollBar();
+    wxScrollBar() { m_pageSize = 0; m_viewSize = 0; m_objectSize = 0; }
+    virtual ~wxScrollBar();
 
-  inline wxScrollBar(wxWindow *parent, wxWindowID id,
-           const wxPoint& pos = wxDefaultPosition,
-           const wxSize& size = wxDefaultSize,
-           long style = wxSB_HORIZONTAL,
-           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 wxValidator& validator = wxDefaultValidator,
-           const wxString& name = wxScrollBarNameStr);
+    wxScrollBar(wxWindow *parent,
+                wxWindowID id,
+                const wxPoint& pos = wxDefaultPosition,
+                const wxSize& size = wxDefaultSize,
+                long style = wxSB_HORIZONTAL,
+                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 wxValidator& validator = wxDefaultValidator,
+                const wxString& name = wxScrollBarNameStr);
 
-  int GetThumbPosition() const ;
-  inline int GetThumbSize() const { return m_viewSize; }
-  inline int GetPageSize() const { return m_pageSize; }
-  inline int GetRange() const { return m_objectSize; }
+    virtual int GetThumbPosition() const ;
+    virtual int GetThumbSize() const { return m_viewSize; }
+    virtual int GetPageSize() const { return m_pageSize; }
+    virtual int GetRange() const { return m_objectSize; }
 
-  bool IsVertical() const { return (m_windowStyle & wxVERTICAL) != 0; }
+    virtual void SetThumbPosition(int viewStart);
+    virtual void SetScrollbar(int position, int thumbSize, int range,
+            int pageSize, bool refresh = true);
 
-  virtual void SetThumbPosition(int viewStart);
-  virtual void SetScrollbar(int position, int thumbSize, int range, int pageSize,
-    bool refresh = TRUE);
+    // implementation only from now on
+    void Command(wxCommandEvent& event);
+    virtual void MacHandleControlClick( WXWidget control ,
+                                        wxInt16 controlpart ,
+                                        bool mouseStillDown ) ;
+    virtual wxInt32 MacControlHit( WXEVENTHANDLERREF handler ,
+                                   WXEVENTREF mevent ) ;
 
-  void Command(wxCommandEvent& event);
-    virtual void  MacHandleControlClick( WXWidget control , wxInt16 controlpart , bool mouseStillDown ) ;
-    virtual wxInt32 MacControlHit( WXEVENTHANDLERREF handler , WXEVENTREF mevent ) ;
 protected:
+    virtual wxSize DoGetBestSize() const;
+
     int m_pageSize;
     int m_viewSize;
     int m_objectSize;
 
-DECLARE_EVENT_TABLE()
+    DECLARE_DYNAMIC_CLASS(wxScrollBar)
+    DECLARE_EVENT_TABLE()
 };
 
-#endif
-    // _WX_SCROLBAR_H_
+#endif // _WX_SCROLBAR_H_