- #if wxUSE_GUI
- IMPLEMENT_DYNAMIC_CLASS(wxCommandEvent, wxEvent)
- IMPLEMENT_DYNAMIC_CLASS(wxNotifyEvent, wxCommandEvent)
- IMPLEMENT_DYNAMIC_CLASS(wxScrollEvent, wxCommandEvent)
- IMPLEMENT_DYNAMIC_CLASS(wxScrollWinEvent, wxEvent)
- IMPLEMENT_DYNAMIC_CLASS(wxMouseEvent, wxEvent)
- IMPLEMENT_DYNAMIC_CLASS(wxKeyEvent, wxEvent)
- IMPLEMENT_DYNAMIC_CLASS(wxSizeEvent, wxEvent)
- IMPLEMENT_DYNAMIC_CLASS(wxPaintEvent, wxEvent)
- IMPLEMENT_DYNAMIC_CLASS(wxEraseEvent, wxEvent)
- IMPLEMENT_DYNAMIC_CLASS(wxMoveEvent, wxEvent)
- IMPLEMENT_DYNAMIC_CLASS(wxFocusEvent, wxEvent)
- IMPLEMENT_DYNAMIC_CLASS(wxCloseEvent, wxEvent)
- IMPLEMENT_DYNAMIC_CLASS(wxShowEvent, wxEvent)
- IMPLEMENT_DYNAMIC_CLASS(wxMaximizeEvent, wxEvent)
- IMPLEMENT_DYNAMIC_CLASS(wxIconizeEvent, wxEvent)
- IMPLEMENT_DYNAMIC_CLASS(wxMenuEvent, wxEvent)
- IMPLEMENT_DYNAMIC_CLASS(wxJoystickEvent, wxEvent)
- IMPLEMENT_DYNAMIC_CLASS(wxDropFilesEvent, wxEvent)
- IMPLEMENT_DYNAMIC_CLASS(wxActivateEvent, wxEvent)
- IMPLEMENT_DYNAMIC_CLASS(wxInitDialogEvent, wxEvent)
- IMPLEMENT_DYNAMIC_CLASS(wxSysColourChangedEvent, wxEvent)
- IMPLEMENT_DYNAMIC_CLASS(wxUpdateUIEvent, wxCommandEvent)
- IMPLEMENT_DYNAMIC_CLASS(wxNavigationKeyEvent, wxCommandEvent)
- IMPLEMENT_DYNAMIC_CLASS(wxPaletteChangedEvent, wxEvent)
- IMPLEMENT_DYNAMIC_CLASS(wxQueryNewPaletteEvent, wxEvent)
- IMPLEMENT_DYNAMIC_CLASS(wxWindowCreateEvent, wxEvent)
- IMPLEMENT_DYNAMIC_CLASS(wxWindowDestroyEvent, wxEvent)
- #endif // wxUSE_GUI
+IMPLEMENT_DYNAMIC_CLASS(wxEvtHandler, wxObject)
+IMPLEMENT_ABSTRACT_CLASS(wxEvent, wxObject)
+IMPLEMENT_DYNAMIC_CLASS(wxIdleEvent, wxEvent)
+
+#if wxUSE_GUI
+ IMPLEMENT_DYNAMIC_CLASS(wxCommandEvent, wxEvent)
+ IMPLEMENT_DYNAMIC_CLASS(wxNotifyEvent, wxCommandEvent)
+ IMPLEMENT_DYNAMIC_CLASS(wxScrollEvent, wxCommandEvent)
+ IMPLEMENT_DYNAMIC_CLASS(wxScrollWinEvent, wxEvent)
+ IMPLEMENT_DYNAMIC_CLASS(wxMouseEvent, wxEvent)
+ IMPLEMENT_DYNAMIC_CLASS(wxKeyEvent, wxEvent)
+ IMPLEMENT_DYNAMIC_CLASS(wxSizeEvent, wxEvent)
+ IMPLEMENT_DYNAMIC_CLASS(wxPaintEvent, wxEvent)
+ IMPLEMENT_DYNAMIC_CLASS(wxEraseEvent, wxEvent)
+ IMPLEMENT_DYNAMIC_CLASS(wxMoveEvent, wxEvent)
+ IMPLEMENT_DYNAMIC_CLASS(wxFocusEvent, wxEvent)
+ IMPLEMENT_DYNAMIC_CLASS(wxCloseEvent, wxEvent)
+ IMPLEMENT_DYNAMIC_CLASS(wxShowEvent, wxEvent)
+ IMPLEMENT_DYNAMIC_CLASS(wxMaximizeEvent, wxEvent)
+ IMPLEMENT_DYNAMIC_CLASS(wxIconizeEvent, wxEvent)
+ IMPLEMENT_DYNAMIC_CLASS(wxMenuEvent, wxEvent)
+ IMPLEMENT_DYNAMIC_CLASS(wxJoystickEvent, wxEvent)
+ IMPLEMENT_DYNAMIC_CLASS(wxDropFilesEvent, wxEvent)
+ IMPLEMENT_DYNAMIC_CLASS(wxActivateEvent, wxEvent)
+ IMPLEMENT_DYNAMIC_CLASS(wxInitDialogEvent, wxEvent)
+ IMPLEMENT_DYNAMIC_CLASS(wxSysColourChangedEvent, wxEvent)
+ IMPLEMENT_DYNAMIC_CLASS(wxUpdateUIEvent, wxCommandEvent)
+ IMPLEMENT_DYNAMIC_CLASS(wxNavigationKeyEvent, wxCommandEvent)
+ IMPLEMENT_DYNAMIC_CLASS(wxPaletteChangedEvent, wxEvent)
+ IMPLEMENT_DYNAMIC_CLASS(wxQueryNewPaletteEvent, wxEvent)
+ IMPLEMENT_DYNAMIC_CLASS(wxWindowCreateEvent, wxEvent)
+ IMPLEMENT_DYNAMIC_CLASS(wxWindowDestroyEvent, wxEvent)
+#endif // wxUSE_GUI
+
+const wxEventTable *wxEvtHandler::GetEventTable() const
+ { return &wxEvtHandler::sm_eventTable; }
+
+const wxEventTable wxEvtHandler::sm_eventTable =
+ { (const wxEventTable *)NULL, &wxEvtHandler::sm_eventTableEntries[0] };