1 package org.simantics.scl.ui.console;
3 import org.eclipse.jface.action.Action;
4 import org.eclipse.jface.action.IToolBarManager;
5 import org.eclipse.swt.SWT;
6 import org.eclipse.swt.widgets.Composite;
7 import org.eclipse.ui.part.ViewPart;
8 import org.simantics.scl.compiler.commands.SCLConsoleListener;
9 import org.simantics.scl.runtime.reporting.SCLReportingHandler;
12 * @author Tuukka Lehtonen
15 public class SCLScriptConsoleView extends ViewPart {
17 private SCLConsole console;
20 public void createPartControl(Composite parent) {
21 this.console = new SCLConsole(parent, SWT.NONE,
22 AbstractCommandConsole.HIDE_INPUT | SCLConsole.EXCLUDE_CONTRIBUTED_LISTENERS);
24 IToolBarManager toolBarManager = getViewSite().getActionBars().getToolBarManager();
25 Action clearAction = ConsoleActions.createClearAction(console);
26 toolBarManager.add(clearAction);
28 console.addListener(new SCLConsoleListener() {
30 public void consoleIsNotEmptyAnymore() {
31 clearAction.setEnabled(true);
35 toolBarManager.update(true);
39 public void setFocus() {
44 public void dispose() {
49 @SuppressWarnings("unchecked")
51 public <T> T getAdapter(Class<T> adapter) {
52 if (adapter == SCLReportingHandler.class)
53 return (T) console.getHandler();
54 return super.getAdapter(adapter);