blob: 09f2af76d6f41dd64fd1ec9079e1d9fb7428006b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
|
/*
* SDL - Simple DirectMedia Layer
* Copyright (C) 1997-2009 Sam Lantinga
*
* SPDX-License-Identifier: LGPL-2.1-or-later
* See LICENSES/README.md for more information.
*
* Sam Lantinga
* slouken@libsdl.org
*/
#pragma once
/* Include file for SDL keyboard event handling */
#include "XBMC_keysym.h"
#include <stdint.h>
/* Keysym structure
- The scancode is hardware dependent, and should not be used by general
applications. If no hardware scancode is available, it will be 0.
- The 'unicode' translated character is only available when character
translation is enabled by the XBMC_EnableUNICODE() API. If non-zero,
this is a UNICODE character corresponding to the keypress. If the
high 9 bits of the character are 0, then this maps to the equivalent
ASCII character:
char ch;
if ( (keysym.unicode & 0xFF80) == 0 ) {
ch = keysym.unicode & 0x7F;
} else {
An international character..
}
*/
typedef struct XBMC_keysym
{
unsigned char scancode; /* hardware specific scancode */
XBMCKey sym; /* SDL virtual keysym */
XBMCMod mod; /* current key modifiers */
uint16_t unicode; /* translated character */
} XBMC_keysym;
/* This is the mask which refers to all hotkey bindings */
#define XBMC_ALL_HOTKEYS 0xFFFFFFFF
|