Function: semantic-decorate-add-decorations
semantic-decorate-add-decorations is a byte-compiled function defined
in mode.el.gz.
Signature
(semantic-decorate-add-decorations TAG-LIST)
Documentation
Add decorations to tags in TAG-LIST.
Also make sure old decorations in the area are completely flushed.
Source Code
;; Defined in /usr/src/emacs/lisp/cedet/semantic/decorate/mode.el.gz
(defun semantic-decorate-add-decorations (tag-list)
"Add decorations to tags in TAG-LIST.
Also make sure old decorations in the area are completely flushed."
(dolist (tag tag-list)
;; Cleanup old decorations.
(when (semantic-decorate-tag-decoration tag)
;; Note on below comment. This happens more as decorations are refreshed
;; mid-way through their use. Remove the message.
;; It would be nice if this never happened, but it still does
;; once in a while. Print a message to help flush these
;; situations
;;(message "Decorations still on %s" (semantic-format-tag-name tag))
(semantic-decorate-clear-tag tag))
;; Add new decorations.
(dolist (style semantic-decoration-styles)
(let ((pred (semantic-decorate-style-predicate (car style)))
(high (semantic-decorate-style-highlighter (car style))))
(and (cdr style)
(fboundp pred)
(funcall pred tag)
(fboundp high)
(funcall high tag))))
;; Recurse on the children of all tags
(semantic-decorate-add-decorations
(semantic-tag-components-with-overlays tag))))