Drawers refactored. Imageloading is now in the Drawers instead of

inheriting from ImagePanel. ImagePanel.java deleted.
This commit is contained in:
ericnerdo 2016-05-07 19:41:57 +02:00
parent 3a9c615b48
commit 3268268dc2
6 changed files with 90 additions and 39 deletions

View File

@ -1,13 +1,19 @@
package cicaprojekt;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
public class FieldDrawer extends ImagePanel implements Drawer {
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 {
super("Field.png");
image = ImageIO.read(new File("Field.png"));
field = f;
setVisible(false);
}
@ -33,5 +39,16 @@ public class FieldDrawer extends ImagePanel implements Drawer {
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();
}
}

View File

@ -1,13 +1,19 @@
package cicaprojekt;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
public class GapDrawer extends ImagePanel implements Drawer{
import javax.imageio.ImageIO;
import javax.swing.JPanel;
public class GapDrawer extends JPanel implements Drawer{
private BufferedImage image;
private Gap gap;
public GapDrawer(Gap g) throws IOException {
super("Gap.png");
image = ImageIO.read(new File("Gap.png"));
gap = g;
setVisible(false);
}
@ -27,4 +33,10 @@ public class GapDrawer extends ImagePanel implements Drawer{
return gap.getY();
}
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
g.drawImage(image, 0, 0, null); // see javadoc for more info on the parameters
}
}

View File

@ -1,13 +1,19 @@
package cicaprojekt;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
public class GateDrawer extends ImagePanel implements Drawer{
import javax.imageio.ImageIO;
import javax.swing.JPanel;
public class GateDrawer extends JPanel implements Drawer{
private BufferedImage image;
Gate gate;
public GateDrawer(Gate g) throws IOException {
super("ClosedGate.png");
image = ImageIO.read(new File("ClosedGate.png"));
gate = g;
setVisible(false);
}
@ -32,4 +38,15 @@ public class GateDrawer extends ImagePanel implements Drawer{
return gate.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();
}
}

View File

@ -1,29 +0,0 @@
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 ImagePanel extends JPanel{
private BufferedImage image;
public ImagePanel(String path) throws IOException {
image = ImageIO.read(new File(path));
}
@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();
}
}

View File

@ -1,13 +1,19 @@
package cicaprojekt;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
public class ScaleDrawer extends ImagePanel implements Drawer {
import javax.imageio.ImageIO;
import javax.swing.JPanel;
public class ScaleDrawer extends JPanel implements Drawer {
private BufferedImage image;
Scale scale;
public ScaleDrawer(Scale s) throws IOException {
super("Scale.png");
image = ImageIO.read(new File("Scale.png"));
scale = s;
setVisible(false);
}
@ -32,4 +38,15 @@ public class ScaleDrawer extends ImagePanel implements Drawer {
return scale.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();
}
}

View File

@ -1,13 +1,19 @@
package cicaprojekt;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
public class WallDrawer extends ImagePanel implements Drawer {
import javax.imageio.ImageIO;
import javax.swing.JPanel;
public class WallDrawer extends JPanel implements Drawer {
private BufferedImage image;
Wall wall;
public WallDrawer(Wall w) throws IOException {
super("Wall.png");
image = ImageIO.read(new File("Wall.png"));
wall = w;
setVisible(false);
}
@ -45,5 +51,16 @@ public class WallDrawer extends ImagePanel implements Drawer {
public int getY() {
return wall.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();
}
}