mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2025-01-20 18:17:20 +00:00
(gud-speedbar-buttons): Update properly for
shadow face. Don't provide binding to edit variable when it is out of scope.
This commit is contained in:
parent
e06b715f25
commit
02a471b435
@ -453,46 +453,55 @@ required by the caller."
|
||||
(insert "Watch Expressions:\n")
|
||||
(if gdb-speedbar-auto-raise
|
||||
(raise-frame speedbar-frame))
|
||||
(let ((var-list gdb-var-list))
|
||||
(let ((var-list gdb-var-list) parent)
|
||||
(while var-list
|
||||
(let* (char (depth 0) (start 0)
|
||||
(var (car var-list)) (varnum (nth 1 var)))
|
||||
(let* (char (depth 0) (start 0) (var (car var-list))
|
||||
(varnum (nth 1 var)) (status (nth 5 var)))
|
||||
(while (string-match "\\." varnum start)
|
||||
(setq depth (1+ depth)
|
||||
start (1+ (match-beginning 0))))
|
||||
(if (eq depth 0) (setq parent nil))
|
||||
(if (or (equal (nth 2 var) "0")
|
||||
(and (equal (nth 2 var) "1")
|
||||
(string-match "char \\*$" (nth 3 var))))
|
||||
(speedbar-make-tag-line 'bracket ?? nil nil
|
||||
(concat (car var) "\t" (nth 4 var))
|
||||
'gdb-edit-value
|
||||
nil
|
||||
(if gdb-show-changed-values
|
||||
(case (nth 5 var)
|
||||
(changed 'font-lock-warning-face)
|
||||
(out-of-scope 'shadow)
|
||||
(nil nil))
|
||||
nil) depth)
|
||||
(speedbar-make-tag-line
|
||||
'bracket ?? nil nil
|
||||
(concat (car var) "\t" (nth 4 var))
|
||||
(if (or parent (eq status 'out-of-scope))
|
||||
nil 'gdb-edit-value)
|
||||
nil
|
||||
(if gdb-show-changed-values
|
||||
(or parent (case status
|
||||
(changed 'font-lock-warning-face)
|
||||
(out-of-scope 'shadow)
|
||||
(nil nil)))
|
||||
nil) depth)
|
||||
(if (eq status 'out-of-scope) (setq parent 'shadow))
|
||||
(if (and (cadr var-list)
|
||||
(string-match (concat varnum "\\.")
|
||||
(cadr (cadr var-list))))
|
||||
(setq char ?-)
|
||||
(setq char ?+))
|
||||
(if (string-match "\\*$" (nth 3 var))
|
||||
(speedbar-make-tag-line 'bracket char
|
||||
'gdb-speedbar-expand-node varnum
|
||||
(concat (car var) "\t"
|
||||
(nth 3 var)"\t"
|
||||
(nth 4 var))
|
||||
'gdb-edit-value nil
|
||||
(if (and (nth 5 var)
|
||||
gdb-show-changed-values)
|
||||
'font-lock-warning-face
|
||||
nil) depth)
|
||||
(speedbar-make-tag-line 'bracket char
|
||||
'gdb-speedbar-expand-node varnum
|
||||
(concat (car var) "\t" (nth 3 var))
|
||||
nil nil nil depth))))
|
||||
(speedbar-make-tag-line
|
||||
'bracket char
|
||||
'gdb-speedbar-expand-node varnum
|
||||
(concat (car var) "\t"
|
||||
(nth 3 var)"\t"
|
||||
(nth 4 var))
|
||||
(if (or parent status 'out-of-scope)
|
||||
nil 'gdb-edit-value)
|
||||
nil
|
||||
(if (and status gdb-show-changed-values)
|
||||
'shadow nil)
|
||||
depth)
|
||||
(speedbar-make-tag-line
|
||||
'bracket char
|
||||
'gdb-speedbar-expand-node varnum
|
||||
(concat (car var) "\t" (nth 3 var))
|
||||
nil nil
|
||||
(if (and (nth 5 var) gdb-show-changed-values) 'shadow nil)
|
||||
depth))))
|
||||
(setq var-list (cdr var-list))))
|
||||
(setq gdb-var-changed nil)))
|
||||
(t (unless (and (save-excursion
|
||||
|
Loading…
Reference in New Issue
Block a user