summaryrefslogtreecommitdiffstats
path: root/Master/Agile Software Development/TestApp/src/testapp/ImageComponent.java
blob: 359bf1041fe160cb05bd0b22e10f961d01aec0cb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
/*
 * Class for image drawing.
 */
package testapp;

import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import javax.imageio.ImageIO;
import javax.swing.JComponent;
import java.util.logging.*;

/**
 *
 * @author eisenhauer
 */
public class ImageComponent extends JComponent {

    private BufferedImage image;
    private File file;

    public void setImage(File file) {
        this.file = file;
        try {
            if ((image = ImageIO.read(this.file)) != null) {
                setPreferredSize(new Dimension(image.getWidth(), image.getHeight()));
                repaint();
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    @Override
    protected void paintComponent(Graphics g) {
        if (image != null) {
            g.drawImage(image, 0, 0, this);
        }
    }

    public File getFile() {
        return file;
    }
}