@Override LRESULT WM_CHAR (int /*long*/ wParam, int /*long*/ lParam) { LRESULT result = super.WM_CHAR (wParam, lParam); if (result != null) return result; /* * Feature in Windows. For some reason, when the * user presses tab, return or escape, Windows beeps. * The fix is to look for these keys and not call * the window proc. */ switch ((int)/*64*/wParam) { case SWT.CR: sendSelectionEvent (SWT.DefaultSelection); // FALL THROUGH case SWT.TAB: case SWT.ESC: return LRESULT.ZERO; } return result; }
@Override LRESULT WM_CHAR (int /*long*/ wParam, int /*long*/ lParam) { LRESULT result = super.WM_CHAR (wParam, lParam); if (result != null) return result; if (caret != null) { switch ((int)/*64*/wParam) { case SWT.DEL: case SWT.BS: case SWT.ESC: break; default: { if (OS.GetKeyState (OS.VK_CONTROL) >= 0) { int [] value = new int [1]; if (OS.SystemParametersInfo (OS.SPI_GETMOUSEVANISH, 0, value, 0)) { if (value [0] != 0) OS.SetCursor (0); } } } } } return result; }
@Override LRESULT WM_CHAR (int /*long*/ wParam, int /*long*/ lParam) { LRESULT result = super.WM_CHAR (wParam, lParam); if (result != null) return result; switch ((int)/*64*/wParam) { case ' ': int index = (int)/*64*/OS.SendMessage (handle, OS.TB_GETHOTITEM, 0, 0); if (index != -1) { TBBUTTON lpButton = new TBBUTTON (); int /*long*/ code = OS.SendMessage (handle, OS.TB_GETBUTTON, index, lpButton); if (code != 0) { items [lpButton.idCommand].click (false); return LRESULT.ZERO; } } } return result; }
@Override LRESULT WM_CHAR (int /*long*/ wParam, int /*long*/ lParam) { LRESULT result = super.WM_CHAR (wParam, lParam); if (result != null) return result; switch ((int)/*64*/wParam) {
@Override LRESULT WM_CHAR (int /*long*/ wParam, int /*long*/ lParam) { LRESULT result = super.WM_CHAR (wParam, lParam); if (result != null) return result;