source: java/main/src/main/java/com/framsticks/gui/ImageProvider.java @ 78

Last change on this file since 78 was 77, checked in by psniegowski, 11 years ago

Add new java codebase.

File size: 3.2 KB
Line 
1/**
2 *
3 */
4package com.framsticks.gui;
5
6import org.apache.log4j.Logger;
7
8import javax.swing.*;
9import java.net.URL;
10import java.util.HashMap;
11import java.util.LinkedHashMap;
12
13/**
14 * Class provides icons images.
15 */
16public class ImageProvider {
17
18    private final static Logger LOGGER = Logger.getLogger(ImageProvider.class.getName());
19
20
21    /**
22         * HashMap stores icons. Key is icon path, Value is icon.
23         */
24        private static HashMap<String, ImageIcon> icons = new LinkedHashMap<String, ImageIcon>();
25
26        public static final String IMAGE = "image.png";
27        public static final String LOGO = "logo.png";
28
29        //public static final String FOLDER_OPEN = "folder_open.png";
30        //public static final String FOLDER_CLOSED = "folder_close.png";
31        //public static final String NODE = "node.png";
32
33        public static final String SERVER = "server.png";
34
35        public static final String CLI = "cli.png";
36        public static final String EVENT = "event.png";
37        public static final String SIMULATOR = "simulator.png";
38
39        public static final String WORLD = "World.png";
40        public static final String GENEPOOLS = "genepools.png";
41        public static final String GENEPOOLS_GROUP = "genepoolsgroup.png";
42        public static final String POPULATIONS = "populations.png";
43        public static final String POPULATION_GROUP = "populationgroup.png";
44        public static final String STATISTIC = "statistic.png";
45        public static final String EXPERIMENT = "experiment.png";
46
47        public static final String CREATURES_GROUP = "CreaturesGroup.png";
48        public static final String CREATURE = "Creature.png";
49
50        public static final String GENOTYPES_GROUP = "GenotypeGroup.png";
51        public static final String GENOTYPES = "Genotype.png";
52
53        public static final String JOINT_GROUP = "l_Joint.png";
54        public static final String JOINT = "Joint.png";
55        public static final String MECH_JOINT_GROUP = "l_MechJoint.png";
56        public static final String MECH_JOINT = "MechJoint.png";
57        public static final String PART_GROUP = "l_Part.png";
58        public static final String PART = "Part.png";
59        public static final String MECH_PART_GROUP = "l_MechPart.png";
60        public static final String MECH_PART = "MechPart.png";
61        public static final String NEURON_GROUP = "l_Neuro.png";
62        public static final String NEURON = "Neuro.png";
63        public static final String NEURON_DEF_GROUP = "l_NeuroDef.png";
64        public static final String NEURON_DEF = "NeuroDef.png";
65
66        public static final String FAVORITES = "stats.png";
67        public static final String FAVORITE_FIELDS = "FavouriteFields.png";
68
69        public static final String SIM_START = "sim_start.png";
70        public static final String SIM_STEP = "sim_step.png";
71        public static final String SIM_STOP = "sim_stop.png";
72
73        /**
74         * Loads image icon with the given getName(path).
75         *
76         * @param imageName Name of the image(including extension) which will be loaded.
77         * @return Loaded image.
78         */
79        public static ImageIcon loadImage(final String imageName) {
80                if (icons.containsKey(imageName)) {
81                        return icons.get(imageName);
82                }
83        String resourceName = "/shared/res/network/" + imageName;
84                try {
85            ImageIcon icon = new ImageIcon(ImageProvider.class.getResource(resourceName));
86                        icons.put(imageName, icon);
87            return icon;
88                } catch (Exception ignored) {
89            LOGGER.error("failed to read icon: " + resourceName);
90                }
91                return null;
92        }
93}
Note: See TracBrowser for help on using the repository browser.