store.setDefault(REFRESH_AUTOMATICALLY, true);
this.console = new SCLConsole(parent, SWT.NONE);
-
- setRefreshAutomatically(store.getBoolean(REFRESH_AUTOMATICALLY), false);
- setCurrentImports(readImportPreferences());
-
- addScriptDropSupport(console);
IToolBarManager toolBarManager = getViewSite().getActionBars().getToolBarManager();
// Interrupt action
- final Action interruptAction = new Action("Interrupt current command",
- Activator.imageDescriptorFromPlugin("org.simantics.scl.ui", "icons/stop.png")) {
- @Override
- public void run() {
- console.interruptCurrentCommands();
- }
- };
- interruptAction.setDisabledImageDescriptor(
- Activator.imageDescriptorFromPlugin("org.simantics.scl.ui", "icons/stop_disabled.png"));
- interruptAction.setEnabled(false);
+ Action interruptAction = ConsoleActions.createInterruptAction(console);
toolBarManager.add(interruptAction);
// Clear console action
- final Action clearAction = new Action("Clear console",
- Activator.imageDescriptorFromPlugin("org.simantics.scl.ui", "icons/clear_console.png")) {
- @Override
- public void run() {
- setEnabled(false);
- console.clear();
- }
- };
- clearAction.setDisabledImageDescriptor(
- Activator.imageDescriptorFromPlugin("org.simantics.scl.ui", "icons/clear_console_disabled.png"));
- clearAction.setEnabled(false);
+ Action clearAction = ConsoleActions.createClearAction(console);
toolBarManager.add(clearAction);
+
console.addListener(new SCLConsoleListener() {
@Override
public void startedExecution() {
manageImports();
}
});
-
+
// Show action for running SCL tests if in development mode
if (Platform.inDevelopmentMode()) {
toolBarManager.add(new Action("Run tests",
}
toolBarManager.update(true);
+
+ setRefreshAutomatically(store.getBoolean(REFRESH_AUTOMATICALLY), false);
+ // Do this after the actions and SCLConsoleListener are
+ // registered because it can cause output to the console.
+ setCurrentImports(readImportPreferences());
+ addScriptDropSupport(console);
}
private class ScriptRunningDropTarget extends DropTargetAdapter {