01: /*
02: * Jacareto Copyright (c) 2002-2005
03: * Applied Computer Science Research Group, Darmstadt University of
04: * Technology, Institute of Mathematics & Computer Science,
05: * Ludwigsburg University of Education, and Computer Based
06: * Learning Research Group, Aachen University. All rights reserved.
07: *
08: * Jacareto is free software; you can redistribute it and/or
09: * modify it under the terms of the GNU General Public
10: * License as published by the Free Software Foundation; either
11: * version 2 of the License, or (at your option) any later version.
12: *
13: * Jacareto is distributed in the hope that it will be useful,
14: * but WITHOUT ANY WARRANTY; without even the implied warranty of
15: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16: * General Public License for more details.
17: *
18: * You should have received a copy of the GNU General Public
19: * License along with Jacareto; if not, write to the Free
20: * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
21: *
22: */
23:
24: package jacareto.toolkit;
25:
26: import java.awt.image.BufferedImage;
27:
28: import javax.swing.ImageIcon;
29:
30: /**
31: * Loads resources.
32: *
33: * @author <a href="mailto:cspannagel@web.de">Christian Spannagel</a>
34: * @version 1.0
35: */
36: public class ResourceLoader {
37: /**
38: * Creates a new ResourceLoader instance.
39: */
40: private ResourceLoader() {
41: }
42:
43: /**
44: * Loads an image icon. Because image icons are very slowly painted, the method {@link
45: * #getBufferedImage(String)} should be preferred.
46: *
47: * @param filename the name of the image file
48: *
49: * @return the loaded image icon
50: */
51: public static ImageIcon getImageIcon(String filename) {
52: ImageIcon result = new ImageIcon((new ResourceLoader())
53: .getClass().getResource("/" + filename));
54:
55: return result;
56: }
57:
58: /**
59: * Loads an image.
60: *
61: * @param filename the name of the image file
62: *
63: * @return the loaded image
64: */
65: public static BufferedImage getBufferedImage(String filename) {
66: ImageIcon icon = getImageIcon(filename);
67: BufferedImage result = new BufferedImage(icon.getIconWidth(),
68: icon.getIconHeight(), BufferedImage.TYPE_INT_ARGB);
69: result.getGraphics().drawImage(icon.getImage(), 0, 0, null);
70:
71: return result;
72: }
73: }
|