[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/lisp/progmodes/gdb-ui.el
From: |
Nick Roberts |
Subject: |
[Emacs-diffs] Changes to emacs/lisp/progmodes/gdb-ui.el |
Date: |
Tue, 03 May 2005 02:48:47 -0400 |
Index: emacs/lisp/progmodes/gdb-ui.el
diff -c emacs/lisp/progmodes/gdb-ui.el:1.62 emacs/lisp/progmodes/gdb-ui.el:1.63
*** emacs/lisp/progmodes/gdb-ui.el:1.62 Wed Apr 27 22:00:22 2005
--- emacs/lisp/progmodes/gdb-ui.el Tue May 3 06:48:47 2005
***************
*** 196,201 ****
--- 196,228 ----
:group 'gud
:version "22.1")
+ (defcustom gdb-cpp-define-alist-program "gcc -E -dM -"
+ "The program name for generating an alist of #define directives.
+ This list is used to display the #define directive associated
+ with an identifier as a tooltip. It works in a debug session with
+ GDB, when tooltip-gud-tips-p is t."
+ :type 'string
+ :group 'gud
+ :version "22.1")
+
+ (defvar gdb-define-alist nil "Alist of #define directives for GUD tooltips.")
+
+ (defun gdb-create-define-alist ()
+ (let* ((file (buffer-file-name))
+ (output
+ (with-output-to-string
+ (with-current-buffer standard-output
+ (call-process shell-file-name
+ (if (file-exists-p file) file nil)
+ (list t nil) nil "-c"
+ gdb-cpp-define-alist-program))))
+ (define-list (split-string output "\n" t))
+ (name))
+ (setq gdb-define-alist nil)
+ (dolist (define define-list)
+ (setq name (nth 1 (split-string define "[( ]")))
+ (push (cons name define) gdb-define-alist))))
+
(defun gdb-set-gud-minor-mode (buffer)
"Set gud-minor-mode from find-file if appropriate."
(goto-char (point-min))
***************
*** 208,220 ****
(defun gdb-set-gud-minor-mode-1 (buffer)
(goto-char (point-min))
! (if (and (search-forward "Located in " nil t)
! (looking-at "\\S-*")
! (string-equal (buffer-file-name buffer)
! (match-string 0)))
! (with-current-buffer buffer
! (set (make-local-variable 'gud-minor-mode) 'gdba)
! (set (make-local-variable 'tool-bar-map) gud-tool-bar-map))))
(defun gdb-set-gud-minor-mode-existing-buffers ()
(dolist (buffer (buffer-list))
--- 235,250 ----
(defun gdb-set-gud-minor-mode-1 (buffer)
(goto-char (point-min))
! (when (and (search-forward "Located in " nil t)
! (looking-at "\\S-*")
! (string-equal (buffer-file-name buffer)
! (match-string 0)))
! (with-current-buffer buffer
! (set (make-local-variable 'gud-minor-mode) 'gdba)
! (set (make-local-variable 'tool-bar-map) gud-tool-bar-map)
! (make-local-variable 'gdb-define-alist)
! (gdb-create-define-alist)
! (add-hook 'after-save-hook 'gdb-create-define-alist nil t))))
(defun gdb-set-gud-minor-mode-existing-buffers ()
(dolist (buffer (buffer-list))
***************
*** 805,811 ****
(setq gud-last-frame
(cons
(match-string 1 args)
! (string-to-int (match-string 2 args))))
(setq gdb-current-address (match-string 3 args))
;; cover for auto-display output which comes *before*
;; stopped annotation
--- 835,841 ----
(setq gud-last-frame
(cons
(match-string 1 args)
! (string-to-number (match-string 2 args))))
(setq gdb-current-address (match-string 3 args))
;; cover for auto-display output which comes *before*
;; stopped annotation
***************
*** 889,895 ****
(setq gdb-active-process nil)
(gdb-stopping ignored))
-
(defun gdb-frame-begin (ignored)
(let ((sink gdb-output-sink))
(cond
--- 919,924 ----
***************
*** 1690,1696 ****
(save-selected-window
(select-window (posn-window (event-start event)))
(let* ((arg (read-from-minibuffer "Repeat count: "))
! (count (string-to-int arg)))
(if (< count 0)
(error "Non-negative numbers only")
(customize-set-variable 'gdb-memory-repeat-count count)
--- 1719,1725 ----
(save-selected-window
(select-window (posn-window (event-start event)))
(let* ((arg (read-from-minibuffer "Repeat count: "))
! (count (string-to-number arg)))
(if (< count 0)
(error "Non-negative numbers only")
(customize-set-variable 'gdb-memory-repeat-count count)
***************
*** 1998,2004 ****
(let ((menu (make-sparse-keymap "GDB-Windows")))
(define-key gud-menu-map [displays]
! `(menu-item "GDB-Windows" ,menu :visible (eq gud-minor-mode 'gdba)))
(define-key menu [gdb] '("Gdb" . gdb-display-gdb-buffer))
(define-key menu [threads] '("Threads" . gdb-display-threads-buffer))
(define-key menu [memory] '("Memory" . gdb-display-memory-buffer))
--- 2027,2034 ----
(let ((menu (make-sparse-keymap "GDB-Windows")))
(define-key gud-menu-map [displays]
! `(menu-item "GDB-Windows" ,menu
! :visible (memq gud-minor-mode '(gdbmi gdba))))
(define-key menu [gdb] '("Gdb" . gdb-display-gdb-buffer))
(define-key menu [threads] '("Threads" . gdb-display-threads-buffer))
(define-key menu [memory] '("Memory" . gdb-display-memory-buffer))
***************
*** 2014,2020 ****
(let ((menu (make-sparse-keymap "GDB-Frames")))
(define-key gud-menu-map [frames]
! `(menu-item "GDB-Frames" ,menu :visible (eq gud-minor-mode 'gdba)))
(define-key menu [gdb] '("Gdb" . gdb-frame-gdb-buffer))
(define-key menu [threads] '("Threads" . gdb-frame-threads-buffer))
(define-key menu [memory] '("Memory" . gdb-frame-memory-buffer))
--- 2044,2051 ----
(let ((menu (make-sparse-keymap "GDB-Frames")))
(define-key gud-menu-map [frames]
! `(menu-item "GDB-Frames" ,menu
! :visible (memq gud-minor-mode '(gdbmi gdba))))
(define-key menu [gdb] '("Gdb" . gdb-frame-gdb-buffer))
(define-key menu [threads] '("Threads" . gdb-frame-threads-buffer))
(define-key menu [memory] '("Memory" . gdb-frame-memory-buffer))
***************
*** 2153,2165 ****
(gdb-remove-breakpoint-icons (point-min) (point-max) t)
(setq gud-minor-mode nil)
(kill-local-variable 'tool-bar-map)
! (setq gud-running nil)
! (setq gdb-active-process nil))))))
(when (markerp gdb-overlay-arrow-position)
(move-marker gdb-overlay-arrow-position nil)
(setq gdb-overlay-arrow-position nil))
(setq overlay-arrow-variable-list
! (delq 'gdb-overlay-arrow-position overlay-arrow-variable-list)))
(defun gdb-source-info ()
"Find the source file where the program starts and displays it with related
--- 2184,2198 ----
(gdb-remove-breakpoint-icons (point-min) (point-max) t)
(setq gud-minor-mode nil)
(kill-local-variable 'tool-bar-map)
! (kill-local-variable 'gdb-define-alist))))))
(when (markerp gdb-overlay-arrow-position)
(move-marker gdb-overlay-arrow-position nil)
(setq gdb-overlay-arrow-position nil))
(setq overlay-arrow-variable-list
! (delq 'gdb-overlay-arrow-position overlay-arrow-variable-list))
! (setq gud-running nil)
! (setq gdb-active-process nil)
! (remove-hook 'after-save-hook 'gdb-create-define-alist t))
(defun gdb-source-info ()
"Find the source file where the program starts and displays it with related
- [Emacs-diffs] Changes to emacs/lisp/progmodes/gdb-ui.el,
Nick Roberts <=
- [Emacs-diffs] Changes to emacs/lisp/progmodes/gdb-ui.el, Nick Roberts, 2005/05/04
- [Emacs-diffs] Changes to emacs/lisp/progmodes/gdb-ui.el, Eli Zaretskii, 2005/05/06
- [Emacs-diffs] Changes to emacs/lisp/progmodes/gdb-ui.el, Nick Roberts, 2005/05/06
- [Emacs-diffs] Changes to emacs/lisp/progmodes/gdb-ui.el, Nick Roberts, 2005/05/09
- [Emacs-diffs] Changes to emacs/lisp/progmodes/gdb-ui.el, Nick Roberts, 2005/05/22
- [Emacs-diffs] Changes to emacs/lisp/progmodes/gdb-ui.el, Nick Roberts, 2005/05/23
- [Emacs-diffs] Changes to emacs/lisp/progmodes/gdb-ui.el, Nick Roberts, 2005/05/26
- [Emacs-diffs] Changes to emacs/lisp/progmodes/gdb-ui.el, Nick Roberts, 2005/05/26
- [Emacs-diffs] Changes to emacs/lisp/progmodes/gdb-ui.el, Nick Roberts, 2005/05/27
- [Emacs-diffs] Changes to emacs/lisp/progmodes/gdb-ui.el, Nick Roberts, 2005/05/28