Function: tree-widget-node

tree-widget-node is a byte-compiled function defined in tree-widget.el.gz.

Signature

(tree-widget-node WIDGET)

Documentation

Return WIDGET's :node child widget.

If not found, setup an item widget as default. Signal an error if the :node widget is a tree-widget. WIDGET is, or derives from, a tree-widget.

Source Code

;; Defined in /usr/src/emacs/lisp/tree-widget.el.gz
(defun tree-widget-node (widget)
  "Return WIDGET's :node child widget.
If not found, setup an `item' widget as default.
Signal an error if the :node widget is a tree-widget.
WIDGET is, or derives from, a tree-widget."
  (let ((node (widget-get widget :node)))
    (if node
        ;; Check that the :node widget is not a tree-widget.
        (and (tree-widget-p node)
             (error "Invalid tree-widget :node %S" node))
      ;; Setup an item widget as default :node.
      (setq node `(item :tag ,(or (widget-get widget :tag)
                                  (widget-princ-to-string
                                   (widget-value widget)))))
      (widget-put widget :node node))
    node))