Function: ebrowse-electric-choose-tree
ebrowse-electric-choose-tree is an autoloaded, interactive and
byte-compiled function defined in ebrowse.el.gz.
Signature
(ebrowse-electric-choose-tree)
Documentation
Return a buffer containing a tree or nil if no tree found or canceled.
Key Bindings
Source Code
;; Defined in /usr/src/emacs/lisp/progmodes/ebrowse.el.gz
;;;###autoload
(defun ebrowse-electric-choose-tree ()
"Return a buffer containing a tree or nil if no tree found or canceled."
(interactive)
(unless (car (ebrowse-known-class-trees-buffer-list))
(error "No tree buffers"))
(let (select buffer window)
(save-window-excursion
(save-window-excursion (ebrowse-list-tree-buffers))
(setq window (Electric-pop-up-window "*Tree Buffers*")
buffer (window-buffer window))
(shrink-window-if-larger-than-buffer window)
(unwind-protect
(progn
(set-buffer buffer)
(ebrowse-electric-list-mode)
(setq select
(catch 'ebrowse-electric-list-select
(message "<<< Press Space to bury the list >>>")
(let ((first (progn (goto-char (point-min))
(forward-line 2)
(point)))
(last (progn (goto-char (point-max))
(forward-line -1)
(point)))
(goal-column 0))
(goto-char first)
(Electric-command-loop 'ebrowse-electric-list-select
nil
t
'ebrowse-electric-list-looper
(cons first last))))))
(set-buffer buffer)
(bury-buffer buffer)
(message nil)))
(when select
(set-buffer buffer)
(setq select (ebrowse-electric-get-buffer select)))
(kill-buffer buffer)
select))