anchor.diff:  account, and create a list of menu buttons."
     (let ((menu-buttons '()))
       (map-over-command-table-menu-items
  -     #'(lambda (name gesture item)
  -         (declare (ignore name gesture))
  -         (push (make-menu-button-from-menu-item
  -                item client :command-table command-table-name :vertical t)
  -               menu-buttons))
  +     (lambda (name gesture item)
  +       (declare (ignore name gesture))
  +       (push (make-menu-button-from-menu-item
  +              item client :command-table command-table-name :vertical t)
  +             menu-buttons))
        command-table-name)
       (nreverse menu-buttons)))
   
   (defun create-substructure (sub-menu client)
  -  (let* ((frame *application-frame*)
  -	 (manager (frame-manager frame))
  -	 (command-table-name (slot-value sub-menu 'command-table))
  -	 (items (make-menu-buttons command-table-name client))
  -	 (rack (make-pane-1 manager frame 'vrack-pane
  -			    :background *3d-normal-color* :contents items))
  -	 (raised (make-pane-1 manager frame 'submenu-border :contents (list rack))))
  +  (let* ((frame (pane-frame client))
  +         (manager (frame-manager frame))
  +         (command-table-name (slot-value sub-menu 'command-table))
  +         (items (make-menu-buttons command-table-name client))
  +         (rack (make-pane-1 manager frame 'vrack-pane
  +                            :background *3d-normal-color* :contents items))
  +         (raised (make-pane-1 manager frame 'submenu-border :contents (list rack))))
       (with-slots (bottomp) sub-menu
         (multiple-value-bind (xmin ymin xmax ymax)
   	  (bounding-rectangle* (sheet-region sub-menu))
  
positive.code: (defmethod disarm-menu ((object menu-bar))
    (setf (slot-value object 'armed) nil))
  
  (defun %make-menu-contents (command-table)
    (with-slots (menu) (find-command-table command-table)
      (append
       (loop for item in menu
  	collect
  	  (make-menu-button-from-menu-item
  	   item nil
  	   :bottomp t
  	   :vertical nil
  	   :command-table command-table))
       (list +fill+))))
  
  (defun make-menu-bar (command-table
  		      &key width height
  		           (max-width +fill+) max-height
  			   min-width min-height)
    (with-slots (menu) (find-command-table command-table)
      (make-pane-1 *pane-realizer* *application-frame*
  		 'menu-bar
  		 :background *3d-normal-color*
  		 :width width :height height
  		 :max-width max-width :max-height max-height
  		 :min-width min-width :min-height min-height
  		 :contents (%make-menu-contents command-table))))
  
  (defun update-menu-bar (menu-bar-pane command-table)
    (when command-table
      (setf (%pane-contents menu-bar-pane)
  	  (%make-menu-contents command-table)))
    (change-space-requirements menu-bar-pane))
  
  (defmethod handle-repaint ((pane menu-bar) region)
  
negative.code: ;;; Menu creation from command tables
  
  (defun make-menu-button-from-menu-item (item client
                                          &key (bottomp nil)
                                          (vertical nil)
                                          command-table
                                          (presentation-type 'menu-item))
    (declare (ignore command-table))
    (let* ((name (command-menu-item-name item))
           (type (command-menu-item-type item))
           (value (command-menu-item-value item))
           (frame (pane-frame client))
           (manager (frame-manager frame)))
      (case type
        (:command
         (let ((command-name (if (consp value) (car value) value)))
  