]> git.saurik.com Git - wxWidgets.git/blobdiff - src/gtk1/checkbox.cpp
Add missing WXK constants for the control keys
[wxWidgets.git] / src / gtk1 / checkbox.cpp
index a85a9b4acfedea5d1df16a0ae325e4c5867372b5..e52bdc4b01dea4b0578f63653cb6c4e65cccccb6 100644 (file)
@@ -36,7 +36,8 @@ extern wxWindowGTK   *g_delayedFocus;
 //-----------------------------------------------------------------------------
 
 extern "C" {
-static void gtk_checkbox_toggled_callback(GtkWidget *widget, wxCheckBox *cb)
+static void gtk_checkbox_toggled_callback(GtkWidget *WXUNUSED(widget),
+                                          wxCheckBox *cb)
 {
     if (g_isIdle) wxapp_install_idle_handler();
 
@@ -49,7 +50,7 @@ static void gtk_checkbox_toggled_callback(GtkWidget *widget, wxCheckBox *cb)
     wxCommandEvent event(wxEVT_COMMAND_CHECKBOX_CLICKED, cb->GetId());
     event.SetInt(cb->GetValue());
     event.SetEventObject(cb);
-    cb->GetEventHandler()->ProcessEvent(event);
+    cb->HandleWindowEvent(event);
 }
 }
 
@@ -57,8 +58,6 @@ static void gtk_checkbox_toggled_callback(GtkWidget *widget, wxCheckBox *cb)
 // wxCheckBox
 //-----------------------------------------------------------------------------
 
-IMPLEMENT_DYNAMIC_CLASS(wxCheckBox,wxControl)
-
 wxCheckBox::wxCheckBox()
 {
 }
@@ -76,6 +75,7 @@ bool wxCheckBox::Create(wxWindow *parent,
     m_acceptsFocus = true;
     m_blockEvent = false;
 
+    WXValidateStyle(&style);
     if (!PreCreation( parent, pos, size ) ||
         !CreateBase( parent, id, pos, size, style, validator, name ))
     {
@@ -83,11 +83,6 @@ bool wxCheckBox::Create(wxWindow *parent,
         return false;
     }
 
-    wxASSERT_MSG( (style & wxCHK_ALLOW_3RD_STATE_FOR_USER) == 0 ||
-                  (style & wxCHK_3STATE) != 0,
-                  wxT("Using wxCHK_ALLOW_3RD_STATE_FOR_USER")
-                  wxT(" style flag for a 2-state checkbox is useless") );
-
     if ( style & wxALIGN_RIGHT )
     {
         // VZ: as I don't know a way to create a right aligned checkbox with
@@ -177,10 +172,10 @@ bool wxCheckBox::IsOwnGtkWindow( GdkWindow *window )
 void wxCheckBox::OnInternalIdle()
 {
     wxCursor cursor = m_cursor;
-    if (g_globalCursor.Ok()) cursor = g_globalCursor;
+    if (g_globalCursor.IsOk()) cursor = g_globalCursor;
 
     GdkWindow *event_window = TOGGLE_BUTTON_EVENT_WIN(m_widgetCheckbox);
-    if ( event_window && cursor.Ok() )
+    if ( event_window && cursor.IsOk() )
     {
         /* I now set the cursor the anew in every OnInternalIdle call
            as setting the cursor in a parent window also effects the