From 7b70a3257f24daa4d574afd03c82e65631af1f2b Mon Sep 17 00:00:00 2001 From: Ryan Norton Date: Mon, 15 Dec 2003 17:16:04 +0000 Subject: [PATCH] reversed some parts of wxGetKeyState for linkage reasons... git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@24873 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- include/wx/utils.h | 7 ++++++- src/unix/utilsx11.cpp | 24 ------------------------ 2 files changed, 6 insertions(+), 25 deletions(-) diff --git a/include/wx/utils.h b/include/wx/utils.h index fa67028516..f7270a6617 100644 --- a/include/wx/utils.h +++ b/include/wx/utils.h @@ -80,8 +80,13 @@ WXDLLIMPEXP_BASE wxChar* copystring(const wxChar *s); // Sound the bell WXDLLIMPEXP_BASE void wxBell(); -#if defined(__WXGTK__) || defined(__WXMSW__) || defined(__WXMAC__) || defined(__X__) +#if defined(__WXMSW__) || defined(__WXMAC__) // Get the state of a key (true if pressed, false if not) + // This is generally most useful getting the state of + // Caps Lock, Num Lock and Scroll Lock... + + // Note - There is a X11/GTK version which will be here + // soon WXDLLIMPEXP_BASE bool wxGetKeyState(wxKeyCode key); #endif diff --git a/src/unix/utilsx11.cpp b/src/unix/utilsx11.cpp index a5809199b2..d4b4d521a3 100644 --- a/src/unix/utilsx11.cpp +++ b/src/unix/utilsx11.cpp @@ -15,12 +15,10 @@ #include "wx/wxprec.h" #include "wx/unix/utilsx11.h" -#include "wx/x11/privx.h" #include "wx/iconbndl.h" #include "wx/image.h" #include "wx/icon.h" #include "wx/log.h" -#include "wx/utils.h" #ifdef __VMS #pragma message disable nosimpint @@ -508,27 +506,5 @@ void wxSetFullScreenStateX11(WXDisplay* display, WXWindow rootWindow, } } -bool wxGetKeyState(wxKeyCode key) -{ - Display *pDisplay = (Display*) wxGetDisplay(); - int iKey = wxCharCodeWXToX(key); - int iKeyMask = 0; - Window wDummy1, wDummy2; - int iDummy3, iDummy4, iDummy5, iDummy6; - unsigned int iMask; - XModifierKeymap* map = XGetModifierMapping(pDisplay); - KeyCode keyCode = XKeysymToKeycode(pDisplay,iKey); - if(keyCode == NoSymbol) return false; - for(int i = 0; i < 8; ++i) { - if( map->modifiermap[map->max_keypermod * i] == keyCode) { - iKeyMask = 1 << i; - } - } - XQueryPointer(pDisplay, DefaultRootWindow(pDisplay), &wDummy1, &wDummy2, - &iDummy3, &iDummy4, &iDummy5, &iDummy6, &iMask ); - XFreeModifiermap(map); - return (iMask & iKeyMask) != 0; -} - #endif -- 2.45.2