X-Git-Url: https://git.stderr.nl/gitweb?a=blobdiff_plain;f=tests%2Fstyletest.c;h=4e9a503f294660c9b5caa2cbcb1a738e274a3555;hb=HEAD;hp=33d7ce440f918e0e4632a888fbf994c154654273;hpb=6fadb5234d9e294dbc65cde416a288616f37b400;p=projects%2Fchimara%2Fchimara.git diff --git a/tests/styletest.c b/tests/styletest.c index 33d7ce4..4e9a503 100644 --- a/tests/styletest.c +++ b/tests/styletest.c @@ -3,17 +3,24 @@ #include #include #include +#include void print_help(); void do_style_test(); void do_link_test(); +void do_mouse_test(); winid_t mainwin; winid_t statuswin; void glk_main(void) { + char stringbuffer[128]; event_t ev; + + /* Define some custom styles */ + glk_stylehint_set(wintype_AllTypes, style_User1, stylehint_TextColor, 0x00FF0000); + mainwin = glk_window_open(0, 0, 0, wintype_TextBuffer, 0); if(!mainwin) return; @@ -26,7 +33,6 @@ void glk_main(void) assert(buffer); glk_put_string("Welcome to the style test\n"); - glk_request_line_event(mainwin, buffer, 255, 0); while(strncmp(buffer, "quit", 4)) { @@ -42,6 +48,9 @@ void glk_main(void) else if( !strncmp(buffer, "link", 4) ) { do_link_test(); } + else if( !strncmp(buffer, "mouse", 4) ) { + do_mouse_test(); + } else { glk_put_string("Huh?\n"); } @@ -50,15 +59,15 @@ void glk_main(void) else if(ev.type == evtype_Hyperlink) { glk_cancel_line_event(mainwin, NULL); - if(ev.val1 == 1) - glk_put_string("Link 1 was clicked\n"); - if(ev.val1 == 2) - glk_put_string("Link 2 was clicked\n"); - if(ev.val1 == 3) - glk_put_string("Link 3 was clicked\n"); - if(ev.val1 == 4) - glk_put_string("Link 4 was clicked\n"); - + snprintf(stringbuffer, 128, "Link %d was clicked\n", ev.val1); + glk_put_string(stringbuffer); + glk_request_line_event(mainwin, buffer, 255, 0); + } + else if(ev.type == evtype_MouseInput) + { + glk_cancel_line_event(mainwin, NULL); + snprintf(stringbuffer, 128, "Mouse click: x=%d, y=%d\n", ev.val1, ev.val2); + glk_put_string(stringbuffer); glk_request_line_event(mainwin, buffer, 255, 0); } } @@ -103,7 +112,12 @@ do_style_test() { glk_set_style(style_User2); glk_put_string("User2\n"); + glk_set_style(style_Header); + garglk_set_zcolors(0xFF0000, 0x00FFFF); + glk_put_string("Zcolor test\n"); + glk_set_style(style_Normal); + garglk_set_zcolors(0x000000, 0xFFFFFF); } void @@ -130,7 +144,16 @@ do_link_test() { glk_set_window(mainwin); } +void +do_mouse_test() { + glk_set_window(statuswin); + glk_window_move_cursor(statuswin, 0, 0); + glk_put_string("Click me......\n"); + glk_request_mouse_event(statuswin); + glk_set_window(mainwin); +} + void print_help() { - glk_put_string("The following commands are supported:\n - help (this help text)\n - style (perform style test)\n - link (perform hyperlink test)\n - quit (quit the program)\n"); + glk_put_string("The following commands are supported:\n - help (this help text)\n - style (perform style test)\n - link (perform hyperlink test)\n - mouse (perform mouse test)\n - quit (quit the program)\n"); }