Function: gnus-group-edit-group-done
gnus-group-edit-group-done is a byte-compiled function defined in
gnus-group.el.gz.
Signature
(gnus-group-edit-group-done PART GROUP FORM)
Documentation
Update variables.
Source Code
;; Defined in /usr/src/emacs/lisp/gnus/gnus-group.el.gz
(defun gnus-group-edit-group-done (part group form)
"Update variables."
(let* ((method (cond ((eq part 'info) (nth 4 form))
((eq part 'method) form)
(t nil)))
(info (cond ((eq part 'info) form)
((eq part 'method) (gnus-get-info group))
(t nil)))
(new-group (if info
(if (or (not method)
(gnus-server-equal
gnus-select-method method))
(gnus-group-real-name (car info))
(gnus-group-prefixed-name
(gnus-group-real-name (car info)) method))
nil)))
(when (and new-group
(not (equal new-group group)))
(when (gnus-group-goto-group group)
(gnus-group-kill-group 1))
(gnus-activate-group new-group))
;; Set the info.
(if (not (and info new-group))
(gnus-group-set-info form (or new-group group) part)
(setq info (copy-tree info))
(setcar info new-group)
(unless (gnus-server-equal method "native")
(gnus-info-set-method info method t))
(gnus-group-set-info info))
(gnus-group-update-group (or new-group group))
(gnus-group-position-point)))