Example usage for org.eclipse.jface.action StatusLineManager getControl

List of usage examples for org.eclipse.jface.action StatusLineManager getControl

Introduction

In this page you can find the example usage for org.eclipse.jface.action StatusLineManager getControl.

Prototype

public Control getControl() 

Source Link

Document

Returns the control used by this StatusLineManager.

Usage

From source file:com.nokia.tools.variant.common.ui.utils.ProgressBarShower.java

License:Open Source License

public void showProgressBar(Thread workingThread, String taskName, boolean busy) {

    IRunnableWithProgress progress = createRunnable(workingThread, taskName);

    WorkbenchWindow activeWorkbenchWindow = (WorkbenchWindow) PlatformUI.getWorkbench()
            .getActiveWorkbenchWindow();

    IProgressMonitor monitor = activeWorkbenchWindow.getStatusLineManager().getProgressMonitor();

    StatusLineManager statusLineManager = activeWorkbenchWindow.getStatusLineManager();
    Composite comp = (Composite) statusLineManager.getControl();
    comp.addControlListener(new ProgressBarControlListener(comp));

    Point point = comp.computeSize(SWT.DEFAULT, SWT.DEFAULT);
    comp.setSize(300, point.y);//from   w  ww .j  a  va 2 s .  c o  m

    runTask(busy, progress, activeWorkbenchWindow, monitor);

}

From source file:com.safi.workshop.sqlexplorer.sqleditor.actions.SQLLimitRowsControl.java

License:Open Source License

@Override
protected Control createControl(Composite parent) {
    // create bottom status bar
    Composite statusBar = new Composite(parent, SWT.NULL);

    GridLayout statusBarLayout = new GridLayout();
    statusBarLayout.numColumns = 3;//  w  ww  .  j  a v  a  2 s .  com
    statusBarLayout.verticalSpacing = 0;
    statusBarLayout.marginHeight = 0;
    statusBarLayout.marginWidth = 0;
    statusBarLayout.marginTop = 0;
    statusBarLayout.marginBottom = 0;
    statusBarLayout.marginRight = 5;
    statusBarLayout.horizontalSpacing = 5;
    statusBarLayout.verticalSpacing = 0;

    statusBar.setLayout(statusBarLayout);

    GridData statusBarGridData = new GridData(SWT.FILL, SWT.BOTTOM, true, false);
    statusBarGridData.verticalIndent = 0;
    statusBarGridData.horizontalIndent = 0;
    statusBar.setLayoutData(statusBarGridData);

    // add status line manager

    StatusLineManager statusMgr = new StatusLineManager();
    statusMgr.createControl(statusBar);

    GridData c1Grid = new GridData();
    c1Grid.horizontalAlignment = SWT.FILL;
    c1Grid.verticalAlignment = SWT.BOTTOM;
    c1Grid.grabExcessHorizontalSpace = true;
    c1Grid.grabExcessVerticalSpace = false;
    statusMgr.getControl().setLayoutData(c1Grid);

    // add checkbox for limiting results

    GridData c2Grid = new GridData();
    c2Grid.horizontalAlignment = SWT.RIGHT;
    c2Grid.verticalAlignment = SWT.CENTER;
    c2Grid.grabExcessHorizontalSpace = false;
    c2Grid.grabExcessVerticalSpace = false;

    limitResults = new Button(statusBar, SWT.CHECK);
    limitResults.setText(Messages.getString("SQLEditor.LimitRows"));
    limitResults.setSelection(true);
    limitResults.setLayoutData(c2Grid);

    // add input field for result limit

    GridData c3Grid = new GridData();
    c3Grid.horizontalAlignment = SWT.RIGHT;
    c3Grid.verticalAlignment = SWT.CENTER;
    c3Grid.grabExcessHorizontalSpace = false;
    c3Grid.grabExcessVerticalSpace = false;
    c3Grid.widthHint = 30;

    maxResultField = new Text(statusBar, SWT.BORDER | SWT.SINGLE);
    maxResultField
            .setText(SQLExplorerPlugin.getDefault().getPreferenceStore().getString(IConstants.MAX_SQL_ROWS));
    maxResultField.setLayoutData(c3Grid);

    limitResults.addMouseListener(new MouseAdapter() {

        // enable/disable input field when checkbox is clicked
        @Override
        public void mouseUp(MouseEvent e) {

            maxResultField.setEnabled(limitResults.getSelection());
        }
    });

    statusBar.layout();
    return statusBar;
}

From source file:net.sourceforge.sqlexplorer.sqleditor.actions.SQLLimitRowsControl.java

License:Open Source License

protected Control createControl(Composite parent) {
    // create bottom status bar
    Composite statusBar = new Composite(parent, SWT.NULL);

    GridLayout statusBarLayout = new GridLayout();
    statusBarLayout.numColumns = 3;//from w ww . j a v  a2s .com
    statusBarLayout.verticalSpacing = 0;
    statusBarLayout.marginHeight = 0;
    statusBarLayout.marginWidth = 0;
    statusBarLayout.marginTop = 0;
    statusBarLayout.marginBottom = 0;
    statusBarLayout.marginRight = 5;
    statusBarLayout.horizontalSpacing = 5;
    statusBarLayout.verticalSpacing = 0;

    statusBar.setLayout(statusBarLayout);

    GridData statusBarGridData = new GridData(SWT.FILL, SWT.BOTTOM, true, false);
    statusBarGridData.verticalIndent = 0;
    statusBarGridData.horizontalIndent = 0;
    statusBar.setLayoutData(statusBarGridData);

    // add status line manager

    StatusLineManager statusMgr = new StatusLineManager();
    statusMgr.createControl(statusBar);

    GridData c1Grid = new GridData();
    c1Grid.horizontalAlignment = SWT.FILL;
    c1Grid.verticalAlignment = SWT.BOTTOM;
    c1Grid.grabExcessHorizontalSpace = true;
    c1Grid.grabExcessVerticalSpace = false;
    statusMgr.getControl().setLayoutData(c1Grid);

    // add checkbox for limiting results

    GridData c2Grid = new GridData();
    c2Grid.horizontalAlignment = SWT.RIGHT;
    c2Grid.verticalAlignment = SWT.CENTER;
    c2Grid.grabExcessHorizontalSpace = false;
    c2Grid.grabExcessVerticalSpace = false;

    limitResults = new Button(statusBar, SWT.CHECK);
    limitResults.setText(Messages.getString("SQLEditor.LimitRows"));
    limitResults.setSelection(true);
    limitResults.setLayoutData(c2Grid);

    // add input field for result limit

    GridData c3Grid = new GridData();
    c3Grid.horizontalAlignment = SWT.RIGHT;
    c3Grid.verticalAlignment = SWT.CENTER;
    c3Grid.grabExcessHorizontalSpace = false;
    c3Grid.grabExcessVerticalSpace = false;
    c3Grid.widthHint = 30;

    maxResultField = new Text(statusBar, SWT.BORDER | SWT.SINGLE);
    maxResultField
            .setText(SQLExplorerPlugin.getDefault().getPreferenceStore().getString(IConstants.MAX_SQL_ROWS));
    maxResultField.setLayoutData(c3Grid);

    limitResults.addMouseListener(new MouseAdapter() {

        // enable/disable input field when checkbox is clicked
        public void mouseUp(MouseEvent e) {

            maxResultField.setEnabled(limitResults.getSelection());
        }
    });

    statusBar.layout();
    return statusBar;
}

From source file:org.eclipse.ui.internal.WorkbenchWindow.java

License:Open Source License

public void run(final boolean fork, boolean cancelable, final IRunnableWithProgress runnable)
        throws InvocationTargetException, InterruptedException {
    final StatusLineManager manager = getStatusLineManager();

    // Temporary Hack for bug 330106, remove when bug 334093 is fixed
    boolean progressHack = manager.getControl() == null;
    if (manager == null || progressHack) {
        runnable.run(new NullProgressMonitor());
    } else {/*from w  ww. j  a  v a2  s . co  m*/
        boolean wasCancelEnabled = manager.isCancelEnabled();
        try {
            manager.setCancelEnabled(cancelable);

            final InvocationTargetException[] ite = new InvocationTargetException[1];
            final InterruptedException[] ie = new InterruptedException[1];

            BusyIndicator.showWhile(getShell().getDisplay(), new Runnable() {
                public void run() {
                    try {
                        ModalContext.run(runnable, fork, manager.getProgressMonitor(), getShell().getDisplay());
                    } catch (InvocationTargetException e) {
                        ite[0] = e;
                    } catch (InterruptedException e) {
                        ie[0] = e;
                    } finally {
                        manager.getProgressMonitor().done();
                    }
                }
            });

            if (ite[0] != null) {
                throw ite[0];
            } else if (ie[0] != null) {
                throw ie[0];
            }
        } finally {
            manager.setCancelEnabled(wasCancelEnabled);
        }
    }
}

From source file:org.talend.sqlbuilder.ui.SQLBuilderEditorComposite.java

License:Open Source License

/**
 * Creates UI for status bar.//from w w  w  .j a va2  s.  co m
 * 
 * @param parent
 */
private void createStatusArea(Composite parent) {
    // create bottom status bar
    Composite statusBar = new Composite(parent, SWT.NULL);

    GridLayout statusBarLayout = new GridLayout();
    statusBarLayout.numColumns = 3;
    statusBarLayout.verticalSpacing = 0;
    statusBarLayout.marginHeight = 0;
    statusBarLayout.marginWidth = 0;
    statusBarLayout.marginTop = 0;
    statusBarLayout.marginBottom = 0;
    statusBarLayout.marginRight = 5;
    statusBarLayout.horizontalSpacing = 5;
    statusBarLayout.verticalSpacing = 0;

    statusBar.setLayout(statusBarLayout);

    GridData statusBarGridData = new GridData(SWT.FILL, SWT.BOTTOM, true, false);
    statusBarGridData.verticalIndent = 0;
    statusBarGridData.horizontalIndent = 0;
    statusBar.setLayoutData(statusBarGridData);

    // add status line manager
    StatusLineManager statusMgr = new StatusLineManager();
    statusMgr.createControl(statusBar);

    GridData c1Grid = new GridData();
    c1Grid.horizontalAlignment = SWT.FILL;
    c1Grid.verticalAlignment = SWT.BOTTOM;
    c1Grid.grabExcessHorizontalSpace = true;
    c1Grid.grabExcessVerticalSpace = false;
    statusMgr.getControl().setLayoutData(c1Grid);

    // add checkbox for limiting results
    GridData c2Grid = new GridData();
    c2Grid.horizontalAlignment = SWT.RIGHT;
    c2Grid.verticalAlignment = SWT.CENTER;
    c2Grid.grabExcessHorizontalSpace = false;
    c2Grid.grabExcessVerticalSpace = false;

    final Button limitResults = new Button(statusBar, SWT.CHECK);

    limitResults.setText(Messages.getString("SQL_Limit_Rows_2")); //$NON-NLS-1$
    limitResults.setSelection(true);
    limitResults.setLayoutData(c2Grid);

    // add input field for result limit
    GridData c3Grid = new GridData();
    c3Grid.horizontalAlignment = SWT.RIGHT;
    c3Grid.verticalAlignment = SWT.CENTER;
    c3Grid.grabExcessHorizontalSpace = false;
    c3Grid.grabExcessVerticalSpace = false;
    c3Grid.widthHint = 30;

    maxResultText = new Text(statusBar, SWT.BORDER | SWT.SINGLE);
    maxResultText.setText(IConstants.MAX_SQL_ROWS);
    maxResultText.setLayoutData(c3Grid);

    limitResults.addMouseListener(new MouseAdapter() {

        // enable/disable input field when checkbox is clicked
        @Override
        public void mouseUp(MouseEvent e) {
            maxResultText.setEnabled(limitResults.getSelection());
            ifLimit = limitResults.getSelection();
        }
    });
}