[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/lisp/tree-widget.el
From: |
David Ponce |
Subject: |
[Emacs-diffs] Changes to emacs/lisp/tree-widget.el |
Date: |
Mon, 19 Sep 2005 05:51:31 -0400 |
Index: emacs/lisp/tree-widget.el
diff -c emacs/lisp/tree-widget.el:1.9 emacs/lisp/tree-widget.el:1.10
*** emacs/lisp/tree-widget.el:1.9 Mon Aug 15 13:00:09 2005
--- emacs/lisp/tree-widget.el Mon Sep 19 09:51:31 2005
***************
*** 647,660 ****
(when (and (not args) xpandr)
(setq args (mapcar 'widget-convert (funcall xpandr tree)))
(widget-put tree :args args))
;; Create the icon widget for the expanded tree.
(push (widget-create-child-and-convert
! tree (widget-get tree (if args :open-icon :empty-icon))
! ;; At this point the node widget isn't yet created.
! :node (setq node (widget-convert node)))
buttons)
;; Create the tree node widget.
! (push (widget-create-child tree node) children)
;; Update the icon :node with the created node widget.
(widget-put (car buttons) :node (car children))
;; Create the tree children.
--- 647,661 ----
(when (and (not args) xpandr)
(setq args (mapcar 'widget-convert (funcall xpandr tree)))
(widget-put tree :args args))
+ ;; Defer the node widget creation after icon creation.
+ (widget-put tree :node (widget-convert node))
;; Create the icon widget for the expanded tree.
(push (widget-create-child-and-convert
! tree (widget-get tree (if args :open-icon :empty-icon)))
buttons)
;; Create the tree node widget.
! (push (widget-create-child tree (widget-get tree :node))
! children)
;; Update the icon :node with the created node widget.
(widget-put (car buttons) :node (car children))
;; Create the tree children.
***************
*** 696,709 ****
;; Update the icon :node with the created node widget.
(widget-put (car buttons) :node (car children)))))
;;;; Collapsed node.
;; Create the icon widget for the collapsed tree.
(push (widget-create-child-and-convert
! tree (widget-get tree :close-icon)
! ;; At this point the node widget isn't yet created.
! :node (setq node (widget-convert node)))
buttons)
;; Create the tree node widget.
! (push (widget-create-child tree node) children)
;; Update the icon :node with the created node widget.
(widget-put (car buttons) :node (car children)))
;; Save widget children and buttons. The tree-widget :node child
--- 697,711 ----
;; Update the icon :node with the created node widget.
(widget-put (car buttons) :node (car children)))))
;;;; Collapsed node.
+ ;; Defer the node widget creation after icon creation.
+ (widget-put tree :node (widget-convert node))
;; Create the icon widget for the collapsed tree.
(push (widget-create-child-and-convert
! tree (widget-get tree :close-icon))
buttons)
;; Create the tree node widget.
! (push (widget-create-child tree (widget-get tree :node))
! children)
;; Update the icon :node with the created node widget.
(widget-put (car buttons) :node (car children)))
;; Save widget children and buttons. The tree-widget :node child
- [Emacs-diffs] Changes to emacs/lisp/tree-widget.el,
David Ponce <=