X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/77c46f00b51b8476ec53691dabbc2fa8a7f6a165..43a302f200f1e9f5f21380bbc7ba74ad8c22d6d6:/include/wx/msw/app.h diff --git a/include/wx/msw/app.h b/include/wx/msw/app.h index c05d831790..0295db6ce4 100644 --- a/include/wx/msw/app.h +++ b/include/wx/msw/app.h @@ -12,22 +12,18 @@ #ifndef _WX_APP_H_ #define _WX_APP_H_ -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma interface "app.h" -#endif - #include "wx/event.h" #include "wx/icon.h" -class WXDLLIMPEXP_CORE wxFrame; -class WXDLLIMPEXP_CORE wxWindow; -class WXDLLIMPEXP_CORE wxApp; -class WXDLLIMPEXP_CORE wxKeyEvent; -class WXDLLIMPEXP_BASE wxLog; +class WXDLLIMPEXP_FWD_CORE wxFrame; +class WXDLLIMPEXP_FWD_CORE wxWindow; +class WXDLLIMPEXP_FWD_CORE wxApp; +class WXDLLIMPEXP_FWD_CORE wxKeyEvent; +class WXDLLIMPEXP_FWD_BASE wxLog; // Represents the application. Derive OnInit and declare // a new App object to start application -class WXDLLEXPORT wxApp : public wxAppBase +class WXDLLIMPEXP_CORE wxApp : public wxAppBase { DECLARE_DYNAMIC_CLASS(wxApp) @@ -72,6 +68,10 @@ public: // wasn't found at all static int GetComCtl32Version(); + // the same for shell32.dll: returns 400, 471, 500, 600, ... (4.70 not + // currently detected) + static int GetShell32Version(); + // the SW_XXX value to be used for the frames opened by the application // (currently seems unused which is a bug -- TODO) static int m_nCmdShow; @@ -81,6 +81,26 @@ protected: DECLARE_NO_COPY_CLASS(wxApp) }; +#ifdef __WXWINCE__ + +// under CE provide a dummy implementation of GetComCtl32Version() returning +// the value passing all ">= 470" tests (which are the only ones used in our +// code currently) as commctrl.dll under CE 2.0 and later support comctl32.dll +// functionality +inline int wxApp::GetComCtl32Version() +{ + return 471; +} + +// this is not currently used at all under CE so it's not really clear what do +// we need to return from here +inline int wxApp::GetShell32Version() +{ + return 0; +} + +#endif // __WXWINCE__ + // ---------------------------------------------------------------------------- // MSW-specific wxEntry() overload and IMPLEMENT_WXWIN_MAIN definition // ---------------------------------------------------------------------------- @@ -100,11 +120,19 @@ protected: typedef char *wxCmdLineArgType; #endif -extern int WXDLLEXPORT -wxEntry(HINSTANCE hInstance, - HINSTANCE hPrevInstance = NULL, - wxCmdLineArgType pCmdLine = NULL, - int nCmdShow = SW_SHOWNORMAL); +// wxMSW-only overloads of wxEntry() and wxEntryStart() which take the +// parameters passed to WinMain() instead of those passed to main() +extern WXDLLIMPEXP_CORE bool + wxEntryStart(HINSTANCE hInstance, + HINSTANCE hPrevInstance = NULL, + wxCmdLineArgType pCmdLine = NULL, + int nCmdShow = SW_SHOWNORMAL); + +extern WXDLLIMPEXP_CORE int + wxEntry(HINSTANCE hInstance, + HINSTANCE hPrevInstance = NULL, + wxCmdLineArgType pCmdLine = NULL, + int nCmdShow = SW_SHOWNORMAL); #define IMPLEMENT_WXWIN_MAIN \ extern "C" int WINAPI WinMain(HINSTANCE hInstance, \