UniUpdateShiftState: Difference between revisions
Appearance
No edit summary |
mNo edit summary |
||
Line 5: | Line 5: | ||
=== Parameters === | === Parameters === | ||
; keyboardHndl - [[ | ; keyboardHndl - [[KHAND]] - input : The key board handle received from [[UniCreateKeyboard]]. | ||
; shiftState - [[ | ; 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 - [[VSCAN]] - input : Presentation Manager scan code. | ||
; makeBreak - [[BYTE]] - input : Key make, break, repeat indicator. | ; makeBreak - [[BYTE]] - input : Key make, break, repeat indicator. | ||
Line 21: | Line 21: | ||
[[Cdecl32]] | [[Cdecl32]] | ||
=== | === Bindings === | ||
KHAND keyboardHndl; | |||
USHIFTSTATE shiftState; | |||
VSCAN vScan; | |||
BYTE makeBreak; | |||
integer rc; | integer rc; | ||
... | ... | ||
Line 32: | Line 32: | ||
=== Related Functions === | === Related Functions === | ||
*[[ | *[[UniResetShiftState]] | ||
=== Notes === | === 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 actual shift state | ||
* The effective shift state | * The effective shift state | ||
* The LED status | * 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. | 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. | ||
Latest revision as of 16:07, 12 March 2018
Update the effective and actual shift state and LED status.
Syntax
UniUpdateShiftState(keyboardHndl, shiftState, vScan, makeBreak);
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:
Calling Convention
Bindings
KHAND keyboardHndl; USHIFTSTATE shiftState; VSCAN vScan; BYTE makeBreak; integer rc; ... rc = UniUpdateShiftState(keyboardHndl, shiftState, vScan, makeBreak); ...
Related Functions
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