|
From: andrew7 <bd...@us...> - 2007-01-07 18:44:36
|
Update of /cvsroot/smartwin/SmartWin/source In directory sc8-pr-cvs8.sourceforge.net:/tmp/cvs-serv4956/source Modified Files: Application.cpp Log Message: Allow resource based dialogs in a DLL: Add hInstance param to neededSWinit Index: Application.cpp =================================================================== RCS file: /cvsroot/smartwin/SmartWin/source/Application.cpp,v retrieving revision 1.43 retrieving revision 1.44 diff -u -d -r1.43 -r1.44 --- Application.cpp 16 Dec 2006 15:48:51 -0000 1.43 +++ Application.cpp 7 Jan 2007 18:44:33 -0000 1.44 @@ -43,6 +43,8 @@ #endif //! WINCE #endif //! _MSC_VER +// Friend functions to Application + std::list < Widget * > & private_::getApplicationWidgets() { return Application::itsInstance->itsWidgets; @@ -73,15 +75,15 @@ unsigned int retVal = 0; bool corruptMemMemLeak = false; - Application::neededSmartWinInit(); - try - { #ifndef WINCE - std::string cmdLineString = lpCmdLine; + std::string cmdLineString = lpCmdLine; #else - std::string cmdLineString = SmartUtil::AsciiGuaranteed::doConvert( lpCmdLine, SmartUtil::ConversionCodepage::ANSI ); + std::string cmdLineString = SmartUtil::AsciiGuaranteed::doConvert( lpCmdLine, SmartUtil::ConversionCodepage::ANSI ); #endif - Application::Instantiate( hInstance, nCmdShow, cmdLineString.c_str() ); + + Application::neededSmartWinInit( hInstance, nCmdShow, cmdLineString.c_str() ); + try + { retVal = SmartWinMain( Application::instance() ); // Call library user's startup function. Application::UnInstantiate(); @@ -94,10 +96,16 @@ return retVal; } + +// Application implementation + /** Initializes the runtime for SmartWin++ + Typically only called by WinMain or DllMain. */ - void Application::neededSmartWinInit() + void Application::neededSmartWinInit( HINSTANCE hInstance, int nCmdShow, const char * cmdLine ) { + Application::Instantiate( hInstance, nCmdShow, cmdLine ); + #ifndef WINCE BOOL enable; ::SystemParametersInfo( SPI_GETUIEFFECTS, 0, & enable, 0 ); |