Changeset 16074 in josm for trunk/src/org
- Timestamp:
- 2020-03-08T11:45:44+01:00 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/org/openstreetmap/josm/tools/ImageResource.java
r16060 r16074 5 5 import java.awt.Image; 6 6 import java.awt.image.BufferedImage; 7 import java.util.HashMap;8 7 import java.util.List; 9 8 import java.util.Map; 9 import java.util.concurrent.ConcurrentHashMap; 10 10 11 11 import javax.swing.AbstractAction; … … 31 31 * Caches the image data for resized versions of the same image. 32 32 */ 33 private final Map<Dimension, BufferedImage> imgCache = new HashMap<>(4); 33 private final Map<Dimension, BufferedImage> imgCache = new ConcurrentHashMap<>(4); 34 34 /** 35 35 * SVG diagram information in case of SVG vector image. … … 285 285 public ImageIcon getPaddedIcon(Dimension iconSize) { 286 286 final Dimension cacheKey = new Dimension(-iconSize.width, -iconSize.height); // use negative width/height for differentiation 287 final BufferedImage image = imgCache.computeIfAbsent(cacheKey, ignore -> 288 ImageProvider.createPaddedIcon(getImageIcon().getImage(), iconSize)); 287 BufferedImage image = imgCache.get(cacheKey); 288 if (image == null) { 289 image = ImageProvider.createPaddedIcon(getImageIcon().getImage(), iconSize); 290 imgCache.put(cacheKey, image); 291 } 289 292 return new ImageIcon(image); 290 293 }
Note:
See TracChangeset
for help on using the changeset viewer.