Public interface for MOUSE support
This commit is contained in:
parent
513e0ac59b
commit
2ba9849ab5
|
@ -920,6 +920,10 @@ size_t termkey_snprint_key(TermKey *tk, char *buffer, size_t len, TermKeyKey *ke
|
|||
case TERMKEY_TYPE_FUNCTION:
|
||||
l = snprintf(buffer + pos, len - pos, "F%d", key->code.number);
|
||||
break;
|
||||
case TERMKEY_TYPE_MOUSE:
|
||||
l = snprintf(buffer + pos, len - pos, "MOUSE(0x%02x,%d,%d)",
|
||||
key->code.mouse.buttons, key->code.mouse.line, key->code.mouse.col);
|
||||
break;
|
||||
}
|
||||
|
||||
if(l <= 0) return pos;
|
||||
|
|
|
@ -89,7 +89,8 @@ typedef enum {
|
|||
typedef enum {
|
||||
TERMKEY_TYPE_UNICODE,
|
||||
TERMKEY_TYPE_FUNCTION,
|
||||
TERMKEY_TYPE_KEYSYM
|
||||
TERMKEY_TYPE_KEYSYM,
|
||||
TERMKEY_TYPE_MOUSE,
|
||||
} TermKeyType;
|
||||
|
||||
typedef enum {
|
||||
|
@ -111,6 +112,10 @@ typedef struct {
|
|||
long codepoint; // TERMKEY_TYPE_UNICODE
|
||||
int number; // TERMKEY_TYPE_FUNCTION
|
||||
TermKeySym sym; // TERMKEY_TYPE_KEYSYM
|
||||
struct {
|
||||
short buttons;
|
||||
short col, line;
|
||||
} mouse; // TERMKEY_TYPE_MOUSE
|
||||
} code;
|
||||
int modifiers;
|
||||
|
||||
|
|
Loading…
Reference in New Issue