Function: bookmark-menu-popup-paned-menu
bookmark-menu-popup-paned-menu is a byte-compiled function defined in
bookmark.el.gz.
Signature
(bookmark-menu-popup-paned-menu EVENT NAME ENTRIES)
Documentation
Pop up multi-paned menu at EVENT, return string chosen from ENTRIES.
That is, ENTRIES is a list of strings which appear as the choices
in the menu.
The number of panes depends on the number of entries.
The visible entries are truncated to bookmark-menu-length, but the
strings returned are not.
Source Code
;; Defined in /usr/src/emacs/lisp/bookmark.el.gz
;;; Menu bar stuff. Prefix is "bookmark-menu".
(defun bookmark-menu-popup-paned-menu (event name entries)
"Pop up multi-paned menu at EVENT, return string chosen from ENTRIES.
That is, ENTRIES is a list of strings which appear as the choices
in the menu.
The number of panes depends on the number of entries.
The visible entries are truncated to `bookmark-menu-length', but the
strings returned are not."
(let ((f-height (/ (frame-height) 2))
(pane-list nil)
(iter 0))
(while entries
(let (lst
(count 0))
(while (and (< count f-height) entries)
(let ((str (car entries)))
(push (cons
(if (> (length str) bookmark-menu-length)
(substring str 0 bookmark-menu-length)
str)
str)
lst)
(setq entries (cdr entries))
(setq count (1+ count))))
(setq iter (1+ iter))
(push (cons
(format "-*- %s (%d) -*-" name iter)
(nreverse lst))
pane-list)))
;; Popup the menu and return the string.
(x-popup-menu event (cons (concat "-*- " name " -*-")
(nreverse pane-list)))))