use of org.eclipse.ui.progress.UIJob in project flux by eclipse.
the class AuthFailureReporter method newValue.
@Override
public void newValue(Observable<ConnectionStatus> o, ConnectionStatus v) {
if (v.isAuthFailure()) {
UIJob job = new UIJob("Flux Error Reporter") {
@Override
public IStatus runInUIThread(IProgressMonitor monitor) {
MessageDialog.openError(null, "Flux Connection Failed", "Flux Web Socket handshake failed. Most likely this means " + "your Flux credentials are invalid.");
return Status.OK_STATUS;
}
};
job.schedule();
//We only report this error once.
// since this error is all we handle... there's no point to continue listening
} else if (v.isConnected()) {
//This means credentials must be valid and this listener now useless.
dispose();
}
}
use of org.eclipse.ui.progress.UIJob in project dbeaver by serge-rider.
the class ProgressPageControl method createSearchControls.
private void createSearchControls() {
if (searchText != null) {
return;
}
hideControls(false);
((GridLayout) searchControlsComposite.getLayout()).numColumns = 2;
searchText = new Text(searchControlsComposite, SWT.BORDER);
UIUtils.addFocusTracker(DBeaverUI.getActiveWorkbenchWindow(), UIUtils.INLINE_WIDGET_EDITOR_ID, this.searchText);
if (curSearchText != null) {
searchText.setText(curSearchText);
searchText.setSelection(curSearchText.length());
}
//searchText.setBackground(searchNotFoundColor);
searchText.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
searchText.addKeyListener(new KeyAdapter() {
@Override
public void keyPressed(KeyEvent e) {
switch(e.keyCode) {
case SWT.ESC:
cancelSearch(true);
break;
case SWT.CR:
case SWT.ARROW_UP:
case SWT.ARROW_DOWN:
if (childPageControl != null) {
childPageControl.setFocus();
}
e.doit = false;
//performSearch(SearchType.NEXT);
break;
}
}
});
searchText.addModifyListener(new ModifyListener() {
@Override
public void modifyText(ModifyEvent e) {
curSearchText = searchText.getText();
if (curSearchJob == null) {
curSearchJob = new UIJob(CoreMessages.controls_progress_page_job_search) {
@Override
public IStatus runInUIThread(IProgressMonitor monitor) {
if (monitor.isCanceled()) {
return Status.CANCEL_STATUS;
}
performSearch(SearchType.NEXT);
curSearchJob = null;
return Status.OK_STATUS;
}
};
curSearchJob.schedule(200);
}
}
});
//ToolBar searchTools = new ToolBar(searchControlsComposite, SWT.HORIZONTAL);
if (searchToolbarManager == null) {
searchToolbarManager = new ToolBarManager(SWT.FLAT | SWT.HORIZONTAL);
// Do not add prev/next buttons - they doesn't make sense now.
// Keep code just in case
/*
searchToolbarManager.add(ActionUtils.makeCommandContribution(
PlatformUI.getWorkbench(),
IWorkbenchActionDefinitionIds.FIND_NEXT,
null,
UIIcon.ARROW_DOWN));
searchToolbarManager.add(ActionUtils.makeCommandContribution(
PlatformUI.getWorkbench(),
IWorkbenchActionDefinitionIds.FIND_PREVIOUS,
null,
UIIcon.ARROW_UP));
*/
searchToolbarManager.add(new Action(CoreMessages.controls_progress_page_action_close, UIUtils.getShardImageDescriptor(ISharedImages.IMG_ELCL_REMOVE)) {
@Override
public void run() {
cancelSearch(true);
}
});
}
searchToolbarManager.createControl(searchControlsComposite);
searchControlsComposite.getParent().layout();
}
use of org.eclipse.ui.progress.UIJob in project dbeaver by serge-rider.
the class ScriptPositionColumn method columnCreated.
@Override
public void columnCreated() {
visible = true;
new UIJob("Update script ruler") {
{
setSystem(true);
}
@Override
public IStatus runInUIThread(IProgressMonitor monitor) {
if (DBeaverCore.isClosing()) {
return Status.CANCEL_STATUS;
}
BaseTextEditor editor = (BaseTextEditor) getEditor();
if (editor == null || editor.getTextViewer() == null)
return Status.CANCEL_STATUS;
StyledText textWidget = editor.getTextViewer().getTextWidget();
if (textWidget == null || textWidget.isDisposed())
return Status.CANCEL_STATUS;
if (textWidget.isVisible()) {
int[] newCurrentLines = editor.getCurrentLines();
if (!Arrays.equals(newCurrentLines, currentLines)) {
currentLines = newCurrentLines;
redraw();
}
}
if (visible) {
schedule(100);
}
return Status.OK_STATUS;
}
}.schedule(100);
}
use of org.eclipse.ui.progress.UIJob in project translationstudio8 by heartsome.
the class BrowserViewPart method createBrowserArea.
private Composite createBrowserArea(Composite parent) {
GridLayout gridLayout = new GridLayout(1, false);
parent.setLayout(gridLayout);
GridData gd_displayArea = new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1);
parent.setLayoutData(gd_displayArea);
tabFolder = new CTabFolder(parent, SWT.TOP | SWT.MULTI | SWT.FLAT);
tabFolder.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
UIJob job = new UIJob(Display.getDefault(), "refresh browser") {
@Override
public IStatus runInUIThread(IProgressMonitor monitor) {
refreshTabContent();
return Status.OK_STATUS;
}
/** (non-Javadoc)
* @see org.eclipse.core.runtime.jobs.Job#shouldRun()
*/
@Override
public boolean shouldRun() {
return !tabFolder.isDisposed();
}
};
job.schedule();
return parent;
}
use of org.eclipse.ui.progress.UIJob in project cubrid-manager by CUBRID.
the class QueryEditorPart method setQuery.
/**
* Set and run query
*
* @param query
* @param isAppend
* @param isRun
* @param isOnlyQueryPlan
*/
public void setQuery(final String query, final boolean isAppend, final boolean isRun, final boolean isOnlyQueryPlan) {
/* Update queries in the UI JOB */
UIJob job = new UIJob(Messages.settingQueries) {
public IStatus runInUIThread(IProgressMonitor monitor) {
if (isAvilableEditor()) {
if (isAppend) {
combinedQueryComposite.getSqlEditorComp().getText().append(query);
combinedQueryComposite.getSqlEditorComp().gotoButtom();
} else {
combinedQueryComposite.getSqlEditorComp().setQueries(query);
}
if (isRun) {
runQuery(false);
} else if (isOnlyQueryPlan) {
runQuery(true);
}
}
return Status.OK_STATUS;
}
};
job.setPriority(UIJob.SHORT);
job.schedule();
}
Aggregations