]> git.saurik.com Git - wxWidgets.git/blobdiff - interface/wx/app.h
Improve documentation about handling C++ exceptions in wx programs.
[wxWidgets.git] / interface / wx / app.h
index f0f2e61adea829bf90f8fac6b0c39bfc8d45edc8..9e20713baed0a3fb170cd248f86d44ca3cd25011 100644 (file)
@@ -468,15 +468,21 @@ public:
     virtual int OnRun();
 
     /**
-        This function is called when an unhandled C++ exception occurs inside
-        OnRun() (the exceptions which occur during the program startup and shutdown
-        might not be caught at all). Notice that by now the main event loop has been
-        terminated and the program will exit, if you want to prevent this from happening
-        (i.e. continue running after catching an exception) you need to override
-        OnExceptionInMainLoop().
-
-        The default implementation shows information about the exception in debug build
-        but does nothing in the release build.
+        This function is called when an unhandled C++ exception occurs in user
+        code called by wxWidgets.
+
+        Any unhandled exceptions thrown from (overridden versions of) OnInit()
+        and OnExit() methods as well as any exceptions thrown from inside the
+        main loop and re-thrown by OnUnhandledException() will result in a call
+        to this function.
+
+        By the time this function is called, the program is already about to
+        exit and the exception can't be handled nor ignored any more, override
+        OnUnhandledException() or use explicit @c try/catch blocks around
+        OnInit() body to be able to handle the exception earlier.
+
+        The default implementation dumps information about the exception using
+        wxMessageOutputBest.
     */
     virtual void OnUnhandledException();