public class PathIcon
extends javax.swing.ImageIcon
For a long time, this class loaded images asynchronously with the EventQueue thread, updating the imageobserver as
they came in. It was changed to instead load images synchronously, opting to store them in an in-memory cache. See
ImageLoader
This simplifies the code a lot, and was done to eliminate a race condition that was occuring when
multiple images were loading the same image, and then applying filters (common). See SVN for old methods and inner
classes.
Modifier and Type | Class and Description |
---|---|
protected class |
PathIcon.LoadImageTask |
Modifier and Type | Field and Description |
---|---|
protected static java.awt.Component |
comp |
protected boolean |
useCache |
Constructor and Description |
---|
PathIcon() |
PathIcon(java.awt.image.ImageObserver observer,
java.lang.String path,
int w,
int h) |
PathIcon(java.awt.image.ImageObserver observer,
java.lang.String path,
int w,
int h,
boolean useCache,
boolean loadInBackground) |
Modifier and Type | Method and Description |
---|---|
void |
doFilters(boolean update) |
int |
getHeight() |
int |
getIconHeight() |
int |
getIconWidth() |
java.awt.Image |
getImage() |
protected PathIcon.LoadImageTask |
getImageLoadingTask(java.lang.String path,
int sW,
int sH,
long mySeq) |
java.awt.image.ImageObserver |
getImageObserver() |
java.lang.String |
getPath() |
int |
getWidth() |
boolean |
isLoadInBackground() |
boolean |
isUseCache() |
void |
paintIcon(java.awt.Component c,
java.awt.Graphics g,
int x,
int y) |
void |
reset() |
void |
setFilterA(java.awt.image.ImageFilter filter) |
void |
setFilterB(java.awt.image.ImageFilter filter) |
void |
setHeight(int i) |
void |
setImage(java.awt.Image img) |
void |
setImageObserver(java.awt.image.ImageObserver observer) |
void |
setLoadInBackground(boolean loadInBackground) |
void |
setPath(java.lang.String string) |
void |
setScaleMode(int scaleMode)
Deprecated.
|
void |
setStretchSize(int w,
int h) |
void |
setUseCache(boolean useCache) |
void |
setWidth(int i) |
static boolean |
waitForImage(java.awt.Image image) |
protected static final java.awt.Component comp
protected boolean useCache
public PathIcon()
public PathIcon(java.awt.image.ImageObserver observer, java.lang.String path, int w, int h)
public PathIcon(java.awt.image.ImageObserver observer, java.lang.String path, int w, int h, boolean useCache, boolean loadInBackground)
public void setLoadInBackground(boolean loadInBackground)
public boolean isLoadInBackground()
public int getIconHeight()
getIconHeight
in interface javax.swing.Icon
getIconHeight
in class javax.swing.ImageIcon
public int getIconWidth()
getIconWidth
in interface javax.swing.Icon
getIconWidth
in class javax.swing.ImageIcon
public void paintIcon(java.awt.Component c, java.awt.Graphics g, int x, int y)
paintIcon
in interface javax.swing.Icon
paintIcon
in class javax.swing.ImageIcon
public void setImage(java.awt.Image img)
setImage
in class javax.swing.ImageIcon
public java.awt.Image getImage()
getImage
in class javax.swing.ImageIcon
public int getHeight()
public java.awt.image.ImageObserver getImageObserver()
getImageObserver
in class javax.swing.ImageIcon
public int getWidth()
public void setHeight(int i)
public void setStretchSize(int w, int h)
public void reset()
public void setUseCache(boolean useCache)
public boolean isUseCache()
public void setImageObserver(java.awt.image.ImageObserver observer)
setImageObserver
in class javax.swing.ImageIcon
public void setWidth(int i)
public java.lang.String getPath()
protected PathIcon.LoadImageTask getImageLoadingTask(java.lang.String path, int sW, int sH, long mySeq)
public void setPath(java.lang.String string)
public static boolean waitForImage(java.awt.Image image)
public void setFilterA(java.awt.image.ImageFilter filter)
public void setFilterB(java.awt.image.ImageFilter filter)
public void doFilters(boolean update)
@Deprecated public void setScaleMode(int scaleMode)