From d11710cbb5f661222faf347039b4cf18c0a8474c Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Mon, 8 Oct 2001 15:58:52 +0000 Subject: [PATCH] don't check for Meta key in wxKeyEvent::HasModifiers() git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@11886 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- docs/latex/wx/keyevent.tex | 7 +++++-- include/wx/event.h | 5 ++++- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/docs/latex/wx/keyevent.tex b/docs/latex/wx/keyevent.tex index 34dfc6afd3..99d3386f3f 100644 --- a/docs/latex/wx/keyevent.tex +++ b/docs/latex/wx/keyevent.tex @@ -131,9 +131,12 @@ Obtains the position at which the key was pressed. \constfunc{bool}{HasModifiers}{\void} -Returns TRUE if either of {\sc Ctrl}, {\sc Alt} or {\sc Meta} keys was down +Returns TRUE if either {\sc Ctrl} or {\sc Alt} keys was down at the time of the key event. Note that this function does not take into -account the {\sc Shift} key state. +account neither {\sc Shift} nor {\sc Meta} key states (the reason for ignoring +the latter is that it is common for {\sc NumLock} key to be configured as +{\sc Meta} under X but the key presses even while {\sc NumLock} is on should +be still processed normally). \membersection{wxKeyEvent::ShiftDown} diff --git a/include/wx/event.h b/include/wx/event.h index 19922acda2..1763657844 100644 --- a/include/wx/event.h +++ b/include/wx/event.h @@ -780,7 +780,10 @@ public: bool AltDown() const { return m_altDown; } bool ShiftDown() const { return m_shiftDown; } - bool HasModifiers() const { return ControlDown() || AltDown() || MetaDown(); } + // exclude MetaDown() from HasModifiers() because NumLock under X is often + // configured as mod2 modifier, yet the key events even when it is pressed + // should be processed normally, not like Ctrl- or Alt-key + bool HasModifiers() const { return ControlDown() || AltDown(); } // get the key code: an ASCII7 char or an element of wxKeyCode enum int GetKeyCode() const { return (int)m_keyCode; } -- 2.47.2