anchor.diff:      ((eql ink +foreground-ink+)
        (setf ink (medium-foreground medium)))
       ((eql ink +background-ink+)
  -     (setf ink (medium-background medium))))
  -  (multiple-value-bind (red green blue) (clim:color-rgb ink)
  -    (gfg:make-color :red (min (truncate (* red 256)) 255)
  -		    :green (min (truncate (* green 256)) 255)
  -		    :blue (min (truncate (* blue 256)) 255))))
  +     (setf ink (medium-background medium)))
  +    ((eql ink +flipping-ink+)
  +     (warn "+flipping-ink+ encountered in ink-to-color~%")
  +     (setf ink nil)))
  +  (if ink
  +    (multiple-value-bind (red green blue) (clim:color-rgb ink)
  +      (gfg:make-color :red (min (truncate (* red 256)) 255)
  +                      :green (min (truncate (* green 256)) 255)
  +                      :blue (min (truncate (* blue 256)) 255)))
  +    (gfw:with-graphics-context (gc (target-of medium))
  +      (gfg:background-color gc))))
   
   (defun target-of (medium)
     (let ((sheet (medium-sheet medium)))
  
positive.code:     ;; have better control over them
      ;;
      (let ((face-name (if (stringp family)
  			 family
  			 (ecase family
  			   ((:fix :fixed) "Lucida Console")
  			   (:serif        "Times New Roman")
  			   (:sans-serif    "Arial"))))
  	  (pnt-size (case size
  		      (:tiny       6)
  		      (:very-small 8)
  		      (:small      10)
  		      (:normal     12)
  		      (:large      14)
  		      (:very-large 16)
  		      (:huge       18)
  		      (otherwise   10)))
  	  (style nil))
        (pushnew (case face
  		 ((:bold :bold-italic :bold-oblique :italic-bold :oblique-bold)
  		  :bold)
  		 (otherwise
  		  :normal))
  	       style)
        (pushnew (case face
  		 ((:bold-italic :italic :italic-bold)
  		  :italic)
  		 (otherwise
  		  :normal))
  	       style)
        (pushnew (case family
  		 ((:fix :fixed) :fixed)
  		 (otherwise     :normal))
  	       style)
        (when (or (null old-data)
  		(not (eql pnt-size (gfg:font-data-point-size old-data)))
  		(string-not-equal face-name (gfg:font-data-face-name old-data))
  		(/= (length style)
  		    (length (intersection style (gfg:font-data-style old-data)))))
  	(let ((new-data (gfg:make-font-data :face-name face-name
  					    :point-size pnt-size
  					    :style style)))
  	  (make-instance 'gfg:font :gc gc :data new-data))))))
  
  (defmethod (setf medium-text-style) :before (text-style (medium graphic-forms-medium))
    (sync-text-style medium
  
negative.code: 
  (defmethod medium-clear-area ((medium graphic-forms-medium) left top right bottom)
    (when (target-of medium)
      (let ((rect (coordinates->rectangle left top right bottom))
            (color (ink-to-color medium (medium-background medium))))
        (gfw:with-graphics-context (gc (target-of medium))
          (setf (gfg:background-color gc) color
                (gfg:foreground-color gc) color)
          (gfg:draw-filled-rectangle gc rect)))
      (add-medium-to-render medium)))
  
  