Jump to content

UniUpdateShiftState: Difference between revisions

From EDM2
m added one
No edit summary
Line 49: Line 49:
=== OS Version Introduced ===
=== OS Version Introduced ===
OS/2 Warp
OS/2 Warp
[[OS2_API | Back to OS/2 API]]
[[Category:The OS/2 API Project]]

Revision as of 22:00, 1 November 2011

UniUpdateShiftState

UniUpdateShiftState(keyboardHndl, shiftState, vScan, makeBreak)
Update the effective and actual shift state and LED status.

Parameters

keyboardHndl - KHAND - input
The key board handle received from UniCreateKeyboard.
shiftState - USHIFTSTATE - input
The shift state consists of 3 32-bit values. These bit definitions define the actual, effective, and LED shift states.
vScan - VSCAN - input
Presentation Manager scan code.
makeBreak - BYTE - input
Key make, break, repeat indicator.

Constants

None

Returns

An integer with values of:

Module

Define (C/C++)

Export name/Ordinal

Calling conversion

Cdecl32

Example Code

KHAND       keyboardHndl;
USHIFTSTATE shiftState;
VSCAN       vScan;
BYTE        makeBreak;
integer     rc;
...
rc = UniUpdateShiftState(keyboardHndl, shiftState, vScan, makeBreak);
...

Related Functions

UniResetShiftState

Notes

UniUpdateShiftState modifies the shift state as dictated by the scan code, using the specified keyboard translation tables. The shift state consists of these three parts:

  • The actual shift state
  • The effective shift state
  • The LED status

The effective shift is equal to the 16 lower bits of the actual shift, but when a lock state modifies an actual shift (such as caps lock affecting shift), the effective shift is modified. This means that the effective shift is only correct for the specified scan code.

OS Version Introduced

OS/2 Warp


Back to OS/2 API