]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/palmos/slider.h
wxMSW and wxPalmOS already had the wxFont(const wxSize&...) ctor; don't duplicate it
[wxWidgets.git] / include / wx / palmos / slider.h
index 4433437a010971fb57b86c992b4c2d5a69b7a1be..078d5d23ec7e9cb7c34e3dff4de0fd3b7bd4d1d7 100644 (file)
@@ -1,5 +1,5 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        wx/palmos/slider95.h
+// Name:        wx/palmos/slider.h
 // Purpose:     wxSlider class
 // Author:      William Osborne - minimal working wxPalmOS port
 // Modified by: Wlodzimierz ABX Skiba - native implementation
@@ -9,18 +9,17 @@
 // Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
-#ifndef _SLIDER95_H_
-#define _SLIDER95_H_
-
-#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
-#pragma interface "slider95.h"
-#endif
+#ifndef _SLIDERPALM_H_
+#define _SLIDERPALM_H_
 
 // Slider
-class WXDLLEXPORT wxSlider : public wxSliderBase
+class WXDLLIMPEXP_CORE wxSlider : public wxSliderBase
 {
 public:
-    wxSlider();
+    wxSlider()
+    {
+        Init();
+    }
 
     wxSlider(wxWindow *parent, wxWindowID id,
             int value, int minValue, int maxValue,
@@ -30,10 +29,11 @@ public:
             const wxValidator& validator = wxDefaultValidator,
             const wxString& name = wxSliderNameStr)
     {
+        Init();
         Create(parent, id, value, minValue, maxValue, pos, size, style, validator, name);
     }
 
-    ~wxSlider();
+    virtual ~wxSlider();
 
     bool Create(wxWindow *parent, wxWindowID id,
             int value, int minValue, int maxValue,
@@ -46,8 +46,6 @@ public:
     virtual int GetValue() const;
     virtual void SetValue(int);
 
-    void GetPosition(int *x, int *y) const;
-
     void SetRange(int minValue, int maxValue);
 
     int GetMin() const;
@@ -55,7 +53,7 @@ public:
 
     // For trackbars only
     void SetTickFreq(int n, int pos);
-    int GetTickFreq() const { return GetPageSize(); }
+    int GetTickFreq() const;
     void SetPageSize(int pageSize);
     int GetPageSize() const;
     void ClearSel();
@@ -72,17 +70,24 @@ public:
     // implementation
     void Command(wxCommandEvent& event);
 
-protected:
-    virtual void DoGetSize(int *width, int *height) const;
+    // send a notification event, return true if processed
+    bool SendUpdatedEvent();
+    bool SendScrollEvent(WXEVENTPTR event);
 
-    virtual void DoSetSize(int x, int y,
-                           int width, int height,
-                           int sizeFlags = wxSIZE_AUTO);
+protected:
 
     virtual wxSize DoGetBestSize() const;
 
+private:
+
+    void Init();
+
+    int m_oldPos;    // needed for tracing thumb position during scrolling
+    int m_oldValue;  // needed for comparing thumb position before and after scrolling
+    int m_lineSize;  // imitate line size
+
     DECLARE_DYNAMIC_CLASS_NO_COPY(wxSlider)
 };
 
 #endif
-    // _SLIDER95_H_
+    // _SLIDERPALM_H_