src/share/classes/sun/java2d/loops/MaskFill.java

Print this page

        

*** 34,43 **** --- 34,44 ---- import java.awt.image.WritableRaster; import sun.awt.image.BufImgSurfaceData; import sun.java2d.loops.GraphicsPrimitive; import sun.java2d.SunGraphics2D; import sun.java2d.SurfaceData; + import sun.java2d.pipe.Region; /** * MaskFill * 1) fills rectangles of pixels on a surface * 2) performs compositing of colors based upon a Composite
*** 192,205 **** --- 193,209 ---- SurfaceData tmpData = BufImgSurfaceData.createData(dstBI); // REMIND: This is not pretty. It would be nicer if we // passed a "FillData" object to the Pixel loops, instead // of a SunGraphics2D parameter... + Region clip = sg2d.clipRegion; + sg2d.clipRegion = null; int pixel = sg2d.pixel; sg2d.pixel = tmpData.pixelFor(sg2d.getColor()); fillop.FillRect(sg2d, tmpData, 0, 0, w, h); sg2d.pixel = pixel; + sg2d.clipRegion = clip; maskop.MaskBlit(tmpData, sData, comp, null, 0, 0, x, y, w, h, mask, offset, scan); }