1 package org.columba.core.resourceloader; 19 20 import java.net.URL ; 21 22 import javax.swing.ImageIcon ; 23 24 import org.columba.core.io.DiskIO; 25 26 public class ImageLoader { 27 28 private static final String ICON_PATH = "org/columba/core/icons"; 29 30 public static ImageIcon getMimetypeIcon(String name) { 31 URL url; 32 33 url = DiskIO.getResourceURL(ICON_PATH + "/MIMETYPE/" + name); 34 35 if (url == null) 36 url = getFallback(false); 37 38 ImageIcon icon = new ImageIcon (url); 39 40 return icon; 41 } 42 43 public static ImageIcon getIcon(String name) { 44 return getIcon(ImageLoader.ICON_PATH, name, false); 45 } 46 47 public static ImageIcon getSmallIcon(String name) { 48 return getIcon(ImageLoader.ICON_PATH, name, true); 49 } 50 51 public static ImageIcon getIcon(String path, String name, boolean small) { 52 URL url; 53 54 if (small) 55 url = DiskIO.getResourceURL(path + "/16x16/" + name); 56 else 57 url = DiskIO.getResourceURL(path + "/22x22/" + name); 58 59 if (url == null) { 60 url = getFallback(small); 61 } 62 63 ImageIcon icon = new ImageIcon (url); 64 65 return icon; 66 } 67 68 public static ImageIcon getMiscIcon(String name) { 69 URL url; 70 String path = ImageLoader.ICON_PATH; 71 72 url = DiskIO.getResourceURL(path + "/MISC/" + name); 73 74 if (url == null) { 75 url = getFallback(true); 76 } 77 78 ImageIcon icon = new ImageIcon (url); 79 80 return icon; 81 } 82 83 private static URL getFallback(boolean small) { 84 String path; 85 String name; 86 URL url; 87 path = ImageLoader.ICON_PATH; 88 name = "image-missing.png"; 89 if (small) 90 url = DiskIO.getResourceURL(path + "/16x16/" + name); 91 else 92 url = DiskIO.getResourceURL(path + "/22x22/" + name); 93 return url; 94 } 95 96 } | Popular Tags |