UniUpdateShiftState: Difference between revisions
Appearance
No edit summary |
mNo edit summary |
||
Line 6: | Line 6: | ||
; shiftState - [[OS2 API:DataType:USHIFTSTATE|USHIFTSTATE]] - input : The shift state consists of 3 32-bit values. These bit definitions define the actual, effective, and LED shift states. | ; shiftState - [[OS2 API:DataType:USHIFTSTATE|USHIFTSTATE]] - input : The shift state consists of 3 32-bit values. These bit definitions define the actual, effective, and LED shift states. | ||
; vScan - [[OS2 API:DataType:VSCAN|VSCAN]] - input : [[OS2 API:PMI|Presentation Manager]] scan code. | ; vScan - [[OS2 API:DataType:VSCAN|VSCAN]] - input : [[OS2 API:PMI|Presentation Manager]] scan code. | ||
; makeBreak - [[ | ; makeBreak - [[BYTE]] - input : Key make, break, repeat indicator. | ||
=== Constants === | === Constants === | ||
Line 15: | Line 15: | ||
* [[OS2 API:Unicode:error#ULS_BADHANDLE|ULS_BADHANDLE]] | * [[OS2 API:Unicode:error#ULS_BADHANDLE|ULS_BADHANDLE]] | ||
* [[OS2 API:Unicode:error#ULS_SUCCESS|ULS_SUCCESS]] | * [[OS2 API:Unicode:error#ULS_SUCCESS|ULS_SUCCESS]] | ||
=== Calling conversion === | === Calling conversion === | ||
Line 29: | Line 23: | ||
[[OS2 API:DataType:USHIFTSTATE|USHIFTSTATE]] shiftState; | [[OS2 API:DataType:USHIFTSTATE|USHIFTSTATE]] shiftState; | ||
[[OS2 API:DataType:VSCAN|VSCAN]] vScan; | [[OS2 API:DataType:VSCAN|VSCAN]] vScan; | ||
[[ | [[BYTE]] makeBreak; | ||
integer rc; | integer rc; | ||
... | ... | ||
Line 36: | Line 30: | ||
=== Related Functions === | === Related Functions === | ||
[[OS2 API:UniResetShiftState|UniResetShiftState]] | *[[OS2 API:UniResetShiftState|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 | ||
Line 50: | Line 43: | ||
OS/2 Warp | OS/2 Warp | ||
[[Category:Uni]] | |||
[[Category: |
Revision as of 20:17, 2 November 2016
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:
Calling conversion
Example Code
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