moved wxEntry(HINSTANCE, ...) declaration to wx/msw/app.h from wx/app.h
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@27939 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -613,47 +613,21 @@ public:
|
|||||||
{ wxApp::SetInitializerFunction(fn); }
|
{ wxApp::SetInitializerFunction(fn); }
|
||||||
};
|
};
|
||||||
|
|
||||||
// Here's a macro you can use if your compiler really, really wants main() to
|
// the code below defines a IMPLEMENT_WXWIN_MAIN macro which you can use if
|
||||||
// be in your main program (e.g. hello.cpp). Now IMPLEMENT_APP should add this
|
// your compiler really, really wants main() to be in your main program (e.g.
|
||||||
// code if required.
|
// hello.cpp). Now IMPLEMENT_APP should add this code if required.
|
||||||
|
|
||||||
#define IMPLEMENT_WXWIN_MAIN_CONSOLE \
|
#define IMPLEMENT_WXWIN_MAIN_CONSOLE \
|
||||||
int main(int argc, char **argv) { return wxEntry(argc, argv); }
|
int main(int argc, char **argv) { return wxEntry(argc, argv); }
|
||||||
|
|
||||||
#if !wxUSE_GUI || !defined(__WXMSW__)
|
// port-specific header could have defined it already in some special wau
|
||||||
#define IMPLEMENT_WXWIN_MAIN \
|
#ifndef IMPLEMENT_WXWIN_MAIN
|
||||||
IMPLEMENT_WXWIN_MAIN_CONSOLE
|
#if !wxUSE_GUI
|
||||||
#elif defined(__WXMSW__)
|
#define IMPLEMENT_WXWIN_MAIN IMPLEMENT_WXWIN_MAIN_CONSOLE
|
||||||
// we need HINSTANCE declaration to define WinMain()
|
#else // wxUSE_GUI
|
||||||
#include "wx/msw/wrapwin.h"
|
#define IMPLEMENT_WXWIN_MAIN
|
||||||
|
|
||||||
#ifndef SW_SHOWNORMAL
|
|
||||||
#define SW_SHOWNORMAL 1
|
|
||||||
#endif
|
#endif
|
||||||
|
#endif // defined(IMPLEMENT_WXWIN_MAIN)
|
||||||
// WinMain() is always ANSI, even in Unicode build, under normal Windows
|
|
||||||
// but is always Unicode under CE
|
|
||||||
#ifdef __WXWINCE__
|
|
||||||
typedef wchar_t *wxCmdLineArgType;
|
|
||||||
#else
|
|
||||||
typedef char *wxCmdLineArgType;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#define IMPLEMENT_WXWIN_MAIN \
|
|
||||||
extern int wxEntry(HINSTANCE hInstance, \
|
|
||||||
HINSTANCE hPrevInstance = NULL, \
|
|
||||||
wxCmdLineArgType pCmdLine = NULL, \
|
|
||||||
int nCmdShow = SW_SHOWNORMAL); \
|
|
||||||
extern "C" int WINAPI WinMain(HINSTANCE hInstance, \
|
|
||||||
HINSTANCE hPrevInstance, \
|
|
||||||
wxCmdLineArgType lpCmdLine, \
|
|
||||||
int nCmdShow) \
|
|
||||||
{ \
|
|
||||||
return wxEntry(hInstance, hPrevInstance, lpCmdLine, nCmdShow); \
|
|
||||||
}
|
|
||||||
#else
|
|
||||||
#define IMPLEMENT_WXWIN_MAIN
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef __WXUNIVERSAL__
|
#ifdef __WXUNIVERSAL__
|
||||||
#include "wx/univ/theme.h"
|
#include "wx/univ/theme.h"
|
||||||
|
@@ -81,8 +81,39 @@ protected:
|
|||||||
DECLARE_NO_COPY_CLASS(wxApp)
|
DECLARE_NO_COPY_CLASS(wxApp)
|
||||||
};
|
};
|
||||||
|
|
||||||
int WXDLLEXPORT wxEntry(WXHINSTANCE hInstance, WXHINSTANCE hPrevInstance,
|
// ----------------------------------------------------------------------------
|
||||||
wxCmdLineArgType *lpszCmdLine, int nCmdShow);
|
// MSW-specific wxEntry() overload and IMPLEMENT_WXWIN_MAIN definition
|
||||||
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
// we need HINSTANCE declaration to define WinMain()
|
||||||
|
#include "wx/msw/wrapwin.h"
|
||||||
|
|
||||||
|
#ifndef SW_SHOWNORMAL
|
||||||
|
#define SW_SHOWNORMAL 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
// WinMain() is always ANSI, even in Unicode build, under normal Windows
|
||||||
|
// but is always Unicode under CE
|
||||||
|
#ifdef __WXWINCE__
|
||||||
|
typedef wchar_t *wxCmdLineArgType;
|
||||||
|
#else
|
||||||
|
typedef char *wxCmdLineArgType;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
extern int WXDLLEXPORT
|
||||||
|
wxEntry(HINSTANCE hInstance,
|
||||||
|
HINSTANCE hPrevInstance = NULL,
|
||||||
|
wxCmdLineArgType pCmdLine = NULL,
|
||||||
|
int nCmdShow = SW_SHOWNORMAL);
|
||||||
|
|
||||||
|
#define IMPLEMENT_WXWIN_MAIN \
|
||||||
|
extern "C" int WINAPI WinMain(HINSTANCE hInstance, \
|
||||||
|
HINSTANCE hPrevInstance, \
|
||||||
|
wxCmdLineArgType lpCmdLine, \
|
||||||
|
int nCmdShow) \
|
||||||
|
{ \
|
||||||
|
return wxEntry(hInstance, hPrevInstance, lpCmdLine, nCmdShow); \
|
||||||
|
}
|
||||||
|
|
||||||
#endif // _WX_APP_H_
|
#endif // _WX_APP_H_
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user