Function: org-list-set-item-visibility
org-list-set-item-visibility is a byte-compiled function defined in
org-list.el.gz.
Signature
(org-list-set-item-visibility ITEM STRUCT VIEW)
Documentation
Set visibility of ITEM in STRUCT to VIEW.
Possible values are: folded, children or subtree. See
org-cycle for more information.
Source Code
;; Defined in /usr/src/emacs/lisp/org/org-list.el.gz
(defun org-list-set-item-visibility (item struct view)
"Set visibility of ITEM in STRUCT to VIEW.
Possible values are: `folded', `children' or `subtree'. See
`org-cycle' for more information."
(cond
((eq view 'folded)
(let ((item-end (org-list-get-item-end-before-blank item struct)))
;; Hide from eol
(org-fold-region (save-excursion (goto-char item) (line-end-position))
item-end t 'outline)))
((eq view 'children)
;; First show everything.
(org-list-set-item-visibility item struct 'subtree)
;; Then fold every child.
(let* ((parents (org-list-parents-alist struct))
(children (org-list-get-children item struct parents)))
(dolist (child children)
(org-list-set-item-visibility child struct 'folded))))
((eq view 'subtree)
;; Show everything
(let ((item-end (org-list-get-item-end item struct)))
(org-fold-region item item-end nil 'outline)))))