Function: gnus-info-clear-data
gnus-info-clear-data is a byte-compiled function defined in
gnus-group.el.gz.
Signature
(gnus-info-clear-data INFO)
Documentation
Clear all marks and read ranges from INFO.
Source Code
;; Defined in /usr/src/emacs/lisp/gnus/gnus-group.el.gz
(defun gnus-info-clear-data (info)
"Clear all marks and read ranges from INFO."
(let ((group (gnus-info-group info))
action)
(dolist (el (gnus-info-marks info))
(push `(,(cdr el) add (,(car el))) action))
(push `(,(gnus-info-read info) add (read)) action)
(gnus-undo-register
`(progn
(gnus-request-set-mark ,group ',action)
(gnus-info-set-marks ',info ',(gnus-info-marks info) t)
(setf (gnus-info-read ',info) ',(gnus-info-read info))
(when (gnus-group-jump-to-group ,group)
(gnus-get-unread-articles-in-group ',info ',(gnus-active group) t)
(gnus-group-update-group-line))))
(setq action (mapcar (lambda (el) (list (nth 0 el) 'del (nth 2 el)))
action))
(gnus-request-set-mark group action)
(setf (gnus-info-read info) nil)
(when (gnus-info-marks info)
(setf (gnus-info-marks info) nil))))