]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/msw/spinbutt.h
Fixed ReadLine missing last character from text files with no final newline.
[wxWidgets.git] / include / wx / msw / spinbutt.h
index fc42e4929f247bdad61ba667c4869d81d8d73707..b8eeefe3dc51d17ee6d9db35518a12d3f819a139 100644 (file)
@@ -1,5 +1,5 @@
 /////////////////////////////////////////////////////////////////////////////
 /////////////////////////////////////////////////////////////////////////////
-// Name:        spinbutt.h
+// Name:        wx/univ/spinbutt.h
 // Purpose:     wxSpinButton class
 // Author:      Julian Smart
 // Modified by:
 // Purpose:     wxSpinButton class
 // Author:      Julian Smart
 // Modified by:
 #ifndef _WX_SPINBUTT_H_
 #define _WX_SPINBUTT_H_
 
 #ifndef _WX_SPINBUTT_H_
 #define _WX_SPINBUTT_H_
 
-#ifdef __GNUG__
-#pragma interface "spinbutt.h"
-#endif
-
 #include "wx/control.h"
 #include "wx/event.h"
 
 #include "wx/control.h"
 #include "wx/event.h"
 
-#if defined(__WIN95__)
-
+#if wxUSE_SPINBTN
 
 class WXDLLEXPORT wxSpinButton : public wxSpinButtonBase
 {
 
 class WXDLLEXPORT wxSpinButton : public wxSpinButtonBase
 {
-DECLARE_DYNAMIC_CLASS(wxSpinButton)
-
 public:
 public:
-    /*
-     * Public interface
-     */
+    // construction
     wxSpinButton() { }
 
     wxSpinButton(wxWindow *parent,
     wxSpinButton() { }
 
     wxSpinButton(wxWindow *parent,
-                 wxWindowID id = -1,
+                 wxWindowID id = wxID_ANY,
                  const wxPoint& pos = wxDefaultPosition,
                  const wxSize& size = wxDefaultSize,
                  long style = wxSP_VERTICAL | wxSP_ARROW_KEYS,
                  const wxPoint& pos = wxDefaultPosition,
                  const wxSize& size = wxDefaultSize,
                  long style = wxSP_VERTICAL | wxSP_ARROW_KEYS,
-                 const wxString& name = "wxSpinButton")
+                 const wxString& name = wxSPIN_BUTTON_NAME)
     {
         Create(parent, id, pos, size, style, name);
     }
     {
         Create(parent, id, pos, size, style, name);
     }
@@ -45,11 +36,11 @@ public:
     virtual ~wxSpinButton();
 
     bool Create(wxWindow *parent,
     virtual ~wxSpinButton();
 
     bool Create(wxWindow *parent,
-                wxWindowID id = -1,
+                wxWindowID id = wxID_ANY,
                 const wxPoint& pos = wxDefaultPosition,
                 const wxSize& size = wxDefaultSize,
                 long style = wxSP_VERTICAL | wxSP_ARROW_KEYS,
                 const wxPoint& pos = wxDefaultPosition,
                 const wxSize& size = wxDefaultSize,
                 long style = wxSP_VERTICAL | wxSP_ARROW_KEYS,
-                const wxString& name = "wxSpinButton");
+                const wxString& name = wxSPIN_BUTTON_NAME);
 
 
     // accessors
 
 
     // accessors
@@ -62,9 +53,20 @@ public:
     virtual bool MSWOnNotify(int idCtrl, WXLPARAM lParam, WXLPARAM *result);
     virtual bool MSWOnScroll(int orientation, WXWORD wParam,
                              WXWORD pos, WXHWND control);
     virtual bool MSWOnNotify(int idCtrl, WXLPARAM lParam, WXLPARAM *result);
     virtual bool MSWOnScroll(int orientation, WXWORD wParam,
                              WXWORD pos, WXHWND control);
+
+    // a wxSpinButton can't do anything useful with focus, only wxSpinCtrl can
+    virtual bool AcceptsFocus() const { return false; }
+
+protected:
+   virtual wxSize DoGetBestSize() const;
+
+   // ensure that the control displays a value in the current range
+   void NormalizeValue() { SetValue(GetValue()); }
+
+private:
+    DECLARE_DYNAMIC_CLASS_NO_COPY(wxSpinButton)
 };
 
 };
 
-#endif
-    // _WX_WIN95__
-#endif
-    // _WX_SPINBUTT_H_
+#endif // wxUSE_SPINBTN
+
+#endif // _WX_SPINBUTT_H_