IMPLEMENT_DYNAMIC_CLASS(wxIdleEvent, wxEvent)
IMPLEMENT_DYNAMIC_CLASS(wxUpdateUIEvent, wxEvent)
IMPLEMENT_DYNAMIC_CLASS(wxNavigationKeyEvent, wxCommandEvent)
+IMPLEMENT_DYNAMIC_CLASS(wxPaletteChangedEvent, wxEvent)
+IMPLEMENT_DYNAMIC_CLASS(wxQueryNewPaletteEvent, wxEvent)
const wxEventTable *wxEvtHandler::GetEventTable() const { return &wxEvtHandler::sm_eventTable; }
return win->GetParent()->GetEventHandler()->ProcessEvent(event);
}
- // Last try - application object
- if (wxTheApp && this != wxTheApp && wxTheApp->ProcessEvent(event))
+ // Last try - application object.
+ // Special case: don't pass wxEVT_IDLE to wxApp, since it'll always swallow it.
+ // wxEVT_IDLE is sent explicitly to wxApp so it will be processed appropriately
+ // via SearchEventTable.
+ if (wxTheApp && this != wxTheApp && (event.GetEventType() != wxEVT_IDLE) && wxTheApp->ProcessEvent(event))
return TRUE;
else
return FALSE;