if (device == null || device.isDisposed()) {
return;
}
if (mapColors.size() == 0) {
for (int i = 1; i <= 16; i++) {
Color color = device.getSystemColor(i);
Long key = new Long(((long) color.getRed() << 16)
+ (color.getGreen() << 8) + color.getBlue());
addColor(key, color);
}
if (DEBUG) {
SimpleTimer.addPeriodicEvent("ColorCacheChecker", 60000,
new TimerEventPerformer() {
public void perform(TimerEvent event) {
Utils.execSWTThread(new AERunnable() {
public void runSupport() {
for (Iterator<Long> iter = mapColors.keySet().iterator(); iter.hasNext();) {
Long key = iter.next();
Color color = mapColors.get(key);
if (color.isDisposed()) {
Logger.log(new LogAlert(false, LogAlert.AT_ERROR,
"Someone disposed of color "
+ Long.toHexString(key.longValue())
+ ". Please report this on the "
+ "<A HREF=\"http://forum.vuze.com/forum.jspa?forumID=4\">forum</A>"));