diff options
author | spingel | 2009-05-27 00:49:21 +0000 |
---|---|---|
committer | spingel | 2009-05-27 00:49:21 +0000 |
commit | dba1cc100e2b4f713b3ce677ffed26c56276e54b (patch) | |
tree | e1acdd94967875218a94d298474f5db078816881 | |
parent | 79ffd1022519e4f08528d73f34b71489fae33553 (diff) | |
download | org.eclipse.mylyn.tasks-dba1cc100e2b4f713b3ce677ffed26c56276e54b.tar.gz org.eclipse.mylyn.tasks-dba1cc100e2b4f713b3ce677ffed26c56276e54b.tar.xz org.eclipse.mylyn.tasks-dba1cc100e2b4f713b3ce677ffed26c56276e54b.zip |
NEW - bug 277915: submit action should be disabled while a submit is in progress
https://bugs.eclipse.org/bugs/show_bug.cgi?id=277915
4 files changed, 17 insertions, 13 deletions
diff --git a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/wizards/SelectRepositoryConnectorPage.java b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/wizards/SelectRepositoryConnectorPage.java index 2f2893021..27ac2e19d 100644 --- a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/wizards/SelectRepositoryConnectorPage.java +++ b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/internal/tasks/ui/wizards/SelectRepositoryConnectorPage.java @@ -128,31 +128,25 @@ public class SelectRepositoryConnectorPage extends WizardPage { final Command discoveryWizardCommand = service.getCommand("org.eclipse.mylyn.discovery.ui.discoveryWizardCommand"); //$NON-NLS-1$ if (discoveryWizardCommand != null) { // update enabled state in case something has changed (ProxyHandler caches state) - // XXX remove reflection when we no longer support 3.3 + // TODO e3.3 remove reflection try { Command.class.getDeclaredMethod("setEnabled", Object.class).invoke(discoveryWizardCommand, //$NON-NLS-1$ createEvaluationContext(handlerService)); - } catch (InvocationTargetException e1) { - Throwable cause = e1.getCause(); - StatusHandler.log(new Status(IStatus.ERROR, TasksUiPlugin.ID_PLUGIN, "unexpected exception", cause)); //$NON-NLS-1$ - } catch (Exception e1) { + } catch (InvocationTargetException e) { + StatusHandler.log(new Status(IStatus.ERROR, TasksUiPlugin.ID_PLUGIN, + "Failed to enable discovery command", e)); //$NON-NLS-1$ + } catch (Exception e) { // expected on Eclipse 3.3 } if (discoveryWizardCommand.isEnabled()) { Button discoveryButton = new Button(container, SWT.PUSH); GridDataFactory.swtDefaults().align(SWT.BEGINNING, SWT.CENTER).applyTo(discoveryButton); - discoveryButton.setText(Messages.SelectRepositoryConnectorPage_activateDiscovery); discoveryButton.setImage(CommonImages.getImage(CommonImages.DISCOVERY)); discoveryButton.addSelectionListener(new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent event) { - widgetDefaultSelected(event); - } - - @Override - public void widgetDefaultSelected(SelectionEvent event) { IHandlerService handlerService = (IHandlerService) PlatformUI.getWorkbench().getService( IHandlerService.class); try { diff --git a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasks/ui/editors/AbstractTaskEditorPage.java b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasks/ui/editors/AbstractTaskEditorPage.java index 277101151..be806fb65 100644 --- a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasks/ui/editors/AbstractTaskEditorPage.java +++ b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasks/ui/editors/AbstractTaskEditorPage.java @@ -47,7 +47,6 @@ import org.eclipse.jface.viewers.StructuredSelection; import org.eclipse.jface.window.Window; import org.eclipse.mylyn.commons.core.StatusHandler; import org.eclipse.mylyn.internal.provisional.commons.ui.CommonFormUtil; -import org.eclipse.mylyn.internal.provisional.commons.ui.CommonImages; import org.eclipse.mylyn.internal.provisional.commons.ui.CommonTextSupport; import org.eclipse.mylyn.internal.provisional.commons.ui.CommonUiUtil; import org.eclipse.mylyn.internal.provisional.commons.ui.GradientCanvas; @@ -111,6 +110,7 @@ import org.eclipse.swt.events.FocusAdapter; import org.eclipse.swt.events.FocusEvent; import org.eclipse.swt.events.FocusListener; import org.eclipse.swt.graphics.Color; +import org.eclipse.swt.graphics.Image; import org.eclipse.swt.graphics.Point; import org.eclipse.swt.graphics.Rectangle; import org.eclipse.swt.layout.GridData; @@ -1422,6 +1422,7 @@ public abstract class AbstractTaskEditorPage extends TaskFormPage implements ISe public void showEditorBusy(boolean busy) { getTaskEditor().showBusy(busy); refreshDisabled = busy; + setSubmitEnabled(!busy); } private void updateHeaderMessage() { @@ -1527,7 +1528,7 @@ public abstract class AbstractTaskEditorPage extends TaskFormPage implements ISe @Override protected Control createControl(Composite parent) { submitButton = toolkit.createButton(parent, Messages.TaskEditorActionPart_Submit, SWT.NONE); - submitButton.setImage(CommonImages.getImage(TasksUiImages.REPOSITORY_SUBMIT)); + submitButton.setImage(TasksUiPlugin.getDefault().getBrandingIcon(getConnectorKind()));//CommonImages.getImage(TasksUiImages.REPOSITORY_SUBMIT)); submitButton.setBackground(null); submitButton.addListener(SWT.Selection, new Listener() { public void handleEvent(Event e) { diff --git a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasks/ui/editors/TaskEditor.java b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasks/ui/editors/TaskEditor.java index 3001aa959..3996ed3a5 100644 --- a/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasks/ui/editors/TaskEditor.java +++ b/org.eclipse.mylyn.tasks.ui/src/org/eclipse/mylyn/tasks/ui/editors/TaskEditor.java @@ -222,6 +222,10 @@ public class TaskEditor extends SharedHeaderFormEditor { // bottom align tool bar in title region Point size = leftToolBar.computeSize(SWT.DEFAULT, SWT.DEFAULT, false); int y = leftToolBar.getParent().getSize().y - size.y - 2; + if (!hasLeftToolBar()) { + // hide tool bar to avoid overlaying busyLabel on windows + size.x = 0; + } leftToolBar.setBounds(busyLabel.getLocation().x, y, size.x, size.y); } } @@ -691,6 +695,10 @@ public class TaskEditor extends SharedHeaderFormEditor { } } + if (leftToolBar != null) { + leftToolBar.setEnabled(!busy); + } + CommonUiUtil.setEnabled(form.getBody(), !busy); for (IFormPage page : getPages()) { if (page instanceof WorkbenchPart) { diff --git a/org.eclipse.mylyn.trac.ui/src/org/eclipse/mylyn/internal/trac/ui/editor/TracTaskEditorPage.java b/org.eclipse.mylyn.trac.ui/src/org/eclipse/mylyn/internal/trac/ui/editor/TracTaskEditorPage.java index d9e1c9a05..3233f098f 100644 --- a/org.eclipse.mylyn.trac.ui/src/org/eclipse/mylyn/internal/trac/ui/editor/TracTaskEditorPage.java +++ b/org.eclipse.mylyn.trac.ui/src/org/eclipse/mylyn/internal/trac/ui/editor/TracTaskEditorPage.java @@ -33,6 +33,7 @@ public class TracTaskEditorPage extends AbstractTaskEditorPage { public TracTaskEditorPage(TaskEditor editor) { super(editor, TracCorePlugin.CONNECTOR_KIND); + setNeedsSubmitButton(true); } @Override |