anchor.diff:    (declare (ignore event))
     (throw 'event-loop (values nil (name object))))
   
  -(defun accept-form (object event)
  +(defun accept-form (object event &rest args)
     "Associate this function with an event (key binding or button) to exit the form event loop.
   
   The first return value is t, emphasizing that the user has accepted the form.
  
positive.code:    #\space     'toggle-checkbox
     #\x         'toggle-checkbox))
  
  ;; TODO: we want edit to return the edited form.
  ;; exit-event-loop just returns the keyword :exit-event-loop
  (defun edit (object)
    (draw object)
    ;; since we have no further args passed to run-event-loop, all handler functions have to accept
    ;; at most two arguments, object and event.
    (run-event-loop object))
  
negative.code:           (draw form))
          (select-next-element form event))))
  
  (defun move-previous-char (field event &rest args)
    "Move the cursor to the previous char in the field."
    (with-accessors ((inptr input-pointer) (dptr display-pointer) (win window)) field
      (when (> inptr 0)
  