13 static const int StringSize = 4096;
23 static void sig_int(int dummy){
24 my_log("POLYGLOT *** SIGINT Received ***\n");
30 static void sig_pipe(int dummy){
31 my_log("POLYGLOT *** SIGPIPE Received ***\n");
37 static void sig_term(int dummy){
38 my_log("POLYGLOT *** SIGTERM Received ***\n");
45 void gui_init(gui_t *gui){
47 // the following is nice if the "GUI" is a console!
48 signal(SIGINT,sig_int);
50 signal(SIGTERM,sig_term);
53 signal(SIGPIPE,sig_pipe);
55 pipex_open(gui->pipex,"GUI",NULL,NULL);
59 // gui_get_non_blocking()
61 bool gui_get_non_blocking(gui_t * gui, char *string) {
66 if(pipex_eof(gui->pipex)){
68 return TRUE; // we never get here
70 return pipex_readln_nb(gui->pipex,string);
75 void gui_get(gui_t * gui, char *string) {
76 if(pipex_eof(gui->pipex)){
79 pipex_readln(gui->pipex,string);
85 void gui_send(gui_t * gui, const char format[], ...) {
87 char string[FormatBufferSize];
94 CONSTRUCT_ARG_STRING(format,string);
98 pipex_writeln(gui->pipex,string);