mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2025-02-05 20:43:08 +00:00
(easy-menu-do-add-item):
Do the right thing when nil is specified as criterion for activeness. Fix string used to report an invalid item.
This commit is contained in:
parent
ae3f2f3c6b
commit
d016f81992
@ -187,18 +187,19 @@ shadow\\(Double\\)?Etched\\(In\\|Out\\)\\(Dash\\)?\\)\\)$"
|
||||
(setq name (setq item-string (aref item 0)))
|
||||
(setq command (easy-menu-make-symbol (aref item 1) t))
|
||||
(let ((active (if (> (length item) 2) (aref item 2) t))
|
||||
(active-specified (> (length item) 2))
|
||||
(count 2)
|
||||
style selected)
|
||||
(if (and (symbolp active) (= ?: (aref (symbol-name active) 0)))
|
||||
(let ((count 2) keyword arg suffix keys)
|
||||
(setq active nil)
|
||||
(setq active-specified nil)
|
||||
(while (> (length item) count)
|
||||
(setq keyword (aref item count))
|
||||
(setq arg (aref item (1+ count)))
|
||||
(setq count (+ 2 count))
|
||||
(cond
|
||||
((eq keyword ':keys) (setq keys arg))
|
||||
((eq keyword ':active) (setq active arg))
|
||||
((eq keyword ':active) (setq active arg active-specified t))
|
||||
((eq keyword ':suffix) (setq suffix (concat " " arg)))
|
||||
((eq keyword ':style) (setq style arg))
|
||||
((eq keyword ':selected) (setq selected arg))))
|
||||
@ -214,13 +215,15 @@ shadow\\(Double\\)?Etched\\(In\\|Out\\)\\(Dash\\)?\\)\\)$"
|
||||
,selected
|
||||
,(or active t)))
|
||||
(setq is-button t)
|
||||
(setq active nil) ; Already taken care of active.
|
||||
(setq active-specified nil) ; Already taken care of active.
|
||||
(when (not (or have-buttons top))
|
||||
(setq have-buttons " ")
|
||||
;; Add prefix to menu items defined so far.
|
||||
(easy-menu-change-prefix menu t)))))
|
||||
(if active (put command 'menu-enable active))))
|
||||
(t "Illegal menu item in easy menu."))
|
||||
(easy-menu-change-prefix menu t))))
|
||||
(and (null active) active-specified
|
||||
(setq active ''nil)))
|
||||
(if active-specified (put command 'menu-enable active))))
|
||||
(t "Invalid menu item in easymenu"))
|
||||
(when name
|
||||
(and (not is-button) have-buttons
|
||||
(setq item-string (concat have-buttons item-string)))
|
||||
|
Loading…
x
Reference in New Issue
Block a user