-        // If the style flag to allow the user setting the undetermined state
-        // is set, then set the state to undetermined. Otherwise set state to
-        // unchecked.
-        if ( Is3rdStateAllowedForUser() )
-        {
-            state = wxCHK_UNDETERMINED;
-        }
-        else
-        {
-            state = wxCHK_UNCHECKED;
-        }
+        case wxCHK_UNCHECKED:
+            newState = wxCHK_CHECKED;
+            break;
+
+        case wxCHK_CHECKED:
+            // If the style flag to allow the user setting the undetermined state is set,
+            // then set the state to undetermined; otherwise set state to unchecked.
+            newState = Is3rdStateAllowedForUser() ? wxCHK_UNDETERMINED : wxCHK_UNCHECKED;
+            break;
+
+        case wxCHK_UNDETERMINED:
+            newState = wxCHK_UNCHECKED;
+            break;
+
+        default:
+            break;