X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e1d3601acaecd1c69c453b60610ba98f619bd383..ab67e8874db324fab5223cc8d5dff8a8de3e2b77:/include/wx/xtihandler.h diff --git a/include/wx/xtihandler.h b/include/wx/xtihandler.h index a7aa7b2cde..de4d3e9d21 100644 --- a/include/wx/xtihandler.h +++ b/include/wx/xtihandler.h @@ -17,18 +17,21 @@ #if wxUSE_EXTENDED_RTTI -#include "wx/string.h" +#include "wx/xti.h" -class WXDLLIMPEXP_BASE wxObject; -class WXDLLIMPEXP_BASE wxClassInfo; -class WXDLLIMPEXP_BASE wxDynamicClassInfo; -class WXDLLIMPEXP_BASE wxHashTable; -class WXDLLIMPEXP_BASE wxHashTable_Node; -class WXDLLIMPEXP_BASE wxObjectRefData; -class WXDLLIMPEXP_BASE wxEvent; -class WXDLLIMPEXP_BASE wxEvtHandler; +// copied from event.h which cannot be included at this place -typedef void (wxObject::*wxObjectEventFunction)(wxEvent&); +class WXDLLIMPEXP_FWD_BASE wxEvent; + +#ifdef __VISUALC__ +#define wxMSVC_FWD_MULTIPLE_BASES __multiple_inheritance +#else +#define wxMSVC_FWD_MULTIPLE_BASES +#endif + +class WXDLLIMPEXP_FWD_BASE wxMSVC_FWD_MULTIPLE_BASES wxEvtHandler; +typedef void (wxEvtHandler::*wxEventFunction)(wxEvent&); +typedef wxEventFunction wxObjectEventFunction; // ---------------------------------------------------------------------------- // Handler Info @@ -91,7 +94,7 @@ private: #define wxHANDLER(name,eventClassType) \ static wxHandlerInfo _handlerInfo##name( first, class_t::GetClassInfoStatic(), \ wxT(#name), (wxObjectEventFunction) (wxEventFunction) &name, \ - CLASSINFO( eventClassType ) ); + wxCLASSINFO( eventClassType ) ); #define wxBEGIN_HANDLERS_TABLE(theClass) \ wxHandlerInfo *theClass::GetHandlersStatic() \