X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/6c20e8f816b21b911e3a8ed8197c21df6ce726d6..6ce832135e0cd665403406e7276630f415a7875b:/src/gtk1/button.cpp diff --git a/src/gtk1/button.cpp b/src/gtk1/button.cpp index b3898b46b0..cbcf71028c 100644 --- a/src/gtk1/button.cpp +++ b/src/gtk1/button.cpp @@ -12,7 +12,10 @@ #if wxUSE_BUTTON -#include "wx/button.h" +#ifndef WX_PRECOMP + #include "wx/button.h" +#endif + #include "wx/stockitem.h" #include "wx/gtk1/private.h" @@ -52,7 +55,7 @@ static void gtk_button_clicked_callback( GtkWidget *WXUNUSED(widget), wxButton * wxCommandEvent event(wxEVT_COMMAND_BUTTON_CLICKED, button->GetId()); event.SetEventObject(button); - button->GetEventHandler()->ProcessEvent(event); + button->HandleWindowEvent(event); } } @@ -91,8 +94,6 @@ gtk_button_style_set_callback( GtkWidget *m_widget, GtkStyle *WXUNUSED(style), w // wxButton //----------------------------------------------------------------------------- -IMPLEMENT_DYNAMIC_CLASS(wxButton,wxControl) - wxButton::wxButton() { } @@ -152,18 +153,17 @@ bool wxButton::Create( wxWindow *parent, wxWindowID id, const wxString &label, } -void wxButton::SetDefault() +wxWindow *wxButton::SetDefault() { - wxTopLevelWindow *tlw = wxDynamicCast(wxGetTopLevelParent(this), wxTopLevelWindow); - wxCHECK_RET( tlw, _T("button without top level window?") ); - - tlw->SetDefaultItem(this); + wxWindow *oldDefault = wxButtonBase::SetDefault(); GTK_WIDGET_SET_FLAGS( m_widget, GTK_CAN_DEFAULT ); gtk_widget_grab_default( m_widget ); // resize for default border gtk_button_style_set_callback( m_widget, NULL, this ); + + return oldDefault; } /* static */