本文整理汇总了Java中org.eclipse.e4.ui.di.UISynchronize.asyncExec方法的典型用法代码示例。如果您正苦于以下问题:Java UISynchronize.asyncExec方法的具体用法?Java UISynchronize.asyncExec怎么用?Java UISynchronize.asyncExec使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.eclipse.e4.ui.di.UISynchronize
的用法示例。
在下文中一共展示了UISynchronize.asyncExec方法的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: setTootipConnectionStatus
import org.eclipse.e4.ui.di.UISynchronize; //导入方法依赖的package包/类
public static void setTootipConnectionStatus(final UISynchronize uiSynchronize, final Control control,
final String host, final boolean connected) {
final DefaultToolTip toolTip = new DefaultToolTip(control);
toolTip.setShift(new Point(5, 5));
uiSynchronize.asyncExec(new Runnable() {
@Override
public void run() {
if (connected) {
toolTip.setText("Connected to " + host);
} else {
toolTip.setText("Disconnected");
}
}
});
}
示例2: safelySetToolbarImage
import org.eclipse.e4.ui.di.UISynchronize; //导入方法依赖的package包/类
public static void safelySetToolbarImage(final Form form, final UISynchronize uiSynchronize,
final IBundleResourceLoader bundleResourceService, final String path) {
uiSynchronize.asyncExec(new Runnable() {
@Override
public void run() {
form.setImage(bundleResourceService.loadImage(this.getClass(), path));
}
});
}
示例3: execute
import org.eclipse.e4.ui.di.UISynchronize; //导入方法依赖的package包/类
@Execute
public void execute(EPartService partService, final IWorkbench workbench,
Shell shell, DBManager dbManager, UISynchronize sync) {
boolean saveAll = false;
boolean close = false;
if (!partService.getDirtyParts().isEmpty()) {
saveAll = MessageDialog.openConfirm(shell, "Unsaved Data",
"Unsaved data, do you want to save and restart?");
} else {
close = MessageDialog.openConfirm(shell, "Restart",
"Restart application?");
}
if (saveAll) {
partService.saveAll(false);
}
if (close || saveAll) {
try {
if (dbManager.optimizationRequired()) {
// ask user if optimize
dbManager.optimize();
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
sync.asyncExec(new Runnable() {
@Override
public void run() {
workbench.restart();
}
});
}
}
示例4: listenToRpmValue
import org.eclipse.e4.ui.di.UISynchronize; //导入方法依赖的package包/类
@Inject @Optional
public void listenToRpmValue(final @Named(EngineSimulator.ECF2014_RPM_VALUE) int value, UISynchronize sync)
{
if (rpmCounter != null)
sync.asyncExec(new Runnable()
{
@Override public void run()
{
rpmCounter.setValue(value);
}
});
}
示例5: listenToSpeedValue
import org.eclipse.e4.ui.di.UISynchronize; //导入方法依赖的package包/类
@Optional
@Inject
public void listenToSpeedValue(final @Named(EngineSimulator.ECF2014_SPEED_VALUE) int value, UISynchronize sync)
{
if (speedCounter != null)
sync.asyncExec(new Runnable()
{
@Override
public void run()
{
speedCounter.setValue(value);
}
});
}
示例6: listenToRpmValue
import org.eclipse.e4.ui.di.UISynchronize; //导入方法依赖的package包/类
@Inject @Optional
public void listenToRpmValue(final @Named(EngineSimulator.ENGINE_RPM_VALUE) int value, UISynchronize sync)
{
if (rpmCounter != null)
sync.asyncExec(new Runnable()
{
@Override public void run()
{
rpmCounter.setValue(value);
}
});
}
示例7: listenToSpeedValue
import org.eclipse.e4.ui.di.UISynchronize; //导入方法依赖的package包/类
@Optional
@Inject
public void listenToSpeedValue(final @Named(EngineSimulator.ENGINE_SPEED_VALUE) int value, UISynchronize sync)
{
if (speedCounter != null)
sync.asyncExec(new Runnable()
{
@Override
public void run()
{
speedCounter.setValue(value);
}
});
}
示例8: run
import org.eclipse.e4.ui.di.UISynchronize; //导入方法依赖的package包/类
/**
* @see org.eclipse.core.runtime.jobs.Job#run(org.eclipse.core.runtime.IProgressMonitor)
* Note: this message is marked final. Implementors should use
* runInUIThread() instead.
*/
@Override
public final IStatus run(final IProgressMonitor monitor) {
if (monitor.isCanceled()) {
return Status.CANCEL_STATUS;
}
UISynchronize uiSynchronize = getUiSynchronize();
if (uiSynchronize == null) {
return Status.CANCEL_STATUS;
}
uiSynchronize.asyncExec(new Runnable() {
@Override
public void run() {
IStatus result = null;
Throwable throwable = null;
try {
//As we are in the UI Thread we can
//always know what to tell the job.
setThread(Thread.currentThread());
if (monitor.isCanceled()) {
result = Status.CANCEL_STATUS;
} else {
// TODO E4 - missing e4 replacement
// UIStats.start(UIStats.UI_JOB, getName());
result = runInUIThread(monitor);
}
} catch(Throwable t){
throwable = t;
} finally {
// TODO E4 - missing e4 replacement
// UIStats.end(UIStats.UI_JOB, UIJob.this, getName());
if (result == null) {
result = new Status(IStatus.ERROR,
IProgressConstants.PLUGIN_ID, IStatus.ERROR,
ProgressMessages.InternalError,
throwable);
}
done(result);
}
}
});
return Job.ASYNC_FINISH;
}
示例9: openDialogBox
import org.eclipse.e4.ui.di.UISynchronize; //导入方法依赖的package包/类
public static void openDialogBox(final Shell shell, final IKuraMQTTClient mqttClient, final IEventBroker broker,
final UISynchronize synchronize, final MWindow window) {
final ConnectionSettingsDialog dialog = new ConnectionSettingsDialog(shell, broker, synchronize, window);
retriveAllTheTestServers(window);
dialog.create();
if (mqttClient != null) {
dialog.setMqttServerAddress(mqttClient.getHost());
dialog.setClientId(mqttClient.getClientId());
ConnectionSettingsDialog.mqttClient = mqttClient;
}
if (dialog.open() == Window.OK) {
if ("".equals(dialog.getMqttServerAddress()) || (dialog.getMqttServerAddress() == null)) {
openError(shell, "Error in MQTT Server Address", "MQTT Server Address can't be empty");
return;
}
if ("".equals(dialog.getClientId()) || (dialog.getClientId() == null)) {
openError(shell, "Error in Client ID", "Client ID can't be empty");
return;
}
if (mqttClient == null) {
if (!("".equals(mqttServerUsername) || "".equals(mqttServerPassword))) {
ConnectionSettingsDialog.mqttClient = new KuraMQTTClient.Builder().setHost(mqttServerAddress)
.setPort(mqttServerPort).setClientId(clientId).setUsername(mqttServerUsername)
.setPassword(mqttServerPassword).build();
} else {
ConnectionSettingsDialog.mqttClient = new KuraMQTTClient.Builder().setHost(mqttServerAddress)
.setPort(mqttServerPort).setClientId(clientId).build();
}
}
synchronize.asyncExec(new Runnable() {
@Override
public void run() {
boolean status = false;
try {
status = ConnectionSettingsDialog.mqttClient.connect();
} catch (final Exception e) {
MessageDialog.openError(shell, "Connection Problem",
"Something bad happened to the connection");
return;
}
if (status) {
broker.post(CONNECTED_EVENT_TOPIC,
new Object[] { mqttServerAddress, clientId, ConnectionSettingsDialog.mqttClient });
} else {
broker.post(DISCONNECTED_EVENT_TOPIC, new Object[] { mqttServerAddress, clientId });
}
}
});
}
}
示例10: initialize
import org.eclipse.e4.ui.di.UISynchronize; //导入方法依赖的package包/类
@Override
public void initialize(IEventBroker _broker, final UISynchronize sync) {
this.broker = _broker;
logger.info("Initialize START");
listeners = new NXTListeners(broker, this);
H2ListenerHelper.getInstance().initialize(broker);
initializing = true;
/* Start the initialization process */
broker.post(INxtService.TOPIC_INITIALIZATION_START, 1);
/* The first block scanned signals reading of database is complete */
broker.subscribe(INxtService.TOPIC_BLOCK_SCANNED, new EventHandler() {
@Override
public void handleEvent(Event event) {
broker.unsubscribe(this);
setScanning(true);
broker.post(INxtService.TOPIC_BLOCK_SCANNER_START, 1);
}
});
logger.info("NXT init START");
try {
/* Read the database file AND iterate over all records in database */
Nxt.init(Config.properties);
}
catch (final Throwable t) {
sync.syncExec(new Runnable() {
@Override
public void run() {
MessageDialog
.openError(
Display.getDefault().getActiveShell(),
"NXT initialization Error",
"A fatal error occured initializing NXT.\n"
+ "If this keeps occuring consider to delete NXT database folder.\n\n"
+ t.toString());
}
});
System.exit(-1);
return;
}
logger.info("NXT init END");
broker.post(INxtService.TOPIC_BLOCK_SCANNER_FINISHED, getBlockCount());
broker.post(INxtService.TOPIC_INITIALIZATION_FINISHED, 1);
setScanning(false);
initializing = false;
logger.info("Initialization COMPLETE");
/* Nxt initialized and ready turn on forging for all accounts */
sync.asyncExec(new Runnable() {
@Override
public void run() {
for (IAccount account : unlockedAccounts) {
account.startForging();
}
}
});
}