From: Francesco Montorsi Date: Fri, 12 Dec 2008 15:56:19 +0000 (+0000) Subject: document wxInitializer and wxInitialize and wxUninitialize X-Git-Url: https://git.saurik.com/wxWidgets.git/commitdiff_plain/fa7e10a43f50d03c5cc64883724604b69bd712e0 document wxInitializer and wxInitialize and wxUninitialize git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57283 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- diff --git a/interface/wx/init.h b/interface/wx/init.h index 499dbe1eed..7e955d0133 100644 --- a/interface/wx/init.h +++ b/interface/wx/init.h @@ -6,6 +6,41 @@ // Licence: wxWindows license ///////////////////////////////////////////////////////////////////////////// + +/** + @class wxInitializer + + Create an object of this class on the stack to initialize/cleanup the library + automatically. + + @library{base} + @category{appmanagement} + + @see wxGLContext +*/ +class wxInitializer +{ +public: + /** + Initializes the library. + Calls wxInitialize(). + */ + wxInitializer(int argc = 0, wxChar **argv = NULL); + + /** + Has the initialization been successful? (explicit test) + */ + bool IsOk() const; + + /** + This dtor only does clean up if we initialized the library properly. + Calls wxUninitialize(). + */ + ~wxInitializer(); +}; + + + /** @ingroup group_funcmacro_appinitterm */ //@{ @@ -35,6 +70,8 @@ bool wxEntryStart(int& argc, wxChar** argv); @note Under Windows CE platform, and only there, the type of @a pCmdLine is @c wchar_t *, otherwise it is @c char *, even in Unicode build. + @onlyfor{wxmsw} + @header{wx/init.h} */ bool wxEntryStart(HINSTANCE hInstance, @@ -49,5 +86,27 @@ bool wxEntryStart(HINSTANCE hInstance, */ void wxEntryCleanup(); +/** + Initialize the library (may be called as many times as needed, but each + call to wxInitialize() must be matched by wxUninitialize()). + + With this function you may avoid DECLARE_APP() and IMPLEMENT_APP() macros + and use wxInitialize() and wxUninitialize() dynamically in the + program startup and termination. + + @header{wx/init.h} +*/ +bool wxInitialize(int argc = 0, wxChar **argv = NULL); + +/** + Clean up; the library can't be used any more after the last call to + wxUninitialize(). + + See wxInitialize() for more info. + + @header{wx/init.h} +*/ +void wxUninitialize(); + //@}