Function: vhdl-speedbar-make-inst-line
vhdl-speedbar-make-inst-line is a byte-compiled function defined in
vhdl-mode.el.gz.
Signature
(vhdl-speedbar-make-inst-line INST-NAME INST-FILE-MARKER ENT-NAME ENT-FILE-MARKER ARCH-NAME ARCH-FILE-MARKER CONF-NAME CONF-FILE-MARKER LIB-NAME DEPTH OFFSET DELIMITER)
Documentation
Insert instantiation entry.
Source Code
;; Defined in /usr/src/emacs/lisp/progmodes/vhdl-mode.el.gz
(defun vhdl-speedbar-make-inst-line (inst-name inst-file-marker
ent-name ent-file-marker
arch-name arch-file-marker
conf-name conf-file-marker
lib-name depth offset delimiter)
"Insert instantiation entry."
(let ((start (point))
visible-start)
(insert (int-to-string depth) ":")
(put-text-property start (point) 'invisible t)
(setq visible-start (point))
(insert-char ? (* depth speedbar-indentation-width))
(while (> offset 0)
(insert "|")
(insert-char (if (= offset 1) ?- ? ) (1- speedbar-indentation-width))
(setq offset (1- offset)))
(put-text-property visible-start (point) 'invisible nil)
(setq start (point))
(insert ">")
(speedbar-make-button start (point) nil nil nil)
(setq visible-start (point))
(insert " ")
(setq start (point))
(if (not inst-name)
(insert "(top)")
(insert inst-name)
(speedbar-make-button
start (point) 'vhdl-speedbar-instantiation-face 'speedbar-highlight-face
'vhdl-speedbar-find-file inst-file-marker))
(insert delimiter)
(when ent-name
(setq start (point))
(insert ent-name)
(speedbar-make-button
start (point) 'vhdl-speedbar-entity-face 'speedbar-highlight-face
'vhdl-speedbar-find-file ent-file-marker)
(when arch-name
(insert " (")
(setq start (point))
(insert arch-name)
(speedbar-make-button
start (point) 'vhdl-speedbar-architecture-face 'speedbar-highlight-face
'vhdl-speedbar-find-file arch-file-marker)
(insert ")"))
(when conf-name
(insert " (")
(setq start (point))
(insert conf-name)
(speedbar-make-button
start (point) 'vhdl-speedbar-configuration-face 'speedbar-highlight-face
'vhdl-speedbar-find-file conf-file-marker)
(insert ")")))
(when (and lib-name (not (equal lib-name (downcase (vhdl-work-library)))))
(setq start (point))
(insert " (" lib-name ")")
(put-text-property (+ 2 start) (1- (point)) 'face
'vhdl-speedbar-library-face))
(insert-char ?\n 1)
(put-text-property visible-start (point) 'invisible nil)))