X-Git-Url: http://git.madism.org/?a=blobdiff_plain;f=madtty%2Fmadtty.h;h=2859bfe3bf4ee86d2733d37dea43ba05ce1e8877;hb=HEAD;hp=c790a50a19086e38e3bc85fbb8fc9916c33eab40;hpb=226d6a58d4512b37d3f912f7be227f023b25c04c;p=apps%2Fmadtty.git diff --git a/madtty/madtty.h b/madtty/madtty.h index c790a50..2859bfe 100644 --- a/madtty/madtty.h +++ b/madtty/madtty.h @@ -30,11 +30,34 @@ #include #include -void madtty_init_colors(void); -int madtty_color_pair(int fg, int bg); -void madtty_init_vt100_graphics(void); +enum { + /* means escape sequence was handled */ + MADTTY_HANDLER_OK, + /* means the escape sequence was not recognized yet, but + * there is hope that it still will once more characters + * arrive (i.e. it is not yet complete). + * + * The library will thus continue collecting characters + * and calling the handler as each character arrives until + * either OK or NOWAY is returned. + */ + MADTTY_HANDLER_NOTYET, + /* means the escape sequence was not recognized, and there + * is no chance that it will even if more characters are + * added to it. + */ + MADTTY_HANDLER_NOWAY +}; typedef struct madtty_t madtty_t; +typedef int (*madtty_handler_t)(madtty_t *, char *es); + +void madtty_init_colors(void); +void madtty_init_vt100_graphics(void); +void madtty_set_handler(madtty_t *, madtty_handler_t); +void madtty_set_data(madtty_t *, void *); +void *madtty_get_data(madtty_t *); +int madtty_color_pair(int fg, int bg); madtty_t *madtty_create(int rows, int cols); void madtty_resize(madtty_t *, int rows, int cols);