]> git.saurik.com Git - wxWidgets.git/blobdiff - docs/latex/wx/module.tex
silence gcc warnings about values not handled in switch
[wxWidgets.git] / docs / latex / wx / module.tex
index 8eee76aadfe2a3d8e41206315b0ac907e08b7cda..b3f58fec88901a802bec61b65765e2a2cd003d95 100644 (file)
@@ -1,60 +1,57 @@
 \section{\class{wxModule}}\label{wxmodule}
 
-The module system is a very simple mechanism to allow applications (and parts of wxWindows itself) to
-define initialization and cleanup functions that are automatically called on wxWindows
+The module system is a very simple mechanism to allow applications (and parts of wxWidgets itself) to
+define initialization and cleanup functions that are automatically called on wxWidgets
 startup and exit.
 
 To define a new kind of module, derive a class from wxModule, override the OnInit and OnExit functions,
 and add the DECLARE\_DYNAMIC\_CLASS and IMPLEMENT\_DYNAMIC\_CLASS to header and implementation files
-(which can be the same file). On initialization, wxWindows will find all classes derived from wxModule,
-create an instance of each, and call each OnInit function. On exit, wxWindows will call the OnExit
+(which can be the same file). On initialization, wxWidgets will find all classes derived from wxModule,
+create an instance of each, and call each OnInit function. On exit, wxWidgets will call the OnExit
 function for each module instance.
 
-\wxheading{Derived from}
-
-\helpref{wxObject}{wxobject}
+Note that your module class does not have to be in a header file.
 
-\latexignore{\rtfignore{\wxheading{Members}}}
+For example:
 
-\membersection{wxModule::wxModule}\label{wxmoduleconstr}
+\begin{verbatim}
+  // A module to allow DDE initialization/cleanup
+  // without calling these functions from app.cpp or from
+  // the user's application.
 
-\func{}{wxModule}{\void}
-
-Constructs a wxModule object.
+  class wxDDEModule: public wxModule
+  {
+  DECLARE_DYNAMIC_CLASS(wxDDEModule)
+  public:
+      wxDDEModule() {}
+      bool OnInit() { wxDDEInitialize(); return true; };
+      void OnExit() { wxDDECleanUp(); };
+  };
 
-\membersection{wxModule::\destruct{wxModule}}
+  IMPLEMENT_DYNAMIC_CLASS(wxDDEModule, wxModule)
+\end{verbatim}
 
-\func{}{\destruct{wxModule}}{\void}
-
-Destructor.
-
-\membersection{wxModule::CleanupModules}\label{wxmodulecleanupmodules}
-
-\func{static void}{CleanupModules}{\void}
+\wxheading{Derived from}
 
-Calls Exit for each module instance. Called by wxWindows on exit, so there is no
-need for an application to call it.
+\helpref{wxObject}{wxobject}
 
-\membersection{wxModule::Exit}\label{wxmoduleexit}
+\wxheading{Include files}
 
-\func{void}{Exit}{\void}
+<wx/module.h>
 
-Calls OnExit. This function is called by wxWindows and should not need to be called
-by an application.
+\latexignore{\rtfignore{\wxheading{Members}}}
 
-\membersection{wxModule::Init}\label{wxmoduleinit}
+\membersection{wxModule::wxModule}\label{wxmodulector}
 
-\func{bool}{Init}{\void}
+\func{}{wxModule}{\void}
 
-Calls OnInit. This function is called by wxWindows and should not need to be called
-by an application.
+Constructs a wxModule object.
 
-\membersection{wxModule::InitializeModules}\label{wxmoduleinitializemodules}
+\membersection{wxModule::\destruct{wxModule}}\label{wxmoduledtor}
 
-\func{static bool}{InitializeModules}{\void}
+\func{}{\destruct{wxModule}}{\void}
 
-Calls Init for each module instance. Called by wxWindows on startup, so there is no
-need for an application to call it.
+Destructor.
 
 \membersection{wxModule::OnExit}\label{wxmoduleonexit}
 
@@ -67,19 +64,5 @@ Provide this function with appropriate cleanup for your module.
 \func{virtual bool}{OnInit}{\void}
 
 Provide this function with appropriate initialization for your module. If the function
-returns FALSE, wxWindows will exit immediately.
-
-\membersection{wxModule::RegisterModule}\label{wxmoduleregistermodule}
-
-\func{static void}{RegisterModule}{\param{wxModule*}{ module}}
-
-Registers this module with wxWindows. Called by wxWindows on startup, so there is no
-need for an application to call it.
-
-\membersection{wxModule::RegisterModules}\label{wxmoduleregistermodules}
-
-\func{static bool}{RegisterModules}{\void}
-
-Creates instances of and registers all modules. Called by wxWindows on startup, so there is no
-need for an application to call it.
+returns false, wxWidgets will exit immediately.