anchor.diff:    (:documentation "Window visibility changed."))
   
   (defclass visibility-obscured-event (visibility-event)
  -  ((visible :initform nil))
  +  ()
  +  (:default-initargs :visible nil)
     (:documentation "Window was fully obscured."))
   
   (defclass visibility-unobscured-event (visibility-event)
  -  ((visible :initform t))
  +  ()
  +  (:default-initargs :visible t)
     (:documentation "Window was unobscured."))
   
   (defun push-event (window evt)
  
positive.code:   (:documentation "Keyboard key press or release."))
  
  (defclass key-press-event (key-event)
    ((pressed :initform t)
     (repeat :initarg :repeat :reader repeat :initform nil))
    (:documentation "Keyboard key press."))
  
  (defclass key-release-event (key-event)
    ((pressed :initform nil))
    (:documentation "Keyboard key release."))
  
  (defclass button-event (event)
  
negative.code:   (:documentation "Mouse button press or release."))
  
  (defclass button-press-event (button-event)
    ()
    (:default-initargs :pressed t)
    (:documentation "Mouse button press."))
  
  (defclass button-release-event (button-event)
    ()
    (:default-initargs :pressed nil)
    (:documentation "Mouse button release."))
  
  (defclass mouse-motion-event (event)
  