static void tui_exit (void) { /* Disable the tui. Curses mode is left leaving the screen in a clean state (see endwin()). */ tui_disable (); }
/* TUI readline command. Switch the output mode between TUI/standard gdb. */ static int tui_rl_switch_mode (int notused1, int notused2) { if (tui_active) { tui_disable (); rl_prep_terminal (0); } else { rl_deprep_terminal (); tui_enable (); } /* Clear the readline in case switching occurred in middle of something. */ if (rl_end) rl_kill_text (0, rl_end); /* Since we left the curses mode, the terminal mode is restored to some previous state. That state may not be suitable for readline to work correctly (it may be restored in line mode). We force an exit of the current readline so that readline is re-entered and it will be able to setup the terminal for its needs. By re-entering in readline, we also redisplay its prompt in the non-curses mode. */ rl_newline (1, '\n'); /* Make sure the \n we are returning does not repeat the last command. */ dont_repeat (); return 0; }
static int tui_suspend (void *data) { tui_start_enabled = tui_active; tui_disable (); return 1; }