X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/a4bbc9f720cbd99d7092e8944e671a6291068b13..780bb8744b5a9d9492831f0bd338251aa4641c56:/src/mgl/utils.cpp diff --git a/src/mgl/utils.cpp b/src/mgl/utils.cpp index 7ad8f8af4f..6459d48004 100644 --- a/src/mgl/utils.cpp +++ b/src/mgl/utils.cpp @@ -42,53 +42,80 @@ void wxBell() void wxDisplaySize(int *width, int *height) { - wxASSERT_MSG( g_displayDC, wxT("MGL display DC not created yet.") ); - if (width) *width = g_displayDC->sizex(); - if (height) *height = g_displayDC->sizey(); + wxASSERT_MSG( g_displayDC, wxT("You must call wxApp::SetDisplayMode before using this function") ); + if (width) *width = g_displayDC->sizex()+1; + if (height) *height = g_displayDC->sizey()+1; } -void wxGetMousePosition(int* x, int* y) +void wxDisplaySizeMM(int *width, int *height) { - MS_getPos(x, y); + wxASSERT_MSG( g_displayDC, wxT("You must call wxApp::SetDisplayMode before using this function") ); + if ( width ) + *width = (g_displayDC->sizex()+1) * 25/72; + if ( height ) + *height = (g_displayDC->sizey()+1) * 25/72; + // FIXME_MGL -- what about returning *real* monitor dimensions? } -wxPoint wxGetMousePosition() +void wxClientDisplayRect(int *x, int *y, int *width, int *height) { - wxPoint pt; - wxGetMousePosition(&pt.x, &pt.y); - return pt; + if ( x ) *x = 0; + if ( y ) *y = 0; + wxDisplaySize(width, height); + // FIXME_MGL - windowed version needs different handling } bool wxColourDisplay() { - wxASSERT_MSG( g_displayDC, wxT("MGL display DC not created yet.") ); + wxASSERT_MSG( g_displayDC, wxT("You must call wxApp::SetDisplayMode before using this function") ); return (wxDisplayDepth() > 1); } int wxDisplayDepth() { - wxASSERT_MSG( g_displayDC, wxT("MGL display DC not created yet.") ); + wxASSERT_MSG( g_displayDC, wxT("You must call wxApp::SetDisplayMode before using this function") ); return g_displayDC->getBitsPerPixel(); } int wxGetOsVersion(int *majorVsn, int *minorVsn) { -#if 0 // FIXME_MGL - // FIXME_MGL : fix wxGetOsVersion, too - if (majorVsn) *majorVsn = GTK_MAJOR_VERSION; - if (minorVsn) *minorVsn = GTK_MINOR_VERSION; - - return wxGTK; + if ( majorVsn ) + *majorVsn = MGL_RELEASE_MAJOR; + if ( minorVsn ) + *minorVsn = MGL_RELEASE_MINOR; + +#if defined(__UNIX__) + return wxMGL_UNIX; +#elif defined(__OS2__) + return wxMGL_OS2; +#elif defined(__WIN32__) + return wxMGL_WIN32; #endif } +void wxGetMousePosition(int* x, int* y) +{ + MS_getPos(x, y); +} + +wxPoint wxGetMousePosition() +{ + wxPoint pt; + wxGetMousePosition(&pt.x, &pt.y); + return pt; +} + + + #ifdef __UNIX__ int wxAddProcessCallback(wxEndProcessData *proc_data, int fd) { + wxFAIL_MSG(wxT("wxAddProcessCallback not implemented in wxMGL!")); + return 0; #if 0 // FIXME_MGL -do we need it at all? int tag = gdk_input_add(fd, GDK_INPUT_READ,