cicaprojekt/cicaprojekt/FieldDrawer.java
ericnerdo 3268268dc2 Drawers refactored. Imageloading is now in the Drawers instead of
inheriting from ImagePanel. ImagePanel.java deleted.
2016-05-07 19:41:57 +02:00

55 lines
1.2 KiB
Java

package cicaprojekt;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.JPanel;
public class FieldDrawer extends JPanel implements Drawer {
private BufferedImage image;
Field field;
public FieldDrawer(Field f) throws IOException {
image = ImageIO.read(new File("Field.png"));
field = f;
setVisible(false);
}
@Override
public void draw() throws IOException {
if(field.hasBox())
changeImage("Box.png");
else if(field.hasZPM())
changeImage("ZPM.png");
else
changeImage("Field.png");
setVisible(true);
}
@Override
public int getX() {
return field.getX();
}
@Override
public int getY() {
return field.getY();
}
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawImage(image, 0, 0, null); // see javadoc for more info on the parameters
}
public void changeImage(String path) throws IOException {
image = ImageIO.read(new File(path));
repaint();
}
}