Function: org-agenda--mark-blocked-entry
org-agenda--mark-blocked-entry is a byte-compiled function defined in
org-agenda.el.gz.
Signature
(org-agenda--mark-blocked-entry ENTRY)
Documentation
If ENTRY is blocked, mark it for fontification or invisibility.
If the header at org-hd-marker is blocked according to
org-entry-blocked-p, then if org-agenda-dim-blocked-tasks(var)/org-agenda-dim-blocked-tasks(fun) is
invisible and the header is not blocked by checkboxes, set the
text property org-todo-blocked to invisible, otherwise set it
to t.
Source Code
;; Defined in /usr/src/emacs/lisp/org/org-agenda.el.gz
(defun org-agenda--mark-blocked-entry (entry)
"If ENTRY is blocked, mark it for fontification or invisibility.
If the header at `org-hd-marker' is blocked according to
`org-entry-blocked-p', then if `org-agenda-dim-blocked-tasks' is
`invisible' and the header is not blocked by checkboxes, set the
text property `org-todo-blocked' to `invisible', otherwise set it
to t."
(when (get-text-property 0 'todo-state entry)
(let ((entry-marker (get-text-property 0 'org-hd-marker entry))
(org-blocked-by-checkboxes nil)
;; Necessary so that `org-entry-blocked-p' does not change
;; the buffer.
(org-depend-tag-blocked nil))
(when entry-marker
(let ((blocked
(with-current-buffer (marker-buffer entry-marker)
(save-excursion
(goto-char entry-marker)
(org-entry-blocked-p)))))
(when blocked
(let ((really-invisible
(and (not org-blocked-by-checkboxes)
(eq org-agenda-dim-blocked-tasks 'invisible))))
(put-text-property
0 (length entry) 'org-todo-blocked
(if really-invisible 'invisible t)
entry)
(put-text-property
0 (length entry) 'org-filter-type 'todo-blocked entry)))))))
entry)