\latexignore{\rtfignore{\wxheading{Members}}}
-\membersection{wxApp::wxApp}
+\membersection{wxApp::wxApp}\label{wxappctor}
-\func{void}{wxApp}{\void}
+\func{}{wxApp}{\void}
Constructor. Called implicitly with a definition of a wxApp object.
-\membersection{wxApp::\destruct{wxApp}}
+\membersection{wxApp::\destruct{wxApp}}\label{wxappdtor}
-\func{void}{\destruct{wxApp}}{\void}
+\func{}{\destruct{wxApp}}{\void}
Destructor. Will be called implicitly on program exit if the wxApp
object is created on the stack.
\helpref{wxApp::Pending}{wxapppending}
+\membersection{wxApp::ExitMainLoop}\label{wxappexitmainloop}
+
+\func{virtual void}{ExitMainLoop}{\void}
+
+Call this to explicitly exit the main message (event) loop.
+You should normally exit the main loop (and the application) by deleting
+the top window.
+
+
\membersection{wxApp::FilterEvent}\label{wxappfilterevent}
\func{int}{FilterEvent}{\param{wxEvent\& }{event}}
going to be processed at all (for the latter one).
-\membersection{wxApp::ExitMainLoop}\label{wxappexitmainloop}
-
-\func{virtual void}{ExitMainLoop}{\void}
-
-Call this to explicitly exit the main message (event) loop.
-You should normally exit the main loop (and the application) by deleting
-the top window.
-
-
\membersection{wxApp::GetAppName}\label{wxappgetappname}
\constfunc{wxString}{GetAppName}{\void}
calling \helpref{wxApp::OnInit}{wxapponinit}, but the application can reset it at will.
-\membersection{wxApp::GetAuto3D}\label{wxappgetauto3d}
-
-\constfunc{bool}{GetAuto3D}{\void}
-
-Returns true if 3D control mode is on, false otherwise.
-
-\wxheading{See also}
-
-\helpref{wxApp::SetAuto3D}{wxappsetauto3d}
-
-
\membersection{wxApp::GetClassName}\label{wxappgetclassname}
\constfunc{wxString}{GetClassName}{\void}
\helpref{wxApp shutdown overview}{wxappshutdownoverview}
+\membersection{wxApp::GetInstance}\label{wxappgetinstance}
+
+\func{static wxAppConsole *}{GetInstance}{\void}
+
+Returns the one and only global application object.
+Usually \texttt{wxTheApp} is usead instead.
+
+\wxheading{See also}
+
+\helpref{wxApp::SetInstance}{wxappsetinstance}
+
+
\membersection{wxApp::GetTopWindow}\label{wxappgettopwindow}
\constfunc{virtual wxWindow *}{GetTopWindow}{\void}
to do it.
+\membersection{wxApp::IsMainLoopRunning}\label{wxappismainlooprunning}
+
+\func{static bool}{IsMainLoopRunning}{\void}
+
+Returns \true if the main event loop is currently running, i.e. if the
+application is inside \helpref{OnRun}{wxapponrun}.
+
+This can be useful to test whether the events can be dispatched. For example,
+if this function returns \false, non-blocking sockets cannot be used because
+the events from them would never be processed.
+
+
\membersection{wxApp::MainLoop}\label{wxappmainloop}
\func{virtual int}{MainLoop}{\void}
\helpref{OnInitCmdLine}{wxapponinitcmdline}
-\membersection{wxApp::OnExceptionInMainLoop}{wxapponexceptioninmainloop}
+\membersection{wxApp::OnExceptionInMainLoop}\label{wxapponexceptioninmainloop}
\func{virtual bool}{OnExceptionInMainLoop}{\void}
%%\helpref{wxWindow::Close}{wxwindowclose},\rtfsp
%%\helpref{wxWindow::OnCloseWindow}{wxwindowonclosewindow},\rtfsp
%%\helpref{wxCloseEvent}{wxcloseevent},\rtfsp
-%%\helpref{wxApp::OnQueryEndSession}{wxapponqueryendsession}
\membersection{wxApp::OnInit}\label{wxapponinit}
parser with the command line options for this application. The base class
versions adds support for a few standard options only.
-
-\membersection{wxApp::OnQueryEndSession}\label{wxapponqueryendsession}
-
-\func{void}{OnQueryEndSession}{\param{wxCloseEvent\& }{event}}
-
-This is an event handler function called when the operating system or GUI session is
-about to close down. Typically, an application will try to save unsaved documents
-at this point.
-
-If \helpref{wxCloseEvent::CanVeto}{wxcloseeventcanveto} returns true, the application
-is allowed to veto the shutdown by calling \helpref{wxCloseEvent::Veto}{wxcloseeventveto}.
-The application might veto the shutdown after prompting for documents to be saved, and the
-user has cancelled the save.
-
-Use the EVT\_QUERY\_END\_SESSION event table macro to handle query end session events.
-
-You should check whether the application is forcing the deletion of the window
-using \helpref{wxCloseEvent::GetForce}{wxcloseeventgetforce}. If this is true,
-destroy the window using \helpref{wxWindow::Destroy}{wxwindowdestroy}.
-If not, it is up to you whether you respond by destroying the window.
-
-The default handler calls \helpref{wxWindow::Close}{wxwindowclose} on the top-level window,
-and vetoes the shutdown if Close returns false. This will be sufficient for many applications.
-
-\wxheading{Remarks}
-
-Under X, OnQueryEndSession is called in response to the `save session' event.
-
-Under Windows, OnQueryEndSession is called in response to the WM\_QUERYENDSESSION message.
-
-\wxheading{See also}
-
-\helpref{wxWindow::Close}{wxwindowclose},\rtfsp
-\helpref{wxCloseEvent}{wxcloseevent}\rtfsp
-
-
\membersection{wxApp::OnRun}\label{wxapponrun}
\func{virtual int}{OnRun}{\void}
\helpref{wxApp::GetAppName}{wxappgetappname}
-\membersection{wxApp::SetAuto3D}\label{wxappsetauto3d}
-
-\func{void}{SetAuto3D}{\param{const bool}{ auto3D}}
-
-Switches automatic 3D controls on or off.
-
-\wxheading{Parameters}
-
-\docparam{auto3D}{If true, all controls will be created with 3D appearances unless
-overridden for a control or dialog. The default is true}
-
-\wxheading{Remarks}
-
-This has an effect on Windows only.
-
-\wxheading{See also}
-
-\helpref{wxApp::GetAuto3D}{wxappgetauto3d}
-
-
\membersection{wxApp::SetClassName}\label{wxappsetclassname}
\func{void}{SetClassName}{\param{const wxString\& }{name}}
\helpref{wxApp shutdown overview}{wxappshutdownoverview}
+\membersection{wxApp::SetInstance}\label{wxappsetinstance}
+
+\func{static void}{SetInstance}{\param{wxAppConsole* }{app}}
+
+Allows external code to modify global \texttt{wxTheApp}, but you should really
+know what you're doing if you call it.
+
+\wxheading{Parameters}
+
+\docparam{app}{Replacement for the global application object.}
+
+\wxheading{See also}
+
+\helpref{wxApp::GetInstance}{wxappgetinstance}
+
+
\membersection{wxApp::SetTopWindow}\label{wxappsettopwindow}
\func{void}{SetTopWindow}{\param{wxWindow* }{window}}