Function: gnus-topic-insert-topic-line

gnus-topic-insert-topic-line is a byte-compiled function defined in gnus-topic.el.gz.

Signature

(gnus-topic-insert-topic-line NAME VISIBLEP SHOWNP LEVEL ENTRIES &optional UNREAD ALL-GROUPS)

Source Code

;; Defined in /usr/src/emacs/lisp/gnus/gnus-topic.el.gz
(defun gnus-topic-insert-topic-line (name visiblep shownp level entries
					  &optional unread all-groups)
  (gnus--\,@
   (let ((vars '(indentation visible name level number-of-groups
                 total-number-of-groups total-number-of-articles entries)))
     `((with-suppressed-warnings ((lexical ,@vars))
         ,@(mapcar (lambda (s) `(defvar ,s)) vars)))))
  (let* ((visible (if visiblep "" "..."))
	 (level level)
	 (name name)
	 (entries entries)
	 (indentation (make-string (* gnus-topic-indent-level level) ? ))
	 (total-number-of-articles unread)
	 (number-of-groups (length entries))
	 (total-number-of-groups (length all-groups))
	 (active-topic (eq gnus-topic-alist gnus-topic-active-alist))
	 gnus-tmp-header)
    (gnus-topic-update-unreads name unread)
    (beginning-of-line)
    ;; Insert the text.
    (if shownp
	(add-text-properties
	 (point)
	 (prog1 (1+ (point))
	   (eval gnus-topic-line-format-spec t))
	 (list 'gnus-topic name
	       'gnus-topic-level level
	       'gnus-topic-unread unread
	       'gnus-active active-topic
	       'gnus-topic-visible visiblep)))))