anchor.diff:     (drag-delta
        :initform 0)
      (bounce-value
  -     :initform 0))
  +     :initform 0)
  +   (thumb-size
  +     :initarg  :thumb-size
  +     :initform 1/4
  +     :accessor gadget-thumb-size))
     (:default-initargs
       :border-style :inset
       :border-width 1))
  +
  +(defmethod compose-space ((pane pixie-slider-pane) &key width height)
  +  (declare (ignore width height))
  +  (if (eq (gadget-orientation pane) :vertical)
  +      (make-space-requirement :min-width   *scrollbar-thickness*
  +			      :width       *scrollbar-thickness*
  +                              :max-width   +fill+
  +			      :min-height  (* 2 *scrollbar-thickness*)
  +			      :height      (* 4 *scrollbar-thickness*)
  +                              :max-height  +fill+)
  +      (make-space-requirement :min-height  *scrollbar-thickness*
  +			      :height      *scrollbar-thickness* 
  +			      :max-height  +fill+
  +			      :min-width   (* 2 *scrollbar-thickness*)
  +			      :width       (* 4 *scrollbar-thickness*)
  +                              :max-width   +fill+)))
   
   (defmethod vertical-gadget-orientation-transformation ((pane gadget))
     (ecase (gadget-orientation pane)
  
positive.code:       (setf pressedp nil)
        (dispatch-repaint pane +everywhere+))))
  
  ; factor out the box code and reuse as a border mixin
  (defmethod handle-repaint ((pane pixie-push-button-pane) region)
    (declare (ignore region))
    (with-slots (armed dragging pressedp) pane
  
negative.code: 
  (defclass pixie-menu-button-pane (pixie-gadget menu-button-pane) ())
  
  (defmethod handle-repaint ((pane pixie-menu-button-pane) region)
    (declare (ignore region))
    (with-special-choices (pane)
  