case WM_KEYUP:
case WM_KEYDOWN:
case WM_CHAR:
+ case WM_SYSCHAR:
+ case WM_SYSKEYDOWN:
+ case WM_SYSKEYUP:
case WM_SETFOCUS:
case WM_KILLFOCUS:
{
return true;
}
}
+ // fall through
+ case WM_SYSCHAR:
return HandleChar(wParam, lParam, true /* isASCII */);
+ case WM_SYSKEYDOWN:
case WM_KEYDOWN:
return HandleKeyDown(wParam, lParam);
+ case WM_SYSKEYUP:
case WM_KEYUP:
return HandleKeyUp(wParam, lParam);
long wxComboBox::GetInsertionPoint() const
{
- // CB_GETEDITSEL returns the index of the last character after selection in
- // its high-order word
+ // CB_GETEDITSEL returns the index of the first character of the selection in
+ // its low-order word
DWORD pos= (DWORD)::SendMessage(GetHwnd(), CB_GETEDITSEL, 0, 0L);
-
- return HIWORD(pos);
+ return LOWORD(pos);
}
wxTextPos wxComboBox::GetLastPosition() const