VK_APPS handling
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@1817 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
d3f0a137d2
commit
839b865d08
@ -1229,7 +1229,6 @@ long wxWindow::MSWWindowProc(WXUINT message, WXWPARAM wParam, WXLPARAM lParam)
|
||||
}
|
||||
|
||||
case WM_KEYDOWN:
|
||||
{
|
||||
// If this has been processed by an event handler,
|
||||
// return 0 now (we've handled it).
|
||||
if (MSWOnKeyDown((WORD) wParam, lParam))
|
||||
@ -1255,24 +1254,41 @@ long wxWindow::MSWWindowProc(WXUINT message, WXWPARAM wParam, WXLPARAM lParam)
|
||||
case VK_RIGHT:
|
||||
case VK_DOWN:
|
||||
case VK_UP:
|
||||
{
|
||||
return Default();
|
||||
break;
|
||||
|
||||
#ifdef VK_APPS
|
||||
// special case of VK_APPS: treat it the same as right mouse click
|
||||
// because both usually pop up a context menu
|
||||
case VK_APPS:
|
||||
{
|
||||
// construct the key mask
|
||||
WPARAM fwKeys = MK_RBUTTON;
|
||||
if ( (::GetKeyState(VK_CONTROL) & 0x100) != 0 )
|
||||
fwKeys |= MK_CONTROL;
|
||||
if ( (::GetKeyState(VK_SHIFT) & 0x100) != 0 )
|
||||
fwKeys |= MK_SHIFT;
|
||||
|
||||
// simulate right mouse button click
|
||||
DWORD dwPos = ::GetMessagePos();
|
||||
int x = GET_X_LPARAM(dwPos),
|
||||
y = GET_Y_LPARAM(dwPos);
|
||||
|
||||
ScreenToClient(&x, &y);
|
||||
MSWOnRButtonDown(x, y, fwKeys);
|
||||
}
|
||||
break;
|
||||
#endif // VK_APPS
|
||||
|
||||
default:
|
||||
if (!MSWOnChar((WORD)wParam, lParam))
|
||||
{
|
||||
return Default();
|
||||
}
|
||||
/*
|
||||
if ( ::GetKeyState(VK_CONTROL) & 0x100 )
|
||||
return Default();
|
||||
*/
|
||||
break;
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
case WM_KEYUP:
|
||||
{
|
||||
if (!MSWOnKeyUp((WORD) wParam, lParam))
|
||||
|
Loading…
Reference in New Issue
Block a user