X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/886dd7d28e50c003cc88b81b968d487a3c17b0d7..7eb872f4d67141f723745f04b478dda03907d4b6:/include/wx/module.h diff --git a/include/wx/module.h b/include/wx/module.h index f1fff93994..b67e426401 100644 --- a/include/wx/module.h +++ b/include/wx/module.h @@ -9,10 +9,10 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#ifndef _WX_MODULEH__ -#define _WX_MODULEH__ +#ifndef _WX_MODULE_H_ +#define _WX_MODULE_H_ -#if defined(__GNUG__) && !defined(__APPLE__) +#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) #pragma interface "module.h" #endif @@ -20,42 +20,43 @@ #include "wx/list.h" // declare a linked list of modules -class wxModule; -WX_DECLARE_EXPORTED_LIST(wxModule, wxModuleList); +class WXDLLIMPEXP_BASE wxModule; +WX_DECLARE_USER_EXPORTED_LIST(wxModule, wxModuleList, WXDLLIMPEXP_BASE); // declaring a class derived from wxModule will automatically create an // instance of this class on program startup, call its OnInit() method and call // OnExit() on program termination (but only if OnInit() succeeded) -class WXDLLEXPORT_BASE wxModule : public wxObject +class WXDLLIMPEXP_BASE wxModule : public wxObject { public: wxModule() {} virtual ~wxModule() {} - // if module init routine returns FALSE application - // will fail to startup + // if module init routine returns false the application + // will fail to startup bool Init() { return OnInit(); } void Exit() { OnExit(); } - // Override both of these + // Override both of these + // called on program startup virtual bool OnInit() = 0; - // called just before program termination, but only if OnInit() + // called just before program termination, but only if OnInit() // succeeded - + virtual void OnExit() = 0; - static void RegisterModule(wxModule* module); + static void RegisterModule(wxModule *module); static void RegisterModules(); static bool InitializeModules(); static void CleanUpModules(); - // used by wxObjectLoader when unloading shared libs's + // used by wxObjectLoader when unloading shared libs's - static void UnregisterModule(wxModule* module); + static void UnregisterModule(wxModule *module); protected: static wxModuleList m_modules; @@ -63,5 +64,5 @@ protected: DECLARE_CLASS(wxModule) }; -#endif // _WX_MODULEH__ +#endif // _WX_MODULE_H_