List of usage examples for org.eclipse.jface.action StatusLineManager getControl
public Control getControl()
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(); } }); }