From 5692f32bcfa049fc2b5555b5a883045b217349b9 Mon Sep 17 00:00:00 2001 From: Přemysl Janouch Date: Thu, 9 Oct 2014 23:47:24 +0200 Subject: CMake-ify, rename to termkey2 for the time being --- termkey-internal.h | 115 ----------------------------------------------------- 1 file changed, 115 deletions(-) delete mode 100644 termkey-internal.h (limited to 'termkey-internal.h') diff --git a/termkey-internal.h b/termkey-internal.h deleted file mode 100644 index 7282454..0000000 --- a/termkey-internal.h +++ /dev/null @@ -1,115 +0,0 @@ -#ifndef TERMKEY_INTERNAL_H -#define TERMKEY_INTERNAL_H - -#include "termkey.h" - -#include -#include -#include -#include - -typedef struct termkey_driver termkey_driver_t; -struct termkey_driver -{ - const char *name; - void *(*new_driver) (termkey_t *tk, const char *term); - void (*free_driver) (void *info); - int (*start_driver) (termkey_t *tk, void *info); - int (*stop_driver) (termkey_t *tk, void *info); - termkey_result_t (*peekkey) (termkey_t *tk, - void *info, termkey_key_t *key, int force, size_t *nbytes); -}; - -typedef struct keyinfo keyinfo_t; -struct keyinfo -{ - termkey_type_t type; - termkey_sym_t sym; - int modifier_mask; - int modifier_set; -}; - -typedef struct termkey_driver_node termkey_driver_node_t; -struct termkey_driver_node -{ - termkey_driver_t *driver; - void *info; - termkey_driver_node_t *next; -}; - -struct termkey -{ - int fd; - int flags; - int canonflags; - - unsigned char *buffer; - size_t buffstart; // First offset in buffer - size_t buffcount; // Number of entires valid in buffer - size_t buffsize; // Total malloc'ed size - - // Position beyond buffstart at which peekkey() should next start. - // Normally 0, but see also termkey_interpret_csi(). - size_t hightide; - - struct termios restore_termios; - bool restore_termios_valid; - - int waittime; // In milliseconds - - bool is_closed; // We've received EOF - bool is_started; - - int nkeynames; - const char **keynames; - - keyinfo_t c0[32]; // There are 32 C0 codes - iconv_t to_utf32_conv; - iconv_t from_utf32_conv; - termkey_driver_node_t *drivers; - - // Now some "protected" methods for the driver to call but which we don't - // want exported as real symbols in the library - struct - { - void (*emit_codepoint) (termkey_t *tk, - uint32_t codepoint, termkey_key_t *key); - termkey_result_t (*peekkey_simple) (termkey_t *tk, - termkey_key_t *key, int force, size_t *nbytes); - termkey_result_t (*peekkey_mouse) (termkey_t *tk, - termkey_key_t *key, size_t *nbytes); - } - method; -}; - -static inline void -termkey_key_get_linecol (const termkey_key_t *key, int *line, int *col) -{ - if (col) - *col = (unsigned char) key->code.mouse[1] - | ((unsigned char) key->code.mouse[3] & 0x0f) << 8; - - if (line) - *line = (unsigned char) key->code.mouse[2] - | ((unsigned char) key->code.mouse[3] & 0x70) << 4; -} - -static inline void -termkey_key_set_linecol (termkey_key_t *key, int line, int col) -{ - if (line > 0xfff) - line = 0xfff; - - if (col > 0x7ff) - col = 0x7ff; - - key->code.mouse[1] = (line & 0x0ff); - key->code.mouse[2] = (col & 0x0ff); - key->code.mouse[3] = (line & 0xf00) >> 8 | (col & 0x300) >> 4; -} - -extern termkey_driver_t termkey_driver_csi; -extern termkey_driver_t termkey_driver_ti; - -#endif // ! TERMKEY_INTERNAL_H - -- cgit v1.2.3-54-g00ecf