bool mainwnd::signal_action(Glib::IOCondition condition) { int message; if ((condition & Glib::IO_IN) == 0) { printf("Error: unexpected IO condition\n"); return false; } if (read(m_sigpipe[0], &message, sizeof(message)) == -1) { printf("read() failed: %s\n", std::strerror(errno)); return false; } switch (message) { case SIGUSR1: save_file(); break; case SIGINT: file_exit(); break; default: printf("Unexpected signal received: %d\n", message); break; } return true; }
int Cseq_lauch(){ ncu_menu_refrech(menu_seq); while(1) switch(ncu_menu_action(menu_seq,cmda)){ case 0: ncu_sequence_new_elem(interface_seq,cmda); break; case 1: if(seqa->first == NULL) break; if(seqa->curent == NULL) break; ncu_sequence_action(interface_seq,cmda); seqa->curent->send=0; ncu_sequence_refrech(interface_seq); ncu_frame_change(frame,seqa->curent->seq); ncu_frame_action(frame,cmda); break; case 2: if(seqa->first == NULL) break; if(seqa->curent == NULL) break; ncu_sequence_action(interface_seq,cmda); ncu_sequence_del(interface_seq); ncu_sequence_refrech(interface_seq); break; case 3: if(seqa->first == NULL) break; if(seqa->curent == NULL) break; ncu_sequence_action(interface_seq,cmda); ncu_fileSelect_getUart(file_selector,cmda); uart_sendModif(file_selector->uart, seqa,messBoxa); uart_sendJouer(file_selector->uart,seqa,messBoxa); messageBox_refrech(messBoxa); ncu_sequence_refrech(interface_seq); break; case 4 : ncu_fileSelect_getFIle(file_selector,cmda,O_RDONLY); file_charge(file_selector->file,seqa,messBoxa); messageBox_refrech(messBoxa); file_exit(file_selector->file); ncu_sequence_refrech(interface_seq); break; case 5 : ncu_fileSelect_getFIle(file_selector,cmda, O_WRONLY ); file_save(file_selector->file,seqa,messBoxa); messageBox_refrech(messBoxa); file_exit( file_selector->file); ncu_sequence_refrech(interface_seq); break; case -1:return 0; break; } }