public void showBalloonToolTip(final Earthquake earthquake) {
if (trayItem != null && !trayItem.isDisposed()) {
final StringBuilder text = new StringBuilder();
text.append("M ").append(earthquake.getMagnitude()).append(", ").append(earthquake.getRegion());
final StringBuilder message = new StringBuilder();
final DateFormat df = ResultsTable.dateFormat.get();
df.setTimeZone(TimeZone.getTimeZone(configuration.getString("timezone", EarthquakeBulletin.Defaults.TIME_ZONE_ID)));
message.append(df.format(earthquake.getTime())).append(' ');
message.append(earthquake.getLatitude()).append(' ');
message.append(earthquake.getLongitude()).append(' ');
message.append(earthquake.getDepth()).append(' ');
message.append(earthquake.getStatus());
final ToolTip toolTip;
if (earthquake.getMagnitude() >= configuration.getFloat("magnitude.xxl", ResultsTable.Defaults.MAGNITUDE_XXL)) {
toolTip = toolTips.get(SWT.ICON_ERROR);
}
else if (earthquake.getMagnitude() >= configuration.getFloat("magnitude.big", ResultsTable.Defaults.MAGNITUDE_BIG)) {
toolTip = toolTips.get(SWT.ICON_WARNING);
}
else {
toolTip = toolTips.get(SWT.ICON_INFORMATION);
}
try {
trayItem.getDisplay().syncExec(new Runnable() {
@Override
public void run() {
logger.log(Level.FINE, "{0}", text);
trayItem.setToolTip(toolTip);
toolTip.setText(text.toString().trim());
toolTip.setMessage(message.toString().trim());
toolTip.setVisible(true);
}
});
}
catch (final RuntimeException e) {
logger.log(Level.WARNING, e.toString(), e);
}
}
}
TrayIcon.java 文件源码
java
阅读 34
收藏 0
点赞 0
评论 0
项目:EarthquakeBulletin
作者:
评论列表
文章目录