#if wxUSE_BUTTON
-#include "wx/button.h"
-
#ifndef WX_PRECOMP
- #include "wx/toplevel.h"
+ #include "wx/button.h"
#endif
#include "wx/stockitem.h"
if (!button->m_hasVMT) return;
if (g_blockEventsOnDrag) return;
- wxCommandEvent event(wxEVT_COMMAND_BUTTON_CLICKED, button->GetId());
+ wxCommandEvent event(wxEVT_BUTTON, button->GetId());
event.SetEventObject(button);
- button->GetEventHandler()->ProcessEvent(event);
+ button->HandleWindowEvent(event);
}
}
// wxButton
//-----------------------------------------------------------------------------
-IMPLEMENT_DYNAMIC_CLASS(wxButton,wxControl)
-
wxButton::wxButton()
{
}
}
-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 */