comparison lisp/emacs-lisp/easymenu.el @ 29054:25099b559af9

(easy-menu-create-menu, easy-menu-do-add-item): Use keywordp.
author Dave Love <fx@gnu.org>
date Sun, 21 May 2000 17:26:47 +0000
parents 7fcfdde7365a
children 6413c7b9a6c3
comparison
equal deleted inserted replaced
29053:565418f2e425 29054:25099b559af9
172 MENU-NAME is a string, the name of the menu. MENU-ITEMS is a list of items 172 MENU-NAME is a string, the name of the menu. MENU-ITEMS is a list of items
173 possibly preceded by keyword pairs as described in `easy-menu-define'." 173 possibly preceded by keyword pairs as described in `easy-menu-define'."
174 (let ((menu (make-sparse-keymap menu-name)) 174 (let ((menu (make-sparse-keymap menu-name))
175 prop keyword arg label enable filter visible help) 175 prop keyword arg label enable filter visible help)
176 ;; Look for keywords. 176 ;; Look for keywords.
177 (while (and menu-items (cdr menu-items) 177 (while (and menu-items
178 (symbolp (setq keyword (car menu-items))) 178 (cdr menu-items)
179 (= ?: (aref (symbol-name keyword) 0))) 179 (keywordp (setq keyword (car menu-items))))
180 (setq arg (cadr menu-items)) 180 (setq arg (cadr menu-items))
181 (setq menu-items (cddr menu-items)) 181 (setq menu-items (cddr menu-items))
182 (cond 182 (cond
183 ((eq keyword :filter) (setq filter arg)) 183 ((eq keyword :filter) (setq filter arg))
184 ((eq keyword :active) (setq enable (or arg ''nil))) 184 ((eq keyword :active) (setq enable (or arg ''nil)))
238 (active (if (> ilen 2) (or (aref item 2) ''nil) t)) 238 (active (if (> ilen 2) (or (aref item 2) ''nil) t))
239 (no-name (not (symbolp (setq command (aref item 1))))) 239 (no-name (not (symbolp (setq command (aref item 1)))))
240 cache cache-specified) 240 cache cache-specified)
241 (setq label (setq name (aref item 0))) 241 (setq label (setq name (aref item 0)))
242 (if no-name (setq command (easy-menu-make-symbol command))) 242 (if no-name (setq command (easy-menu-make-symbol command)))
243 (if (and (symbolp active) (= ?: (aref (symbol-name active) 0))) 243 (if (keywordp active)
244 (let ((count 2) 244 (let ((count 2)
245 keyword arg suffix visible style selected keys) 245 keyword arg suffix visible style selected keys)
246 (setq active nil) 246 (setq active nil)
247 (while (> ilen count) 247 (while (> ilen count)
248 (setq keyword (aref item count)) 248 (setq keyword (aref item count))