// ESGradientPaint.java // Pet Jan 23 00:29:02 CET 2004 // hvala river-u i StMilan-u // kodirao kruzer@panet.co.yu import java.awt.*; import java.io.*; import java.awt.geom.*; import java.awt.image.*; public class ESGradientPaint implements Serializable, Paint{ transient private GradientPaint gp; public ESGradientPaint(GradientPaint gp) { this.gp = gp; } private void writeObject(ObjectOutputStream out) throws IOException { out.writeFloat((float)gp.getPoint1().getX()); out.writeFloat((float)gp.getPoint1().getY()); out.writeObject(gp.getColor1()); out.writeFloat((float)gp.getPoint2().getX()); out.writeFloat((float)gp.getPoint2().getY()); out.writeObject(gp.getColor2()); out.writeBoolean(gp.isCyclic()); } private void readObject(ObjectInputStream in) throws IOException, ClassNotFoundException { float x1 = in.readFloat(); float y1 = in.readFloat(); Color color1 = (Color) in.readObject(); float x2 = in.readFloat(); float y2 = in.readFloat(); Color color2 = (Color) in.readObject(); boolean cyclic = in.readBoolean(); gp = new GradientPaint(x1, y1, color1, x2, y2, color2, cyclic); } public PaintContext createContext(ColorModel cm, Rectangle deviceBounds, Rectangle2D userBounds, AffineTransform xform, RenderingHints hints) { return gp.createContext(cm, deviceBounds, userBounds, xform, hints); } public int getTransparency() { return gp.getTransparency(); } public String toString() { String s = "\nESGradientPaint\n" + gp.getPoint1(); s += "\n" + gp.getColor1(); s += "\n" + gp.getPoint2(); s += "\n" + gp.getColor2(); s += "\ncyclic:" + gp.isCyclic(); return s; } }