package org.ripple.power.ui.graphics;
import java.awt.Color;
import java.awt.Composite;
import java.awt.Font;
import java.awt.Graphics2D;
import java.awt.Paint;
import java.awt.RenderingHints;
import java.awt.Shape;
import java.awt.Stroke;
import java.awt.geom.AffineTransform;
public class Graphics2DStore {
private Paint paint;
private Font font;
private Stroke stroke;
private AffineTransform transform;
private Composite composite;
private Shape clip;
private RenderingHints renderingHints;
private Color color;
private Color background;
public void save(Graphics2D g2d) {
paint = g2d.getPaint();
font = g2d.getFont();
stroke = g2d.getStroke();
transform = g2d.getTransform();
composite = g2d.getComposite();
clip = g2d.getClip();
renderingHints = g2d.getRenderingHints();
color = g2d.getColor();
background = g2d.getBackground();
}
public void restore(Graphics2D g2d) {
g2d.setPaint(paint);
g2d.setFont(font);
g2d.setStroke(stroke);
g2d.setTransform(transform);
g2d.setComposite(composite);
g2d.setClip(clip);
g2d.setRenderingHints(renderingHints);
g2d.setColor(color);
g2d.setBackground(background);
}
public Color getBackground() {
return background;
}
public Shape getClip() {
return clip;
}
public Color getColor() {
return color;
}
public Composite getComposite() {
return composite;
}
public Font getFont() {
return font;
}
public Paint getPaint() {
return paint;
}
public RenderingHints getRenderingHints() {
return renderingHints;
}
public void setRenderingHints(RenderingHints renderingHints) {
this.renderingHints = renderingHints;
}
public Stroke getStroke() {
return stroke;
}
public AffineTransform getTransform() {
return transform;
}
}