|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
*/ |
|
|
|
package sun.java2d.loops; |
|
|
|
import sun.java2d.loops.GraphicsPrimitive; |
|
import sun.java2d.SunGraphics2D; |
|
import sun.java2d.SurfaceData; |
|
import java.awt.geom.Path2D; |
|
|
|
|
|
|
|
|
|
|
|
|
|
*/ |
|
public class FillPath extends GraphicsPrimitive { |
|
|
|
public final static String methodSignature = |
|
"FillPath(...)".toString(); |
|
|
|
public final static int primTypeID = makePrimTypeID(); |
|
|
|
public static FillPath locate(SurfaceType srctype, |
|
CompositeType comptype, |
|
SurfaceType dsttype) |
|
{ |
|
return (FillPath) |
|
GraphicsPrimitiveMgr.locate(primTypeID, |
|
srctype, comptype, dsttype); |
|
} |
|
|
|
protected FillPath(SurfaceType srctype, |
|
CompositeType comptype, |
|
SurfaceType dsttype) |
|
{ |
|
super(methodSignature, primTypeID, |
|
srctype, comptype, dsttype); |
|
} |
|
|
|
public FillPath(long pNativePrim, |
|
SurfaceType srctype, |
|
CompositeType comptype, |
|
SurfaceType dsttype) |
|
{ |
|
super(pNativePrim, methodSignature, primTypeID, |
|
srctype, comptype, dsttype); |
|
} |
|
|
|
|
|
|
|
|
|
*/ |
|
public native void FillPath(SunGraphics2D sg2d, SurfaceData sData, |
|
int transX, int transY, |
|
Path2D.Float p2df); |
|
|
|
public GraphicsPrimitive makePrimitive(SurfaceType srctype, |
|
CompositeType comptype, |
|
SurfaceType dsttype) |
|
{ |
|
throw new InternalError("FillPath not implemented for "+ |
|
srctype+" with "+comptype); |
|
} |
|
|
|
public GraphicsPrimitive traceWrap() { |
|
return new TraceFillPath(this); |
|
} |
|
|
|
private static class TraceFillPath extends FillPath { |
|
FillPath target; |
|
|
|
public TraceFillPath(FillPath target) { |
|
super(target.getSourceType(), |
|
target.getCompositeType(), |
|
target.getDestType()); |
|
this.target = target; |
|
} |
|
|
|
public GraphicsPrimitive traceWrap() { |
|
return this; |
|
} |
|
|
|
public void FillPath(SunGraphics2D sg2d, SurfaceData sData, |
|
int transX, int transY, |
|
Path2D.Float p2df) |
|
{ |
|
tracePrimitive(target); |
|
target.FillPath(sg2d, sData, transX, transY, p2df); |
|
} |
|
} |
|
} |