diff options
Diffstat (limited to 'readline.h')
-rw-r--r-- | readline.h | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/readline.h b/readline.h new file mode 100644 index 0000000..b626cae --- /dev/null +++ b/readline.h @@ -0,0 +1,37 @@ +#ifndef READLINE_H_SENTRY +#define READLINE_H_SENTRY + +#include "readline.h" + +/* + * ends with these codes in escape sequence + * for the arrows + */ +enum keys{ + left_arrow = 'D', + right_arrow = 'C', + up_arrow = 'A', + down_arrow = 'B', + none = 0, + unknown_key = -1, + backspace = 127 +}; + +struct readline_type { + char *arr; + int cursor_pos; + int considered_index; + int last_element_index; + int allocation_size; +}; + +void readline_create_array(struct readline_type *readline); +void readline_add_char(struct readline_type *readline, int ch); +void readline_reset_array(struct readline_type *readline); +void readline_clear(struct readline_type *readline); +void readline_print(struct readline_type *readline_type); +enum keys readline_detect_arrow_keys(int ch); +void readline_move_along(struct readline_type *readline, enum keys found_key); +void readline_character_deletion(struct readline_type *readline); + +#endif |