static Map imageIcon_cache = synchroWeakHashMap(); static Lock imageIcon_lock = lock(); static ImageIcon imageIcon(S imageID) ctex { lock imageIcon_lock; imageID = fsI(imageID); ImageIcon ii = imageIcon_cache.get(imageID); if (ii == null) imageIcon_cache.put(imageID, ii = new ImageIcon(loadBinarySnippet(imageID).toURI().toURL()); ret ii; } static ImageIcon imageIcon(BufferedImage img) { ret new ImageIcon(img); } ifclass RGBImage static ImageIcon imageIcon(RGBImage img) { ret imageIcon(img.getBufferedImage()); } endif