]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/generic/spinctlg.h
Last part from weak ref patch for event sink disconnection
[wxWidgets.git] / include / wx / generic / spinctlg.h
index f535a8dd3f7e0e54896241688f49e84113e438f9..9d4f63f7fe8eefd44b54b8139d4e22bba390f300 100644 (file)
 
 #if wxUSE_SPINBTN
 
-#ifdef __GNUG__
-    #pragma interface "spinctlg.h"
-#endif
-
-class WXDLLEXPORT wxSpinButton;
-class WXDLLEXPORT wxTextCtrl;
+class WXDLLIMPEXP_FWD_CORE wxSpinButton;
+class WXDLLIMPEXP_FWD_CORE wxTextCtrl;
 
 // ----------------------------------------------------------------------------
 // wxSpinCtrl is a combination of wxTextCtrl and wxSpinButton
@@ -39,7 +35,7 @@ public:
     wxSpinCtrl() { Init(); }
 
     wxSpinCtrl(wxWindow *parent,
-               wxWindowID id = -1,
+               wxWindowID id = wxID_ANY,
                const wxString& value = wxEmptyString,
                const wxPoint& pos = wxDefaultPosition,
                const wxSize& size = wxDefaultSize,
@@ -47,11 +43,12 @@ public:
                int min = 0, int max = 100, int initial = 0,
                const wxString& name = _T("wxSpinCtrl"))
     {
+        Init();
         Create(parent, id, value, pos, size, style, min, max, initial, name);
     }
 
     bool Create(wxWindow *parent,
-                wxWindowID id = -1,
+                wxWindowID id = wxID_ANY,
                 const wxString& value = wxEmptyString,
                 const wxPoint& pos = wxDefaultPosition,
                 const wxSize& size = wxDefaultSize,
@@ -65,6 +62,7 @@ public:
     void SetValue(int val);
     void SetValue(const wxString& text);
     void SetRange(int min, int max);
+    void SetSelection(long from, long to);
 
     // accessors
     int GetValue() const;
@@ -74,8 +72,8 @@ public:
     // implementation from now on
 
     // forward these functions to all subcontrols
-    virtual bool Enable(bool enable = TRUE);
-    virtual bool Show(bool show = TRUE);
+    virtual bool Enable(bool enable = true);
+    virtual bool Show(bool show = true);
 
     // get the subcontrols
     wxTextCtrl *GetText() const { return m_text; }
@@ -85,13 +83,13 @@ public:
     void SetTextValue(int val);
 
     // put the numeric value of the string in the text ctrl into val and return
-    // TRUE or return FALSE if the text ctrl doesn't contain a number or if the
+    // true or return false if the text ctrl doesn't contain a number or if the
     // number is out of range
     bool GetTextValue(int *val) const;
 
 protected:
     // override the base class virtuals involved into geometry calculations
-    virtual wxSize DoGetBestClientSize() const;
+    virtual wxSize DoGetBestSize() const;
     virtual void DoMoveWindow(int x, int y, int width, int height);
 
     // common part of all ctors
@@ -101,6 +99,9 @@ private:
     // the subcontrols
     wxTextCtrl *m_text;
     wxSpinButton *m_btn;
+
+private:
+    DECLARE_DYNAMIC_CLASS(wxSpinCtrl)
 };
 
 #else // !wxUSE_SPINBTN
@@ -117,7 +118,7 @@ public:
     wxSpinCtrl() { Init(); }
 
     wxSpinCtrl(wxWindow *parent,
-               wxWindowID id = -1,
+               wxWindowID id = wxID_ANY,
                const wxString& value = wxEmptyString,
                const wxPoint& pos = wxDefaultPosition,
                const wxSize& size = wxDefaultSize,
@@ -129,7 +130,7 @@ public:
     }
 
     bool Create(wxWindow *parent,
-                wxWindowID id = -1,
+                wxWindowID id = wxID_ANY,
                 const wxString& value = wxEmptyString,
                 const wxPoint& pos = wxDefaultPosition,
                 const wxSize& size = wxDefaultSize,