New function org-reset-checkbox-state which always clears the checkboxes

Copying subtrees with checked off lists to create a new task would
normally require the boxes to be unchecked.  This function lets
you easily clear all checkboxes in an entry without requiring
the RESET_CHECK_BOXES property.
This commit is contained in:
Bernt Hansen 2009-04-24 08:49:52 -04:00
parent d072797344
commit 710eec9d57
1 changed files with 16 additions and 11 deletions

View File

@ -52,17 +52,22 @@
"Reset all checkboxes in an entry if the `RESET_CHECK_BOXES' property is set"
(interactive "*")
(if (org-entry-get (point) "RESET_CHECK_BOXES")
(save-restriction
(save-excursion
(org-narrow-to-subtree)
(org-show-subtree)
(goto-char (point-min))
(let ((end (point-max)))
(while (< (point) end)
(when (org-at-item-checkbox-p)
(replace-match "[ ]" t t))
(beginning-of-line 2))))
(org-update-checkbox-count-maybe))))
(org-reset-checkbox-state)))
(defun org-reset-checkbox-state ()
"Reset all checkboxes in an entry"
(interactive "*")
(save-restriction
(save-excursion
(org-narrow-to-subtree)
(org-show-subtree)
(goto-char (point-min))
(let ((end (point-max)))
(while (< (point) end)
(when (org-at-item-checkbox-p)
(replace-match "[ ]" t t))
(beginning-of-line 2))))
(org-update-checkbox-count-maybe)))
(defun org-make-checklist-export ()
"Produce a checklist containing all unchecked items from a list