aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorAndrew Burgess <andrew.burgess@embecosm.com>2015-05-22 10:07:42 +0200
committerAndrew Burgess <andrew.burgess@embecosm.com>2015-05-22 12:18:49 +0200
commita4ea0946c3f1badd6755b85b4e50e2ec4841e69c (patch)
tree676764992447da0e911ecb1e803bf7b9e26404fc /gdb
parent158bf1b4aacf7f184facdc184dc9585994f041a6 (diff)
downloadfsf-binutils-gdb-a4ea0946c3f1badd6755b85b4e50e2ec4841e69c.zip
fsf-binutils-gdb-a4ea0946c3f1badd6755b85b4e50e2ec4841e69c.tar.gz
fsf-binutils-gdb-a4ea0946c3f1badd6755b85b4e50e2ec4841e69c.tar.bz2
gdb: New 'tui enable' and 'tui disable' commands.
Add new commands to specifically enable and disable tui mode. This is in addition to the readline bindings, but might be easier for a user to discover if they accidentally end up in tui mode. gdb/ChangeLog: * NEWS: Mention 'tui enable' and 'tui disable'. * tui/tui.c (tui_enable_command): New function. (tui_disable_command): New function. (_initialize_tui): New function. gdb/doc/ChangeLog: * gdb.texinfo (TUI): Include 'tui enable' in the introduction. (TUI Commands): Add 'tui enable' and 'tui disable' details.
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog7
-rw-r--r--gdb/NEWS4
-rw-r--r--gdb/doc/ChangeLog5
-rw-r--r--gdb/doc/gdb.texinfo15
-rw-r--r--gdb/tui/tui.c34
5 files changed, 63 insertions, 2 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 42ef67d..f55b9c4 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,10 @@
+2015-05-22 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * NEWS: Mention 'tui enable' and 'tui disable'.
+ * tui/tui.c (tui_enable_command): New function.
+ (tui_disable_command): New function.
+ (_initialize_tui): New function.
+
2015-05-21 Andrew Burgess <andrew.burgess@embecosm.com>
* tui/tui-regs.c (tui_reg_next_command): Use NULL not 0.
diff --git a/gdb/NEWS b/gdb/NEWS
index e08dd0d..745444b 100644
--- a/gdb/NEWS
+++ b/gdb/NEWS
@@ -82,6 +82,10 @@ record bts
compile print
Evaluate expression by using the compiler and print result.
+tui enable
+tui disable
+ Explicit commands for enabling and disabling tui mode.
+
* New options
set max-completions
diff --git a/gdb/doc/ChangeLog b/gdb/doc/ChangeLog
index f8b0487..445f64d 100644
--- a/gdb/doc/ChangeLog
+++ b/gdb/doc/ChangeLog
@@ -1,3 +1,8 @@
+2015-05-22 Andrew Burgess <andrew.burgess@embecosm.com>
+
+ * gdb.texinfo (TUI): Include 'tui enable' in the introduction.
+ (TUI Commands): Add 'tui enable' and 'tui disable' details.
+
2015-05-16 Doug Evans <xdje42@gmail.com>
* guile.texi (Memory Ports in Guile): Document support for unbuffered
diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
index 1665372..e38fd31 100644
--- a/gdb/doc/gdb.texinfo
+++ b/gdb/doc/gdb.texinfo
@@ -24669,8 +24669,9 @@ is available.
The TUI mode is enabled by default when you invoke @value{GDBN} as
@samp{@value{GDBP} -tui}.
You can also switch in and out of TUI mode while @value{GDBN} runs by
-using various TUI commands and key bindings, such as @kbd{C-x C-a}.
-@xref{TUI Keys, ,TUI Key Bindings}.
+using various TUI commands and key bindings, such as @command{tui
+enable} or @kbd{C-x C-a}. @xref{TUI Commands, ,TUI Commands} and
+@ref{TUI Keys, ,TUI Key Bindings}.
@node TUI Overview
@section TUI Overview
@@ -24944,6 +24945,16 @@ these commands will fail with an error, because it would not be
possible or desirable to enable curses window management.
@table @code
+@item tui enable
+@kindex tui enable
+Activate TUI mode. The last active TUI window layout will be used if
+TUI mode has prevsiouly been used in the current debugging session,
+otherwise a default layout is used.
+
+@item tui disable
+@kindex tui disable
+Disable TUI mode, returning to the console interpreter.
+
@item info win
@kindex info win
List and give the size of all displayed windows.
diff --git a/gdb/tui/tui.c b/gdb/tui/tui.c
index 308e7ae..838471d 100644
--- a/gdb/tui/tui.c
+++ b/gdb/tui/tui.c
@@ -540,6 +540,22 @@ tui_disable (void)
tui_update_gdb_sizes ();
}
+/* Command wrapper for enabling tui mode. */
+
+static void
+tui_enable_command (char *args, int from_tty)
+{
+ tui_enable ();
+}
+
+/* Command wrapper for leaving tui mode. */
+
+static void
+tui_disable_command (char *args, int from_tty)
+{
+ tui_disable ();
+}
+
void
strcat_to_buf (char *buf, int buflen,
const char *item_to_add)
@@ -652,3 +668,21 @@ tui_get_command_dimension (unsigned int *width,
*height = TUI_CMD_WIN->generic.height;
return 1;
}
+
+/* Provide a prototype to silence -Wmissing-prototypes. */
+extern initialize_file_ftype _initialize_tui;
+
+void
+_initialize_tui (void)
+{
+ struct cmd_list_element **tuicmd;
+
+ tuicmd = tui_get_cmd_list ();
+
+ add_cmd ("enable", class_tui, tui_enable_command,
+ _("Enable TUI display mode."),
+ tuicmd);
+ add_cmd ("disable", class_tui, tui_disable_command,
+ _("Disable TUI display mode."),
+ tuicmd);
+}