@Override
 public void dispose() {
   // temporary pause the console output, until a new console is available again
   outStreamConnection.getUiPipe().setTarget(new AlwaysPaused());
   errStreamConnection.getUiPipe().setTarget(new AlwaysPaused());
   stdOut.dispose();
   stdErr.dispose();
   totalWidget.dispose();
 }
 @Override
 public void createPartControl(Composite parent) {
   totalWidget = new SashCompose(parent);
   IToolBarManager toolbar = getViewSite().getActionBars().getToolBarManager();
   toolbar.add(new PauseOutputAction());
   toolbar.add(new ClearAction());
   stdOut =
       makeWidget(
           outStreamConnection,
           totalWidget.getSashForm(),
           Display.getCurrent().getSystemColor(SWT.COLOR_BLACK),
           STD_OUT_BUFFER_SIZE,
           true);
   stdErr =
       makeWidget(
           errStreamConnection,
           totalWidget.getSashForm(),
           Display.getCurrent().getSystemColor(SWT.COLOR_RED),
           STD_ERR_BUFFER_SIZE,
           true);
 }