X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c41c20a566cb7558661a68c0ed6712a84982093f..aab52ea550049163dc767d02dca5012285929f26:/src/mgl/utils.cpp diff --git a/src/mgl/utils.cpp b/src/mgl/utils.cpp index 2408e47e2f..21d02155ad 100644 --- a/src/mgl/utils.cpp +++ b/src/mgl/utils.cpp @@ -18,6 +18,7 @@ #include "wx/string.h" #include "wx/intl.h" +#include "wx/apptrait.h" #include "wx/log.h" #include "wx/process.h" @@ -146,13 +147,13 @@ int wxKill(long WXUNUSED(pid), wxSignal WXUNUSED(sig), wxKillError *WXUNUSED(rc) return 0; } -long wxExecute(const wxString& WXUNUSED(command), bool WXUNUSED(sync), wxProcess *WXUNUSED(process)) +long wxExecute(const wxString& WXUNUSED(command), int WXUNUSED(flags), wxProcess *WXUNUSED(process)) { wxFAIL_MSG( wxT("wxExecute not implemented under MS-DOS!") ); return 0; } -long wxExecute(wxChar **WXUNUSED(argv), bool WXUNUSED(sync), wxProcess *WXUNUSED(process)) +long wxExecute(char **WXUNUSED(argv), int WXUNUSED(flags), wxProcess *WXUNUSED(process)) { wxFAIL_MSG( wxT("wxExecute not implemented under MS-DOS!") ); return 0; @@ -175,11 +176,14 @@ void wxDisplaySize(int *width, int *height) void wxDisplaySizeMM(int *width, int *height) { wxASSERT_MSG( g_displayDC, wxT("You must call wxApp::SetDisplayMode before using this function") ); + + int xDPI, yDPI; + MGL_getDotsPerInch(&xDPI, &yDPI); + if ( width ) - *width = (g_displayDC->sizex()+1) * 25/72; + *width = (int)((g_displayDC->sizex()+1) * 25.4 / xDPI); if ( height ) - *height = (g_displayDC->sizey()+1) * 25/72; - // FIXME_MGL -- what about returning *real* monitor dimensions? + *height = (int)((g_displayDC->sizey()+1) * 25.4 / yDPI); } void wxClientDisplayRect(int *x, int *y, int *width, int *height) @@ -204,26 +208,53 @@ int wxDisplayDepth() return g_displayDC->getBitsPerPixel(); } -int wxGetOsVersion(int *majorVsn, int *minorVsn) -{ - if ( majorVsn ) - *majorVsn = MGL_RELEASE_MAJOR; - if ( minorVsn ) - *minorVsn = MGL_RELEASE_MINOR; +#if wxUSE_GUI +wxToolkitInfo& wxGUIAppTraits::GetToolkitInfo() +{ + static wxToolkitInfo info; + info.shortName = _T("mgluniv"); + info.name = _T("wxMGL"); + info.versionMajor = MGL_RELEASE_MAJOR; + info.versionMinor = MGL_RELEASE_MINOR; + info.os = wxGTK; #if defined(__UNIX__) - return wxMGL_UNIX; + info.os = wxMGL_UNIX; #elif defined(__OS2__) - return wxMGL_OS2; + info.os = wxMGL_OS2; #elif defined(__WIN32__) - return wxMGL_WIN32; + info.os = wxMGL_WIN32; #elif defined(__DOS__) - return wxMGL_DOS; + info.os = wxMGL_DOS; #else #error Platform not supported by wxMGL! #endif + return info; } +#endif + +wxToolkitInfo& wxConsoleAppTraits::GetToolkitInfo() +{ + static wxToolkitInfo info; + info.shortName = _T("mglbase"); + info.versionMajor = MGL_RELEASE_MAJOR; + info.versionMinor = MGL_RELEASE_MINOR; + info.name = _T("wxBase"); + info.os = wxGTK; +#if defined(__UNIX__) + info.os = wxMGL_UNIX; +#elif defined(__OS2__) + info.os = wxMGL_OS2; +#elif defined(__WIN32__) + info.os = wxMGL_WIN32; +#elif defined(__DOS__) + info.os = wxMGL_DOS; +#else + #error Platform not supported by wxMGL! +#endif + return info; +} void wxGetMousePosition(int* x, int* y) {