emacs-diffs
[Top][All Lists]
Advanced

[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: Fri, 26 Nov 2004 10:47:49 -0500

Index: emacs/lisp/progmodes/gdb-ui.el
diff -c emacs/lisp/progmodes/gdb-ui.el:1.35 emacs/lisp/progmodes/gdb-ui.el:1.36
*** emacs/lisp/progmodes/gdb-ui.el:1.35 Thu Nov 25 23:51:18 2004
--- emacs/lisp/progmodes/gdb-ui.el      Fri Nov 26 15:41:22 2004
***************
*** 62,69 ****
  (defvar gdb-current-frame nil)
  (defvar gdb-current-stack-level nil)
  (defvar gdb-current-language nil)
- (defvar gdb-view-source t "Non-nil means that source code can be viewed.")
- (defvar gdb-selected-view 'source "Code type that user wishes to view.")
  (defvar gdb-var-list nil "List of variables in watch window.")
  (defvar gdb-var-changed nil "Non-nil means that gdb-var-list has changed.")
  (defvar gdb-buffer-type nil)
--- 62,67 ----
***************
*** 224,231 ****
    (setq gdb-previous-frame nil)
    (setq gdb-current-frame nil)
    (setq gdb-current-stack-level nil)
-   (setq gdb-view-source t)
-   (setq gdb-selected-view 'source)
    (setq gdb-var-list nil)
    (setq gdb-var-changed nil)
    (setq gdb-first-prompt nil)
--- 222,227 ----
***************
*** 249,256 ****
    (gdb-enqueue-input (list "server list MAIN__\n" 'ignore))   ; Fortran 
program
    (gdb-enqueue-input (list "server info source\n" 'gdb-source-info))
    ;;
-   (set-window-dedicated-p (get-buffer-window gud-comint-buffer) t)
-   ;;
    (run-hooks 'gdba-mode-hook))
  
  (defcustom gdb-use-colon-colon-notation nil
--- 245,250 ----
***************
*** 277,283 ****
            (concat "server interpreter mi \"-var-create - * "  expr "\"\n")
          (concat"-var-create - * "  expr "\n"))
             `(lambda () (gdb-var-create-handler ,expr))))))
!   (select-window (get-buffer-window gud-comint-buffer 'visible)))
  
  (defun gdb-goto-info ()
    "Go to Emacs info node: GDB Graphical Interface."
--- 271,277 ----
            (concat "server interpreter mi \"-var-create - * "  expr "\"\n")
          (concat"-var-create - * "  expr "\n"))
             `(lambda () (gdb-var-create-handler ,expr))))))
!   (select-window (get-buffer-window gud-comint-buffer 0)))
  
  (defun gdb-goto-info ()
    "Go to Emacs info node: GDB Graphical Interface."
***************
*** 730,736 ****
         (match-string 1 args)
         (string-to-int (match-string 2 args))))
    (setq gdb-current-address (match-string 3 args))
-   (setq gdb-view-source t)
    ;; cover for auto-display output which comes *before*
    ;; stopped annotation
    (if (eq gdb-output-sink 'inferior) (setq gdb-output-sink 'user)))
--- 724,729 ----
***************
*** 1279,1285 ****
            (let* ((buf (find-file-noselect (if (file-exists-p file)
                                                file
                                              (expand-file-name file 
gdb-cdir))))
!                  (window (gdb-display-buffer buf)))
              (with-current-buffer buf
                (goto-line (string-to-number line))
                (set-window-point window (point))))))
--- 1272,1278 ----
            (let* ((buf (find-file-noselect (if (file-exists-p file)
                                                file
                                              (expand-file-name file 
gdb-cdir))))
!                  (window (display-buffer buf)))
              (with-current-buffer buf
                (goto-line (string-to-number line))
                (set-window-point window (point))))))
***************
*** 1595,1624 ****
    (let ((answer (get-buffer-window buf 0))
        (must-split nil))
      (if answer
!       (display-buffer answer)         ;Raise the frame if necessary.
        ;; The buffer is not yet displayed.
        (pop-to-buffer gud-comint-buffer)       ;Select the right frame.
!       (let ((window (get-lru-window)))
!         (if window
!             (progn
!               (set-window-buffer window buf)
!               (setq answer window))
          (setq must-split t)))
!     (if must-split
!       (let* ((largest (get-largest-window))
!              (cur-size (window-height largest))
!              (new-size (and size (< size cur-size) (- cur-size size))))
!         (setq answer (split-window largest new-size))
!         (set-window-buffer answer buf)))
!     (set-window-dedicated-p answer t)
        answer)))
  
- (defun gdb-display-source-buffer (buffer)
-   (if (eq gdb-selected-view 'source)
-       (gdb-display-buffer buffer)
-     (gdb-display-buffer (gdb-get-buffer 'gdb-assembler-buffer)))
-     (get-buffer-window buffer 'visible))
- 
  
  ;;; Shared keymap initialization:
  
--- 1588,1611 ----
    (let ((answer (get-buffer-window buf 0))
        (must-split nil))
      (if answer
!       (display-buffer buf)            ;Raise the frame if necessary.
        ;; The buffer is not yet displayed.
        (pop-to-buffer gud-comint-buffer)       ;Select the right frame.
!       (let ((window (get-lru-window)))
!       (if window
!           (progn
!             (set-window-buffer window buf)
!             (setq answer window))
          (setq must-split t)))
!       (if must-split
!         (let* ((largest (get-largest-window))
!                (cur-size (window-height largest))
!                (new-size (and size (< size cur-size) (- cur-size size))))
!           (setq answer (split-window largest new-size))
!           (set-window-buffer answer buf)
!           (set-window-dedicated-p answer t)))
        answer)))
  
  
  ;;; Shared keymap initialization:
  
***************
*** 1644,1662 ****
    (define-key menu [frames] '("Stack" . gdb-display-stack-buffer))
    (define-key menu [breakpoints] '("Breakpoints" . 
gdb-display-breakpoints-buffer)))
  
- (let ((menu (make-sparse-keymap "View")))
-    (define-key gud-menu-map [view]
-      `(menu-item "View" ,menu :visible (eq gud-minor-mode 'gdba)))
- ;  (define-key menu [both] '(menu-item "Both" gdb-view-both
- ;            :help "Display both source and assembler"
- ;            :button (:radio . (eq gdb-selected-view 'both))))
-    (define-key menu [assembler] '(menu-item "Machine" gdb-view-assembler
-              :help "Display assembler only"
-              :button (:radio . (eq gdb-selected-view 'assembler))))
-    (define-key menu [source] '(menu-item "Source" gdb-view-source-function
-              :help "Display source only"
-              :button (:radio . (eq gdb-selected-view 'source)))))
- 
  (let ((menu (make-sparse-keymap "GDB-UI")))
    (define-key gud-menu-map [ui]
      `(menu-item "GDB-UI" ,menu :visible (eq gud-minor-mode 'gdba)))
--- 1631,1636 ----
***************
*** 1682,1708 ****
  
  (defvar gdb-main-file nil "Source file from which program execution begins.")
  
- (defun gdb-view-source-function ()
-   "Select source view."
-   (interactive)
-   (if gdb-view-source
-       (gdb-display-buffer
-        (gud-find-file (if gud-last-last-frame
-                         (car gud-last-last-frame)
-                       gdb-main-file))))
-   (setq gdb-selected-view 'source))
- 
- (defun gdb-view-assembler()
-   "Select disassembly view."
-   (interactive)
-   (gdb-display-buffer (gdb-get-create-buffer 'gdb-assembler-buffer))
-   (gdb-invalidate-assembler)
-   (setq gdb-selected-view 'assembler))
- 
- ;(defun gdb-view-both()
- ;(interactive)
- ;(setq gdb-selected-view 'both))
- 
  (defcustom gdb-show-main nil
    "Nil means don't display source file containing the main routine."
    :type 'boolean
--- 1656,1661 ----
***************
*** 1720,1739 ****
    (delete-other-windows)
    (gdb-display-breakpoints-buffer)
    (delete-other-windows)
!   (gdb-set-window-buffer gud-comint-buffer)
    (split-window nil ( / ( * (window-height) 3) 4))
    (split-window nil ( / (window-height) 3))
    (split-window-horizontally)
    (other-window 1)
    (gdb-set-window-buffer (gdb-locals-buffer-name))
    (other-window 1)
!   (gdb-set-window-buffer
!    (if (and gdb-view-source
!           (eq gdb-selected-view 'source))
         (if gud-last-last-frame
           (gud-find-file (car gud-last-last-frame))
!        (gud-find-file gdb-main-file))
!      (gdb-get-create-buffer 'gdb-assembler-buffer)))
    (when gdb-use-inferior-io-buffer
      (split-window-horizontally)
      (other-window 1)
--- 1673,1690 ----
    (delete-other-windows)
    (gdb-display-breakpoints-buffer)
    (delete-other-windows)
!   ; Don't dedicate.
!   (pop-to-buffer gud-comint-buffer)
    (split-window nil ( / ( * (window-height) 3) 4))
    (split-window nil ( / (window-height) 3))
    (split-window-horizontally)
    (other-window 1)
    (gdb-set-window-buffer (gdb-locals-buffer-name))
    (other-window 1)
!   (switch-to-buffer
         (if gud-last-last-frame
           (gud-find-file (car gud-last-last-frame))
!        (gud-find-file gdb-main-file)))
    (when gdb-use-inferior-io-buffer
      (split-window-horizontally)
      (other-window 1)
***************
*** 1776,1788 ****
        (gdb-setup-windows)
      (split-window)
      (other-window 1)
!     (gdb-set-window-buffer
!      (if (and gdb-view-source
!             (eq gdb-selected-view 'source))
         (if gud-last-last-frame
             (gud-find-file (car gud-last-last-frame))
!          (gud-find-file gdb-main-file))
!        (gdb-get-create-buffer 'gdb-assembler-buffer)))
      (other-window 1)))
  
  (defun gdb-reset ()
--- 1727,1736 ----
        (gdb-setup-windows)
      (split-window)
      (other-window 1)
!     (switch-to-buffer
         (if gud-last-last-frame
             (gud-find-file (car gud-last-last-frame))
!          (gud-find-file gdb-main-file)))
      (other-window 1)))
  
  (defun gdb-reset ()
***************
*** 1796,1802 ****
                (kill-buffer nil)
              (gdb-remove-breakpoint-icons (point-min) (point-max) t)
              (setq gud-minor-mode nil)
-             (set-window-dedicated-p (get-buffer-window buffer) nil)
              (kill-local-variable 'tool-bar-map)
              (setq gud-running nil))))))
    (when (markerp gdb-overlay-arrow-position)
--- 1744,1749 ----
***************
*** 1816,1832 ****
        (setq gdb-cdir (match-string 0))))
    (if (search-forward "Located in " nil t)
        (if (looking-at "\\S-*")
!         (setq gdb-main-file (match-string 0)))
!     (setq gdb-view-source nil))
!   (if gdb-many-windows
        (gdb-setup-windows)
      (gdb-get-create-buffer 'gdb-breakpoints-buffer)
!     (when gdb-show-main
        (let ((pop-up-windows t))
!       (display-buffer
!        (if gdb-view-source
!          (gud-find-file gdb-main-file)
!          (gdb-get-create-buffer 'gdb-assembler-buffer)))))))
  
  ;;from put-image
  (defun gdb-put-string (putstring pos &optional dprop)
--- 1763,1775 ----
        (setq gdb-cdir (match-string 0))))
    (if (search-forward "Located in " nil t)
        (if (looking-at "\\S-*")
!         (setq gdb-main-file (match-string 0))))
!  (if gdb-many-windows
        (gdb-setup-windows)
      (gdb-get-create-buffer 'gdb-breakpoints-buffer)
!     (if gdb-show-main
        (let ((pop-up-windows t))
!       (display-buffer (gud-find-file gdb-main-file))))))
  
  ;;from put-image
  (defun gdb-put-string (putstring pos &optional dprop)
***************
*** 1872,1880 ****
          (when (< left-margin-width 2)
            (save-current-buffer
              (setq left-margin-width 2)
!             (if (get-buffer-window (current-buffer) 'visible)
                  (set-window-margins
!                  (get-buffer-window (current-buffer) 'visible)
                   left-margin-width right-margin-width))))
          (put-image
           (if enabled
--- 1815,1823 ----
          (when (< left-margin-width 2)
            (save-current-buffer
              (setq left-margin-width 2)
!             (if (get-buffer-window (current-buffer) 0)
                  (set-window-margins
!                  (get-buffer-window (current-buffer) 0)
                   left-margin-width right-margin-width))))
          (put-image
           (if enabled
***************
*** 1899,1907 ****
        (when (< left-margin-width 2)
        (save-current-buffer
          (setq left-margin-width 2)
!         (if (get-buffer-window (current-buffer) 'visible)
              (set-window-margins
!              (get-buffer-window (current-buffer) 'visible)
               left-margin-width right-margin-width))))
        (gdb-put-string (if enabled "B" "b") (1+ start)))))
  
--- 1842,1850 ----
        (when (< left-margin-width 2)
        (save-current-buffer
          (setq left-margin-width 2)
!         (if (get-buffer-window (current-buffer) 0)
              (set-window-margins
!              (get-buffer-window (current-buffer) 0)
               left-margin-width right-margin-width))))
        (gdb-put-string (if enabled "B" "b") (1+ start)))))
  
***************
*** 1911,1919 ****
        (remove-images start end))
    (when remove-margin
      (setq left-margin-width 0)
!     (if (get-buffer-window (current-buffer) 'visible)
        (set-window-margins
!        (get-buffer-window (current-buffer) 'visible)
         left-margin-width right-margin-width))))
  
  
--- 1854,1862 ----
        (remove-images start end))
    (when remove-margin
      (setq left-margin-width 0)
!     (if (get-buffer-window (current-buffer) 0)
        (set-window-margins
!        (get-buffer-window (current-buffer) 0)
         left-margin-width right-margin-width))))
  
  
***************
*** 1965,1971 ****
                  (if (re-search-forward address nil t)
                      (gdb-put-breakpoint-icon (eq flag ?y))))))))
      (if (not (equal gdb-current-address "main"))
!       (set-window-point (get-buffer-window buffer 'visible) pos))))
  
  (defvar gdb-assembler-mode-map
    (let ((map (make-sparse-keymap)))
--- 1908,1914 ----
                  (if (re-search-forward address nil t)
                      (gdb-put-breakpoint-icon (eq flag ?y))))))))
      (if (not (equal gdb-current-address "main"))
!       (set-window-point (get-buffer-window buffer 0) pos))))
  
  (defvar gdb-assembler-mode-map
    (let ((map (make-sparse-keymap)))
***************
*** 2077,2090 ****
                (setq gdb-current-address
                      (concat "0x" (match-string 1 address)))
              (setq gdb-current-address (concat "0x" address))))
!         (if (or (if (not (re-search-forward "(\\S-*:[0-9]*);" nil t))
!                     (progn (setq gdb-view-source nil) t))
!                 (eq gdb-selected-view 'assembler))
!             (progn
!               (gdb-display-buffer
!                (gdb-get-create-buffer 'gdb-assembler-buffer))
                ;;update with new frame for machine code if necessary
!               (gdb-invalidate-assembler))))))
      (if (re-search-forward " source language \\(\\S-*\\)\." nil t)
        (setq gdb-current-language (match-string 1))))
  
--- 2020,2028 ----
                (setq gdb-current-address
                      (concat "0x" (match-string 1 address)))
              (setq gdb-current-address (concat "0x" address))))
!         (if (not (re-search-forward "(\\S-*:[0-9]*);" nil t))
                ;;update with new frame for machine code if necessary
!               (gdb-invalidate-assembler)))))
      (if (re-search-forward " source language \\(\\S-*\\)\." nil t)
        (setq gdb-current-language (match-string 1))))
  




reply via email to

[Prev in Thread] Current Thread [Next in Thread]