anchor.diff:          (:dragging
            (let* ((y-new-thumb-top (- y drag-dy))
                   (ts (scroll-bar-thumb-size sb))
  -                (new-value (translate-range-value y-new-thumb-top
  +                (new-value (min (gadget-max-value sb)
  +                               (max (gadget-min-value sb)
  +                                    (translate-range-value y-new-thumb-top
                                                     (bounding-rectangle-min-y (scroll-bar-thumb-bed-region sb))
                                                     (bounding-rectangle-max-y (scroll-bar-thumb-bed-region sb))
                                                     (gadget-min-value sb)
  -                                                  (+ (gadget-max-value sb) ts))))
  +                                                  (+ (gadget-max-value sb) ts))))))
  +           (setf (gadget-value sb) new-value)
  +           (dispatch-repaint sb +everywhere+) 
              (drag-callback sb (gadget-client sb) (gadget-id sb)
  -                          (min (gadget-max-value sb)
  -                               (max (gadget-min-value sb)
  -                                    new-value))) ))))))
  +                          new-value) ))))))
   
   ;;; Repaint
   
  -(defmethod repaint-sheet ((sb scroll-bar-pane) region)
  +(defmethod handle-repaint ((sb scroll-bar-pane) region)
     (declare (ignore region))
     (with-special-choices (sb)
       (let ((tr (scroll-bar-transformation sb)))
  
positive.code:       (cond ((region-contains-position-p (scroll-bar-up-region sb) x y)
               (scroll-up-line-callback sb (gadget-client sb) (gadget-id sb))
               (setf event-state :up-armed)
               (repaint-sheet sb +everywhere+))
              ((region-contains-position-p (scroll-bar-down-region sb) x y)
               (scroll-down-line-callback sb (gadget-client sb) (gadget-id sb))
               (setf event-state :dn-armed)
               (repaint-sheet sb +everywhere+))
              ((region-contains-position-p (scroll-bar-thumb-region sb) x y)
               (setf event-state :dragging
                     drag-dy (- y (bounding-rectangle-min-y (scroll-bar-thumb-region sb)))))
  
negative.code: 			    5 ;(- position slider-button-half-short-dim)
  			    (- middle slider-button-half-long-dim)))))))))
  
  
  (defmethod convert-value-to-position ((pane slider-pane))
    (multiple-value-bind (x1 y1 x2 y2) (bounding-rectangle* (sheet-region pane))
      (multiple-value-bind (good-dim1 good-dim2)
  