]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/checkbox.h
create tests/window directory for wxWindow tests
[wxWidgets.git] / interface / checkbox.h
index 2b99bc2467bb62c0a721eddaa1f38a7c5c03b4df..e0f584b3b6a06e397a06471d588ef22746f1173d 100644 (file)
@@ -6,45 +6,62 @@
 // Licence:     wxWindows license
 /////////////////////////////////////////////////////////////////////////////
 
 // Licence:     wxWindows license
 /////////////////////////////////////////////////////////////////////////////
 
+/**
+    The possible states of a 3-state wxCheckBox (Compatible with the 2-state
+    wxCheckBox).
+*/
+enum wxCheckBoxState
+{
+    wxCHK_UNCHECKED,
+    wxCHK_CHECKED,
+    wxCHK_UNDETERMINED  ///< 3-state checkbox only
+};
+
 /**
     @class wxCheckBox
     @wxheader{checkbox.h}
 
     A checkbox is a labelled box which by default is either on (checkmark is
 /**
     @class wxCheckBox
     @wxheader{checkbox.h}
 
     A checkbox is a labelled box which by default is either on (checkmark is
-    visible) or off (no checkmark). Optionally (when the wxCHK_3STATE style flag
-    is set) it can have a third state, called the mixed or undetermined state.
-    Often this is used as a "Does Not Apply" state.
+    visible) or off (no checkmark). Optionally (when the wxCHK_3STATE style
+    flag is set) it can have a third state, called the mixed or undetermined
+    state. Often this is used as a "Does Not Apply" state.
 
     @beginStyleTable
 
     @beginStyleTable
-    @style{wxCHK_2STATE}:
+    @style{wxCHK_2STATE}
            Create a 2-state checkbox. This is the default.
            Create a 2-state checkbox. This is the default.
-    @style{wxCHK_3STATE}:
+    @style{wxCHK_3STATE}
            Create a 3-state checkbox. Not implemented in wxMGL, wxOS2 and
            wxGTK built against GTK+ 1.2.
            Create a 3-state checkbox. Not implemented in wxMGL, wxOS2 and
            wxGTK built against GTK+ 1.2.
-    @style{wxCHK_ALLOW_3RD_STATE_FOR_USER}:
+    @style{wxCHK_ALLOW_3RD_STATE_FOR_USER}
            By default a user can't set a 3-state checkbox to the third state.
            It can only be done from code. Using this flags allows the user to
            set the checkbox to the third state by clicking.
            By default a user can't set a 3-state checkbox to the third state.
            It can only be done from code. Using this flags allows the user to
            set the checkbox to the third state by clicking.
-    @style{wxALIGN_RIGHT}:
+    @style{wxALIGN_RIGHT}
            Makes the text appear on the left of the checkbox.
     @endStyleTable
 
            Makes the text appear on the left of the checkbox.
     @endStyleTable
 
-    @beginEventTable
-    @event{EVT_CHECKBOX(id, func)}:
+    @beginEventTable{wxCommandEvent}
+    @event{EVT_CHECKBOX(id, func)}
            Process a wxEVT_COMMAND_CHECKBOX_CLICKED event, when the checkbox
            is clicked.
     @endEventTable
 
     @library{wxcore}
     @category{ctrl}
            Process a wxEVT_COMMAND_CHECKBOX_CLICKED event, when the checkbox
            is clicked.
     @endEventTable
 
     @library{wxcore}
     @category{ctrl}
-    @appearance{checkbox.png}
+    <!-- @appearance{checkbox.png} -->
 
     @see wxRadioButton, wxCommandEvent
 */
 class wxCheckBox : public wxControl
 {
 public:
 
     @see wxRadioButton, wxCommandEvent
 */
 class wxCheckBox : public wxControl
 {
 public:
-    //@{
+    /**
+        Default constructor.
+
+        @see Create(), wxValidator
+    */
+    wxCheckBox();
+
     /**
         Constructor, creating and showing a checkbox.
 
     /**
         Constructor, creating and showing a checkbox.
 
@@ -56,10 +73,10 @@ public:
             Text to be displayed next to the checkbox.
         @param pos
             Checkbox position. If wxDefaultPosition is specified then a default
             Text to be displayed next to the checkbox.
         @param pos
             Checkbox position. If wxDefaultPosition is specified then a default
-        position is chosen.
+            position is chosen.
         @param size
         @param size
-            Checkbox size. If wxDefaultSize is specified then a default
-        size is chosen.
+            Checkbox size. If wxDefaultSize is specified then a default size is
+            chosen.
         @param style
             Window style. See wxCheckBox.
         @param validator
         @param style
             Window style. See wxCheckBox.
         @param validator
@@ -69,7 +86,6 @@ public:
 
         @see Create(), wxValidator
     */
 
         @see Create(), wxValidator
     */
-    wxCheckBox();
     wxCheckBox(wxWindow* parent, wxWindowID id,
                const wxString& label,
                const wxPoint& pos = wxDefaultPosition,
     wxCheckBox(wxWindow* parent, wxWindowID id,
                const wxString& label,
                const wxPoint& pos = wxDefaultPosition,
@@ -77,7 +93,6 @@ public:
                long style = 0,
                const wxValidator& val = wxDefaultValidator,
                const wxString& name = "checkBox");
                long style = 0,
                const wxValidator& val = wxDefaultValidator,
                const wxString& name = "checkBox");
-    //@}
 
     /**
         Destructor, destroying the checkbox.
 
     /**
         Destructor, destroying the checkbox.
@@ -97,44 +112,40 @@ public:
                 const wxString& name = "checkBox");
 
     /**
                 const wxString& name = "checkBox");
 
     /**
-        Gets the state of a 3-state checkbox.
+        Gets the state of a 2-state checkbox.
 
 
-        @returns Returns wxCHK_UNCHECKED when the checkbox is unchecked,
-                 wxCHK_CHECKED  when it is checked and
-                 wxCHK_UNDETERMINED when it's in the undetermined state.
-                 Asserts when the function is used with a 2-state
-                 checkbox.
+        @return Returns @true if it is checked, @false otherwise.
     */
     */
-    wxCheckBoxState Get3StateValue() const;
+    bool GetValue() const;
 
     /**
 
     /**
-        Gets the state of a 2-state checkbox.
-
-        @returns Returns @true if it is checked, @false otherwise.
+        Gets the state of a 3-state checkbox. Asserts when the function is used
+        with a 2-state checkbox.
     */
     */
-    bool GetValue() const;
+    wxCheckBoxState Get3StateValue() const;
 
     /**
         Returns whether or not the checkbox is a 3-state checkbox.
 
 
     /**
         Returns whether or not the checkbox is a 3-state checkbox.
 
-        @returns Returns @true if this checkbox is a 3-state checkbox, @false if
-                 it's a 2-state checkbox.
+        @return @true if this checkbox is a 3-state checkbox, @false if it's
+                a 2-state checkbox.
     */
     bool Is3State() const;
 
     /**
     */
     bool Is3State() const;
 
     /**
-        Returns whether or not the user can set the checkbox to the third state.
+        Returns whether or not the user can set the checkbox to the third
+        state.
 
 
-        @returns Returns @true if the user can set the third state of this
-                 checkbox, @false if it can only be set programmatically
-                 or if it's a 2-state checkbox.
+        @return @true if the user can set the third state of this checkbox,
+                @false if it can only be set programmatically or if it's a
+                2-state checkbox.
     */
     bool Is3rdStateAllowedForUser() const;
 
     /**
     */
     bool Is3rdStateAllowedForUser() const;
 
     /**
-        This is just a maybe more readable synonym for
-        GetValue(): just as the latter, it returns
-        @true if the checkbox is checked and @false otherwise.
+        This is just a maybe more readable synonym for GetValue(): just as the
+        latter, it returns @true if the checkbox is checked and @false
+        otherwise.
     */
     bool IsChecked() const;
 
     */
     bool IsChecked() const;
 
@@ -146,5 +157,14 @@ public:
             If @true, the check is on, otherwise it is off.
     */
     void SetValue(bool state);
             If @true, the check is on, otherwise it is off.
     */
     void SetValue(bool state);
+
+    /**
+        Sets the checkbox to the given state. This does not cause a
+        wxEVT_COMMAND_CHECKBOX_CLICKED event to get emitted.
+
+        Asserts when the checkbox is a 2-state checkbox and setting the state
+        to wxCHK_UNDETERMINED.
+    */
+    void Set3StateValue(const wxCheckBoxState state);
 };
 
 };