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)))