anchor.diff:     (b-val :initform 2.0)
      (h-val :initform 22.0)
      (dt :initform 0.5)
  +   (dt-type :initform :normal)
      (x-function :initform #'epitrochoid-x)
      (y-function :initform #'epitrochoid-y))
     (:documentation "The spirograh-drawer widget draws an epitrochoid or hyptrochoid curve using the currently specified parameters."))
  
positive.code:   ;; Repaint to reflect the changes
    (q+:repaint sviewer))
  
  ;; It would be nice to handle all spin box changes in one slot, but I don't know 
  ;; how to ignore the value type.
  (define-slot (spirograph-controls steps-changed) ((value int))
  
negative.code:   (q+:set-exclusive button-group t)
    (q+:add-button button-group epitrochoid-button)
    (q+:add-button button-group hypotrochoid-button))
  
  (define-slot (spirograph-controls type-changed) ()
    "Handle radio button changes that hcange the curve type."
  