diff options
| author | Nick Roberts | 2005-10-31 21:13:15 +0000 |
|---|---|---|
| committer | Nick Roberts | 2005-10-31 21:13:15 +0000 |
| commit | 671d498f2a9776cdae01dce98eef9bdbf372f191 (patch) | |
| tree | 190030583cae7f380eb13e4b588e94ddd171db48 | |
| parent | 158a07a81a8aaf532be9ea558778a6cbe38628e3 (diff) | |
| download | emacs-671d498f2a9776cdae01dce98eef9bdbf372f191.tar.gz emacs-671d498f2a9776cdae01dce98eef9bdbf372f191.zip | |
(gdb-use-inferior-io-buffer): New function.
(menu, toggle-gdb-use-inferior-io-buffer): Get rid of defadvice.
(gdb-many-windows): Doc fix.
| -rw-r--r-- | lisp/progmodes/gdb-ui.el | 45 |
1 files changed, 28 insertions, 17 deletions
diff --git a/lisp/progmodes/gdb-ui.el b/lisp/progmodes/gdb-ui.el index c8f1d1db020..c0de676c7a1 100644 --- a/lisp/progmodes/gdb-ui.el +++ b/lisp/progmodes/gdb-ui.el | |||
| @@ -214,12 +214,6 @@ detailed description of this mode. | |||
| 214 | :group 'gud | 214 | :group 'gud |
| 215 | :version "22.1") | 215 | :version "22.1") |
| 216 | 216 | ||
| 217 | (defcustom gdb-use-inferior-io-buffer nil | ||
| 218 | "Non-nil means display output from the inferior in a separate buffer." | ||
| 219 | :type 'boolean | ||
| 220 | :group 'gud | ||
| 221 | :version "22.1") | ||
| 222 | |||
| 223 | (defcustom gdb-cpp-define-alist-program "gcc -E -dM -" | 217 | (defcustom gdb-cpp-define-alist-program "gcc -E -dM -" |
| 224 | "Shell command for generating a list of defined macros in a source file. | 218 | "Shell command for generating a list of defined macros in a source file. |
| 225 | This list is used to display the #define directive associated | 219 | This list is used to display the #define directive associated |
| @@ -245,6 +239,29 @@ Also display the main routine in the disassembly buffer if present." | |||
| 245 | :group 'gud | 239 | :group 'gud |
| 246 | :version "22.1") | 240 | :version "22.1") |
| 247 | 241 | ||
| 242 | |||
| 243 | (defcustom gdb-use-inferior-io-buffer nil | ||
| 244 | "Non-nil means display output from the inferior in a separate buffer." | ||
| 245 | :type 'boolean | ||
| 246 | :group 'gud | ||
| 247 | :version "22.1") | ||
| 248 | |||
| 249 | (defun gdb-use-inferior-io-buffer (arg) | ||
| 250 | "Toggle separate IO for inferior. | ||
| 251 | With arg, use separate IO iff arg is positive." | ||
| 252 | (interactive "P") | ||
| 253 | (setq gdb-use-inferior-io-buffer | ||
| 254 | (if (null arg) | ||
| 255 | (not gdb-use-inferior-io-buffer) | ||
| 256 | (> (prefix-numeric-value arg) 0))) | ||
| 257 | (if (and gud-comint-buffer | ||
| 258 | (buffer-name gud-comint-buffer)) | ||
| 259 | (condition-case nil | ||
| 260 | (if gdb-use-inferior-io-buffer | ||
| 261 | (gdb-restore-windows) | ||
| 262 | (kill-buffer (gdb-inferior-io-name))) | ||
| 263 | (error nil)))) | ||
| 264 | |||
| 248 | (defvar gdb-define-alist nil "Alist of #define directives for GUD tooltips.") | 265 | (defvar gdb-define-alist nil "Alist of #define directives for GUD tooltips.") |
| 249 | 266 | ||
| 250 | (defun gdb-create-define-alist () | 267 | (defun gdb-create-define-alist () |
| @@ -2315,11 +2332,9 @@ corresponding to the mode line clicked." | |||
| 2315 | (define-key gud-menu-map [ui] | 2332 | (define-key gud-menu-map [ui] |
| 2316 | `(menu-item "GDB-UI" ,menu :visible (eq gud-minor-mode 'gdba))) | 2333 | `(menu-item "GDB-UI" ,menu :visible (eq gud-minor-mode 'gdba))) |
| 2317 | (define-key menu [gdb-use-inferior-io] | 2334 | (define-key menu [gdb-use-inferior-io] |
| 2318 | ;; See defadvice below. | 2335 | '(menu-item "Separate inferior IO" gdb-use-inferior-io-buffer |
| 2319 | (menu-bar-make-toggle toggle-gdb-use-inferior-io-buffer | 2336 | :help "Toggle separate IO for inferior." |
| 2320 | gdb-use-inferior-io-buffer | 2337 | :button (:toggle . gdb-use-inferior-io-buffer))) |
| 2321 | "Separate inferior IO" "Use separate IO %s" | ||
| 2322 | "Toggle separate IO for inferior.")) | ||
| 2323 | (define-key menu [gdb-many-windows] | 2338 | (define-key menu [gdb-many-windows] |
| 2324 | '(menu-item "Display Other Windows" gdb-many-windows | 2339 | '(menu-item "Display Other Windows" gdb-many-windows |
| 2325 | :help "Toggle display of locals, stack and breakpoint information" | 2340 | :help "Toggle display of locals, stack and breakpoint information" |
| @@ -2328,11 +2343,6 @@ corresponding to the mode line clicked." | |||
| 2328 | '(menu-item "Restore Window Layout" gdb-restore-windows | 2343 | '(menu-item "Restore Window Layout" gdb-restore-windows |
| 2329 | :help "Restore standard layout for debug session."))) | 2344 | :help "Restore standard layout for debug session."))) |
| 2330 | 2345 | ||
| 2331 | ;; This function is defined above through a macro. | ||
| 2332 | (defadvice toggle-gdb-use-inferior-io-buffer (after gdb-kill-io-buffer activate) | ||
| 2333 | (unless gdb-use-inferior-io-buffer | ||
| 2334 | (kill-buffer (gdb-inferior-io-name)))) | ||
| 2335 | |||
| 2336 | (defun gdb-frame-gdb-buffer () | 2346 | (defun gdb-frame-gdb-buffer () |
| 2337 | "Display GUD buffer in a new frame." | 2347 | "Display GUD buffer in a new frame." |
| 2338 | (interactive) | 2348 | (interactive) |
| @@ -2392,7 +2402,8 @@ of the inferior. Non-nil means display the layout shown for | |||
| 2392 | :version "22.1") | 2402 | :version "22.1") |
| 2393 | 2403 | ||
| 2394 | (defun gdb-many-windows (arg) | 2404 | (defun gdb-many-windows (arg) |
| 2395 | "Toggle the number of windows in the basic arrangement." | 2405 | "Toggle the number of windows in the basic arrangement. |
| 2406 | With arg, display additional buffers iff arg is positive." | ||
| 2396 | (interactive "P") | 2407 | (interactive "P") |
| 2397 | (setq gdb-many-windows | 2408 | (setq gdb-many-windows |
| 2398 | (if (null arg) | 2409 | (if (null arg) |