1 package gnu.kawa.models; 2 import java.awt.*; 3 import java.awt.geom.*; 4 5 public class WithPaint implements Paintable 6 { 7 Paintable paintable; 8 Paint paint; 9 10 public WithPaint(Paintable paintable, Paint paint) 11 { 12 this.paintable = paintable; 13 this.paint = paint; 14 } 15 16 public void paint (Graphics2D graphics) 17 { 18 Paint saved = graphics.getPaint(); 19 try 20 { 21 graphics.setPaint(paint); 22 paintable.paint(graphics); 23 } 24 finally 25 { 26 graphics.setPaint(saved); 27 } 28 } 29 30 public Rectangle2D getBounds2D() 31 { 32 return paintable.getBounds2D(); 33 } 34 35 public Paintable transform (AffineTransform tr) 36 { 37 return new WithPaint(paintable.transform(tr), paint); 38 } 39 } 40 | Popular Tags |