X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/df91131cb0f90ee8bfb194926a13b1a108ca3c6e..89579a60d7ba7da32777647ad7647af69ec4e687:/src/mgl/utils.cpp diff --git a/src/mgl/utils.cpp b/src/mgl/utils.cpp index d722788098..7fad2ad588 100644 --- a/src/mgl/utils.cpp +++ b/src/mgl/utils.cpp @@ -18,11 +18,11 @@ #ifndef WX_PRECOMP #include "wx/string.h" + #include "wx/intl.h" + #include "wx/log.h" #endif -#include "wx/intl.h" #include "wx/apptrait.h" -#include "wx/log.h" #include "wx/process.h" #include @@ -47,6 +47,16 @@ void wxBell() // FIXME_MGL } +bool wxGetKeyState(wxKeyCode key) +{ + wxASSERT_MSG(key != WXK_LBUTTON && key != WXK_RBUTTON && key != + WXK_MBUTTON, wxT("can't use wxGetKeyState() for mouse buttons")); + + // TODO + + return false; +} + // ---------------------------------------------------------------------------- // display characterstics // ---------------------------------------------------------------------------- @@ -93,55 +103,15 @@ int wxDisplayDepth() return g_displayDC->getBitsPerPixel(); } -#if wxUSE_GUI - -wxToolkitInfo& wxGUIAppTraits::GetToolkitInfo() +wxPortId wxGUIAppTraits::GetToolkitVersion(int *verMaj, int *verMin) const { - 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__) - 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; -} - -#endif + if ( verMaj ) + *verMaj = MGL_RELEASE_MAJOR; + if ( verMin ) + *verMin = MGL_RELEASE_MINOR; -#if 0 -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; + return wxPORT_MGL; } -#endif void wxGetMousePosition(int* x, int* y) { @@ -155,6 +125,28 @@ wxPoint wxGetMousePosition() return pt; } +wxMouseState wxGetMouseState() +{ + wxMouseState ms; + int x, y; + + wxGetMousePosition(&x, &y); + + ms.SetX(x); + ms.SetY(y); + + extern unsigned long g_buttonState; + ms.SetLeftDown(g_buttonState & EVT_LEFTBUT); + ms.SetMiddleDown(g_buttonState & EVT_MIDDLEBUT); + ms.SetRightDown(g_buttonState & EVT_RIGHTBUT); + + ms.SetControlDown(EVT_isKeyDown(KB_leftCtrl) || EVT_isKeyDown(KB_rightCtrl)); + ms.SetShiftDown(EVT_isKeyDown(KB_leftShift) || EVT_isKeyDown(KB_rightShift)); + ms.SetAltDown(EVT_isKeyDown(KB_leftAlt)); + ms.SetMetaDown(EVT_isKeyDown(KB_rightAlt)); + + return ms; +} #ifdef __UNIX__