anchor.diff:         (t
   	(setf (object-data dialog %*response-id-key*) (list response-id))
   	0)))
  -     (t
  -      (error "Invalid response id: ~A" response-id))))))
  +     (error-p
  +      (error "Invalid response: ~A" response-id))))))
   
   (defun %dialog-find-response-id (dialog response-id-num)
     (if (< response-id-num 0)
  
positive.code:     (when default-p
        (%dialog-set-default-response dialog response-id-num))
      widget))
    
  
  (defun dialog-add-child (dialog child &rest args)
    (apply #'container-add (slot-value dialog 'vbox) child args))
  
  (defmethod container-children ((dialog dialog))
    (container-children (dialog-vbox dialog)))
  
  (defmethod (setf container-children) (children (dialog dialog))
    (setf (container-children (dialog-vbox dialog)) children))
  
  
  
  ;;; Drawing area -- no functions
  
  
  
  
  
  
  
  
negative.code: 
  
  
  ;;;; Dialog
  
  (defmethod shared-initialize ((dialog dialog) names &rest initargs)
    (call-next-method)
    (dolist (button-definition (get-all initargs :button))
      (apply #'dialog-add-button dialog button-definition)))
    
  
  (defvar %*response-id-key* (gensym))
  
  (defun %dialog-find-response-id-num (dialog response-id &optional create-p error-p)
    (or
     (cadr (assoc response-id (rest (type-expand-1 'response-type))))
     (let* ((response-ids (object-data dialog %*response-id-key*))
  