X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c801d85f158c4cba50b588807daabdcbd0ed3853..23fcecf7832c93d284505b0d0a51ea31f755ccb7:/src/gtk1/checkbox.cpp diff --git a/src/gtk1/checkbox.cpp b/src/gtk1/checkbox.cpp index 57c712db39..42c8b4167a 100644 --- a/src/gtk1/checkbox.cpp +++ b/src/gtk1/checkbox.cpp @@ -15,17 +15,25 @@ #include "wx/checkbox.h" +//----------------------------------------------------------------------------- +// data +//----------------------------------------------------------------------------- + +extern bool g_blockEventsOnDrag; + //----------------------------------------------------------------------------- // wxCheckBox //----------------------------------------------------------------------------- -void gtk_checkbox_clicked_callback( GtkWidget *WXUNUSED(widget), gpointer data ) +static void gtk_checkbox_clicked_callback( GtkWidget *WXUNUSED(widget), wxCheckBox *cb ) { - wxCheckBox *cb = (wxCheckBox*)data; + if (!cb->HasVMT()) return; + if (g_blockEventsOnDrag) return; + wxCommandEvent event(wxEVT_COMMAND_CHECKBOX_CLICKED, cb->GetId()); event.SetInt( cb->GetValue() ); event.SetEventObject(cb); - cb->ProcessEvent(event); + cb->GetEventHandler()->ProcessEvent(event); }; //----------------------------------------------------------------------------- @@ -38,14 +46,14 @@ wxCheckBox::wxCheckBox(void) wxCheckBox::wxCheckBox( wxWindow *parent, wxWindowID id, const wxString &label, const wxPoint &pos, const wxSize &size, - const long style, const wxString &name ) + long style, const wxString &name ) { Create( parent, id, label, pos, size, style, name ); }; bool wxCheckBox::Create( wxWindow *parent, wxWindowID id, const wxString &label, const wxPoint &pos, const wxSize &size, - const long style, const wxString &name ) + long style, const wxString &name ) { m_needParent = TRUE; @@ -68,7 +76,7 @@ bool wxCheckBox::Create( wxWindow *parent, wxWindowID id, const wxString &label return TRUE; }; -void wxCheckBox::SetValue( const bool state ) +void wxCheckBox::SetValue( bool state ) { if (state) gtk_toggle_button_set_state( GTK_TOGGLE_BUTTON(m_widget), GTK_STATE_ACTIVE );