]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/spinctrl.h
minor cleanup; add wxDocument::OnChangeFilename for coherence with wxView::OnChangefi...
[wxWidgets.git] / interface / wx / spinctrl.h
index c89b26f2fda1caf17b398ece7439d9a13a07e444..7274bf1aec2e08ed4427b9c644d39b0053e6d363 100644 (file)
@@ -9,21 +9,39 @@
 /**
     @class wxSpinCtrl
 
-    wxSpinCtrl combines wxTextCtrl and
-    wxSpinButton in one control.
+    wxSpinCtrl combines wxTextCtrl and wxSpinButton in one control.
 
     @beginStyleTable
     @style{wxSP_ARROW_KEYS}
-           The user can use arrow keys to change the value.
+        The user can use arrow keys to change the value.
     @style{wxSP_WRAP}
-           The value wraps at the minimum and maximum.
+        The value wraps at the minimum and maximum.
+    @style{wxTE_PROCESS_ENTER}
+        Indicates that the control should generate wxEVT_COMMAND_TEXT_ENTER
+        events. Using this style will prevent the user from using the Enter key
+        for dialog navigation (e.g. activating the default button in the
+        dialog) under MSW.
     @endStyleTable
 
+
+    @beginEventTable{wxSpinEvent}
+    @event{EVT_SPINCTRL(id, func)}
+        Generated whenever the numeric value of the spinctrl is updated
+    @endEventTable
+
+    You may also use the wxSpinButton event macros, however the corresponding events
+    will not be generated under all platforms. Finally, if the user modifies the
+    text in the edit part of the spin control directly, the EVT_TEXT is generated,
+    like for the wxTextCtrl. When the use enters text into the text area, the text
+    is not validated until the control loses focus (e.g. by using the TAB key).
+    The value is then adjusted to the range and a wxSpinEvent sent then if the value
+    is different from the last value sent.
+
     @library{wxcore}
     @category{ctrl}
-    <!-- @appearance{spinctrl.png} -->
+    @appearance{spinctrl.png}
 
-    @see wxSpinButton, wxControl
+    @see wxSpinButton, wxSpinCtrlDouble, wxControl
 */
 class wxSpinCtrl : public wxControl
 {
@@ -32,7 +50,7 @@ public:
        Default constructor.
     */
     wxSpinCtrl();
-    
+
     /**
         Constructor, creating and showing a spin control.
 
@@ -43,11 +61,11 @@ public:
         @param id
             Window identifier. The value wxID_ANY indicates a default value.
         @param pos
-            Window position. If wxDefaultPosition is specified then a default
-        position is chosen.
+            Window position.
+            If wxDefaultPosition is specified then a default position is chosen.
         @param size
-            Window size. If wxDefaultSize is specified then a default size
-        is chosen.
+            Window size.
+            If wxDefaultSize is specified then a default size is chosen.
         @param style
             Window style. See wxSpinButton.
         @param min
@@ -61,25 +79,24 @@ public:
 
         @see Create()
     */
-    wxSpinCtrl(wxWindow* parent, wxWindowID id = -1,
+    wxSpinCtrl(wxWindow* parent, wxWindowID id = wxID_ANY,
                const wxString& value = wxEmptyString,
                const wxPoint& pos = wxDefaultPosition,
                const wxSize& size = wxDefaultSize,
                long style = wxSP_ARROW_KEYS,
                int min = 0, int max = 100,
-               int initial = 0);
+               int initial = 0, const wxString& name = "wxSpinCtrl");
 
     /**
         Creation function called by the spin control constructor.
         See wxSpinCtrl() for details.
     */
-    bool Create(wxWindow* parent, wxWindowID id = -1,
+    bool Create(wxWindow* parent, wxWindowID id = wxID_ANY,
                 const wxString& value = wxEmptyString,
                 const wxPoint& pos = wxDefaultPosition,
                 const wxSize& size = wxDefaultSize,
-                long style = wxSP_ARROW_KEYS,
-                int min = 0, int max = 100,
-                int initial = 0);
+                long style = wxSP_ARROW_KEYS, int min = 0, int max = 100,
+                int initial = 0, const wxString& name = "wxSpinCtrl");
 
     /**
         Gets maximal allowable value.
@@ -103,17 +120,18 @@ public:
 
     /**
         Select the text in the text part of the control between  positions
-        @a from (inclusive) and @a to (exclusive). This is similar to
-        wxTextCtrl::SetSelection.
+        @a from (inclusive) and @a to (exclusive).
+        This is similar to wxTextCtrl::SetSelection().
+
         @note this is currently only implemented for Windows and generic versions
-        of the control.
+              of the control.
     */
-    void SetSelection(long from, long to);
+    virtual void SetSelection(long from, long to);
 
     /**
         Sets the value of the spin control. Use the variant using int instead.
     */
-    void SetValue(const wxString& text);
+    virtual void SetValue(const wxString& text);
 
     /**
         Sets the value of the spin control.