Ignore:
Timestamp:
Sep 22, 1999, 10:58:36 AM (26 years ago)
Author:
sandervl
Message:

Rene Pronk's WM_(SYS)KEYUP/DOWN changes + SvL's dialog changes

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/user32/win32wbase.cpp

    r1000 r1005  
    1 /* $Id: win32wbase.cpp,v 1.6 1999-09-21 17:05:36 dengert Exp $ */
     1/* $Id: win32wbase.cpp,v 1.7 1999-09-22 08:58:35 sandervl Exp $ */
    22/*
    33 * Win32 Window Base Class for OS/2
     
    898898        return SendInternalMessageA(WM_CHAR, cmd, lParam);
    899899    }
     900}
     901//******************************************************************************
     902//******************************************************************************
     903ULONG Win32BaseWindow::MsgKeyUp (ULONG repeatCount, ULONG scancode, ULONG virtualKey)
     904{
     905  ULONG lParam=0;
     906
     907    lParam = repeatCount & 0x0FFFF;                 // bit 0-15, repeatcount
     908    lParam |= (scancode & 0x0FF) << 16;             // bit 16-23, scancode
     909                                                    // bit 24, 1=extended key
     910                                                    // bit 25-28, reserved
     911    lParam |= 0 << 29;                              // bit 29, key is released, always 0 for WM_KEYUP ?? <- conflict according to the MS docs
     912    lParam |= 1 << 30;                              // bit 30, previous state, always 1 for a WM_KEYUP message
     913    lParam |= 1 << 31;                              // bit 31, transition state, always 1 for WM_KEYUP
     914
     915    dprintf(("WM_KEYUP: vkey:(%x) param:(%x)", virtualKey, lParam));
     916
     917    return SendInternalMessageA (WM_KEYUP, virtualKey, lParam);
     918}
     919//******************************************************************************
     920//******************************************************************************
     921ULONG Win32BaseWindow::MsgKeyDown (ULONG repeatCount, ULONG scancode, ULONG virtualKey, BOOL keyWasPressed)
     922{
     923  ULONG lParam=0;
     924
     925    lParam = repeatCount & 0x0FFFF;                 // bit 0-15, repeatcount
     926    lParam |= (scancode & 0x0FF) << 16;             // bit 16-23, scancode
     927                                                    // bit 24, 1=extended key
     928                                                    // bit 25-28, reserved
     929                                                    // bit 29, key is pressed, always 0 for WM_KEYDOWN ?? <- conflict according to the MS docs
     930    if (keyWasPressed)
     931        lParam |= 1 << 30;                          // bit 30, previous state, 1 means key was pressed
     932                                                    // bit 31, transition state, always 0 for WM_KEYDOWN
     933
     934    dprintf(("WM_KEYDOWN: vkey:(%x) param:(%x)", virtualKey, lParam));
     935
     936    return SendInternalMessageA (WM_KEYDOWN, virtualKey, lParam);
     937}
     938//******************************************************************************
     939//******************************************************************************
     940ULONG Win32BaseWindow::MsgSysKeyUp (ULONG repeatCount, ULONG scancode, ULONG virtualKey)
     941{
     942  ULONG lParam=0;
     943
     944    lParam = repeatCount & 0x0FFFF;                 // bit 0-15,repeatcount
     945    lParam |= (scancode & 0x0FF) << 16;             // bit 16-23, scancode
     946                                                    // bit 24, 1=extended key
     947                                                    // bit 25-28, reserved
     948    lParam |= 0 << 29;                              // bit 29, key is released, always 0 for WM_KEYUP ?? <- conflict according to the MS docs
     949    lParam |= 1 << 30;                              // bit 30, previous state, always 1 for a WM_KEYUP message
     950    lParam |= 1 << 31;                              // bit 31, transition state, always 1 for WM_KEYUP
     951
     952    dprintf(("WM_SYSKEYUP: vkey:(%x) param:(%x)", virtualKey, lParam));
     953
     954    return SendInternalMessageA (WM_SYSKEYUP, virtualKey, lParam);
     955}
     956//******************************************************************************
     957//******************************************************************************
     958ULONG Win32BaseWindow::MsgSysKeyDown (ULONG repeatCount, ULONG scancode, ULONG virtualKey, BOOL keyWasPressed)
     959{
     960 ULONG lParam=0;
     961
     962    lParam = repeatCount & 0x0FFFF;                 // bit 0-15, repeatcount
     963    lParam |= (scancode & 0x0FF) << 16;             // bit 16-23, scancode
     964                                                    // bit 24, 1=extended key
     965                                                    // bit 25-28, reserved
     966                                                    // bit 29, key is pressed, always 0 for WM_KEYDOWN ?? <- conflict according to the MS docs
     967    if (keyWasPressed)
     968        lParam |= 1 << 30;                          // bit 30, previous state, 1 means key was pressed
     969                                                    // bit 31, transition state, always 0 for WM_KEYDOWN
     970
     971    dprintf(("WM_SYSKEYDOWN: vkey:(%x) param:(%x)", virtualKey, lParam));
     972
     973    return SendInternalMessageA (WM_SYSKEYDOWN, virtualKey, lParam);
    900974}
    901975//******************************************************************************
Note: See TracChangeset for help on using the changeset viewer.