Function: vhdl-speedbar-update-current-project

vhdl-speedbar-update-current-project is a byte-compiled function defined in vhdl-mode.el.gz.

Signature

(vhdl-speedbar-update-current-project)

Documentation

Highlight project that is currently active.

Source Code

;; Defined in /usr/src/emacs/lisp/progmodes/vhdl-mode.el.gz
(defun vhdl-speedbar-update-current-project ()
  "Highlight project that is currently active."
  (when (and vhdl-speedbar-show-projects
	     (not (equal vhdl-speedbar-last-selected-project vhdl-project))
	     (and (boundp 'speedbar-frame)
		  (frame-live-p speedbar-frame)))
    (let ((last-frame (selected-frame))
	  (project-alist vhdl-project-alist)
	  pos)
      (select-frame speedbar-frame)
      (speedbar-with-writable
       (save-excursion
	 (while project-alist
	   (goto-char (point-min))
	   (when (re-search-forward
		  (concat "<.> \\(" (caar project-alist) "\\)$") nil t)
	     (put-text-property (match-beginning 1) (match-end 1) 'face
				(if (equal (caar project-alist) vhdl-project)
				    'speedbar-selected-face
				  'speedbar-directory-face))
	     (when (equal (caar project-alist) vhdl-project)
	       (setq pos (1- (match-beginning 1)))))
	   (setq project-alist (cdr project-alist))))
       (when pos (goto-char pos)))
      (select-frame last-frame)
      (setq vhdl-speedbar-last-selected-project vhdl-project)))
  t)