/* TUI support I/O functions.
- Copyright 1998, 1999, 2000, 2001, 2002, 2004 Free Software
- Foundation, Inc.
+ Copyright (C) 1998-2019 Free Software Foundation, Inc.
Contributed by Hewlett-Packard Company.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
+ the Free Software Foundation; either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
- along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA. */
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
#ifndef TUI_IO_H
#define TUI_IO_H
+#include "gdb_curses.h"
+
struct ui_out;
+class cli_ui_out;
/* Print the string in the curses command window. */
-extern void tui_puts (const char *);
+extern void tui_puts (const char *, WINDOW * = nullptr);
+
+/* Print LENGTH characters from the buffer pointed to by BUF to the
+ curses command window. */
+extern void tui_write (const char *buf, size_t length);
/* Setup the IO for curses or non-curses mode. */
extern void tui_setup_io (int mode);
/* Initialize the IO for gdb in curses mode. */
extern void tui_initialize_io (void);
-/* Get a character from the command window. */
-extern int tui_getc (FILE *);
-
/* Readline callback.
Redisplay the command line with its prompt after readline has
changed the edited text. */
extern void tui_redisplay_readline (void);
-extern struct ui_out *tui_out;
-extern struct ui_out *tui_old_uiout;
+/* Expand TABs into spaces. */
+extern char *tui_expand_tabs (const char *, int);
-extern int key_is_start_sequence (int ch);
-extern int key_is_end_sequence (int ch);
-extern int key_is_backspace (int ch);
-extern int key_is_command_char (int ch);
+extern struct ui_out *tui_out;
+extern cli_ui_out *tui_old_uiout;
#endif