changeset 36861:79c77eec747f

(add-menu): Re-added (was erroneously removed).
author Stefan Monnier <monnier@iro.umontreal.ca>
date Sun, 18 Mar 2001 21:57:41 +0000
parents 7bcec61bdbde
children e7247c404477
files lisp/emacs-lisp/lmenu.el
diffstat 1 files changed, 21 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/lisp/emacs-lisp/lmenu.el	Sun Mar 18 16:56:08 2001 +0000
+++ b/lisp/emacs-lisp/lmenu.el	Sun Mar 18 21:57:41 2001 +0000
@@ -395,6 +395,27 @@
     (set-menubar-dirty-flag)
     item))
 
+;; XEmacs compatibility
+(defun add-menu (menu-path menu-name menu-items &optional before)
+  "Add a menu to the menubar or one of its submenus.
+If the named menu exists already, it is changed.
+MENU-PATH identifies the menu under which the new menu should be inserted.
+ It is a list of strings; for example, (\"File\") names the top-level \"File\"
+ menu.  (\"File\" \"Foo\") names a hypothetical submenu of \"File\".
+ If MENU-PATH is nil, then the menu will be added to the menubar itself.
+MENU-NAME is the string naming the menu to be added.
+MENU-ITEMS is a list of menu item descriptions.
+ Each menu item should be a vector of three elements:
+   - a string, the name of the menu item;
+   - a symbol naming a command, or a form to evaluate;
+   - and a form whose value determines whether this item is selectable.
+BEFORE, if provided, is the name of a menu before which this menu should
+ be added, if this menu is not on its parent already.  If the menu is already
+ present, it will not be moved."
+  (or menu-name (error "must specify a menu name"))
+  (or menu-items (error "must specify some menu items"))
+  (add-menu-item-1 nil menu-path menu-name menu-items t before))
+
 
 
 (defvar put-buffer-names-in-file-menu t)