48 lines
1.2 KiB
Java
48 lines
1.2 KiB
Java
package cicaprojekt;
|
|
|
|
import javax.imageio.ImageIO;
|
|
import javax.swing.filechooser.FileNameExtensionFilter;
|
|
import java.awt.image.BufferedImage;
|
|
import java.io.File;
|
|
import java.io.IOException;
|
|
import java.util.HashMap;
|
|
import java.util.Map;
|
|
|
|
/**
|
|
* A képek számontartására szolgáló osztály.
|
|
*/
|
|
public class ImageStorage {
|
|
/**
|
|
* <code>Map</code>, amely a képek mellé tárolja a nevüket.
|
|
*/
|
|
private Map<String, BufferedImage> images;
|
|
|
|
/**
|
|
* Az osztály konstruktora. Betölti a szükséges képeket.
|
|
*
|
|
* @throws IOException Ha nem találhatóak a képek.
|
|
*/
|
|
public ImageStorage() throws IOException {
|
|
images = new HashMap<>();
|
|
|
|
File dir = new File(System.getProperty("user.dir"));
|
|
FileNameExtensionFilter filter = new FileNameExtensionFilter("N/A", "png");
|
|
|
|
for (File f : dir.listFiles()) {
|
|
if (filter.accept(f) && f.isFile()){
|
|
images.put(f.getName(), ImageIO.read(f));
|
|
}
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Visszatér a kapott nevű képpel.
|
|
*
|
|
* @param filename a kapott név
|
|
* @return a kapott nevű kép
|
|
*/
|
|
public BufferedImage getImage(String filename) {
|
|
return images.get(filename);
|
|
}
|
|
}
|