Merge with HEAD 20031119
diff --git a/bundles/org.eclipse.jface/src/org/eclipse/jface/dialogs/ProgressMonitorDialog.java b/bundles/org.eclipse.jface/src/org/eclipse/jface/dialogs/ProgressMonitorDialog.java
index 5d4dfe8..499b671 100644
--- a/bundles/org.eclipse.jface/src/org/eclipse/jface/dialogs/ProgressMonitorDialog.java
+++ b/bundles/org.eclipse.jface/src/org/eclipse/jface/dialogs/ProgressMonitorDialog.java
@@ -120,7 +120,7 @@
/**
* The cursor used in the cancel button;
*/
- private Cursor arrowCursor;
+ protected Cursor arrowCursor;
/**
* The cursor used in the shell;
@@ -273,23 +273,30 @@
*/
public boolean close() {
if (getNestingDepth() <= 0) {
- if (cancel != null && !cancel.isDisposed()) {
- cancel.setCursor(null);
- }
- Shell shell = getShell();
- if (shell != null && !shell.isDisposed()) {
- shell.setCursor(null);
- }
- if (arrowCursor != null)
- arrowCursor.dispose();
- if (waitCursor != null)
- waitCursor.dispose();
- arrowCursor = null;
- waitCursor = null;
+ clearCursors();
return super.close();
}
return false;
}
+
+/**
+ * Clear the cursors in the dialog.
+ */
+protected void clearCursors() {
+ if (cancel != null && !cancel.isDisposed()) {
+ cancel.setCursor(null);
+ }
+ Shell shell = getShell();
+ if (shell != null && !shell.isDisposed()) {
+ shell.setCursor(null);
+ }
+ if (arrowCursor != null)
+ arrowCursor.dispose();
+ if (waitCursor != null)
+ waitCursor.dispose();
+ arrowCursor = null;
+ waitCursor = null;
+}
/* (non-Javadoc)
* Method declared in Window.
*/
@@ -477,7 +484,7 @@
* @param b <code>true</code> to enable the cancel button,
* and <code>false</code> to disable it
*/
-private void setOperationCancelButtonEnabled(boolean b) {
+protected void setOperationCancelButtonEnabled(boolean b) {
operationCancelableState = b;
cancel.setEnabled(b);
}
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISaveablePart.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISaveablePart.java
index 5af1c7f..847e991 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISaveablePart.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/ISaveablePart.java
@@ -17,10 +17,6 @@
* Workbench parts implement or adapt to this interface to participate
* in the enablement and execution of the <code>Save</code> and
* <code>Save As</code> actions.
- * <p>
- * NOTE: This is experimental API, which may be changed or removed at any point in time.
- * This API should not be called, overridden or otherwise used in production code.
- * </p>
*
* @since 2.1
* @see org.eclipse.ui.IEditorPart
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/PerspectiveMenu.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/PerspectiveMenu.java
index 437769a..f2c2edd 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/PerspectiveMenu.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/actions/PerspectiveMenu.java
@@ -218,7 +218,7 @@
IObjectActivityManager activityManager = window.getWorkbench().getObjectActivityManager(IWorkbenchConstants.PL_PERSPECTIVES, false);
if (activityManager != null) {
// prune all non-active contributions.
- ids.retainAll(activityManager.getActiveObjects());
+ ids.retainAll(activityManager.getEnabledObjects());
}
for (int i = 0; i < ids.size(); i++) {
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IActivity.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IActivity.java
index 07ffe3a..c42d6ad 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IActivity.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IActivity.java
@@ -151,7 +151,7 @@
* if the activity represented by this handle is not defined.
*/
String getParentId() throws NotDefinedException;
-
+
/**
* <p>
* Returns whether or not the activity represented by this handle is
@@ -190,10 +190,9 @@
/**
* TODO javadoc
*
- * @deprecated use isMatch(string)
+ * @deprecated use isMatch(String)
*/
- boolean match(String string);
-
+ boolean match(String string);
/**
* Unregisters an instance of <code>IActivityListener</code> listening
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IActivityManager.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IActivityManager.java
index 64dda6d..98e935b 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IActivityManager.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IActivityManager.java
@@ -133,19 +133,25 @@
/**
* TODO javadoc
*/
- Set getMatches(String string, Set activityIds);
+ Set getMatchingActivityIds(String string, Set activityIds);
/**
* TODO javadoc
*/
+ Set getRequiredActivityIds(Set activityIds);
+
+ /**
+ * TODO javadoc
+ */
boolean isMatch(String string, Set activityIds);
/**
* TODO javadoc
+ *
* @deprecated use isMatch(String, Set);
*/
boolean match(String string, Set activityIds);
-
+
/**
* Unregisters an instance of <code>IActivityManagerListener</code>
* listening for changes to attributes of this instance.
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IObjectActivityManager.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IObjectActivityManager.java
index 27c1b37..00983a3 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IObjectActivityManager.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/activities/IObjectActivityManager.java
@@ -72,15 +72,14 @@
/**
* Adds a binding between object->activity. If the given activity is not
- * defined in the RoleManager registry then no action is taken.
+ * defined in the receivers <code>IActivityManager</code> then no action is taken.
*
* @param record
* the contribution record to bind.
* @param activityId
* the activity ID to bind to.
- * @since 3.0
*/
- public abstract void addActivityBinding(
+ public void addActivityBinding(
IObjectContributionRecord record,
String activityId);
@@ -89,16 +88,15 @@
* reciever only once.
*
* @param pluginId
- * The plugin id
+ * The plugin id.
* @param localId
- * The local id
+ * The local id.
* @param object
- * The object being added
+ * The object being added.
* @return the <code>IObjectContributionRecord</code> that was used as a
* key to store the provided object.
- * @since 3.0
*/
- public abstract IObjectContributionRecord addObject(
+ public IObjectContributionRecord addObject(
String pluginId,
String localId,
Object object);
@@ -106,49 +104,42 @@
/**
* Apply default pattern bindings to all of the objects governed by the
* receiver.
- *
- * @since 3.0
*/
public void applyPatternBindings();
/**
* Apply default pattern bindings based on the provided
- * ObjectContributionRecord that is governed by the receiver.
+ * <code>IObjectContributionRecord</code> that is governed by the receiver.
*
* @param record
- * IObjectContributionRecord
- * @since 3.0
+ * <code>IObjectContributionRecord</code> the record to apply bindings on.
*/
public void applyPatternBindings(IObjectContributionRecord record);
/**
- * Find the IObjectContributionRecords that maps to the given object, or
- * null.
+ * Find the <code>IObjectContributionRecords</code> that maps to the given object.
*
* @param objectOfInterest
* the object to key on.
- * @return a Collection of IObjectContributionRecord objects that bind to
+ * @return a <code>Collection</code> of <code>IObjectContributionRecord</code>s that bind to
* the supplied object. Typically this collection will have either
* 0 or 1 element in it.
- * @since 3.0
*/
public Collection findObjectContributionRecords(Object objectOfInterest);
/**
- * Return a set of objects that are currently valid based on the active
- * activities, or all objects if role filtering is currently disabled.
+ * Return a <code>Set</code> of objects that are currently valid based on the enabled
+ * activities. This <code>Set</code> is read only.
*
- * @return the collection of active objects.
- * @since 3.0
+ * @return the <code>Collection</code> of active objects.
*/
- public abstract Collection getActiveObjects();
+ public Collection getEnabledObjects();
/**
- * Get the Set of IObjectContributionRecord keys from the object store.
- * This Set is read only.
+ * Get the <code>Set<code> of <code>IObjectContributionRecord</code> keys from the object store.
+ * This <code>Set</code> is read only.
*
- * @return the set of keys.
- * @since 3.0
+ * @return the <code>Set</code> of keys.
*/
public Set getObjectIds();
@@ -157,8 +148,7 @@
* record.
*
* @param record
- * IObjectContributionRecord the record of the object to remove.
- * @since 3.0
+ * the <code>IObjectContributionRecord</code> of the object to remove.
*/
public void removeObject(IObjectContributionRecord record);
@@ -167,12 +157,11 @@
* based on key-points in the UI (ie: the New wizard).
*
* @param objectOfInterest
- * the Object to enable or disable.
+ * the object to enable or disable.
* @param enablement
* the enablment state to grant to all matching activities.
- * @since 3.0
*/
- public abstract void setEnablementFor(
+ public void setEnablementFor(
Object objectOfInterest,
boolean enablement);
}
\ No newline at end of file
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PluginActionContributionItem.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PluginActionContributionItem.java
index cb898f9..3346fe8 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PluginActionContributionItem.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/PluginActionContributionItem.java
@@ -103,7 +103,7 @@
if (activityObject == null)
return super.isVisible();
- Collection activeObjects = objectManager.getActiveObjects();
+ Collection activeObjects = objectManager.getEnabledObjects();
// check for visibility only if the active objects contains this object.
if (activeObjects.contains(activityObject)) {
return super.isVisible();
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ShowViewMenu.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ShowViewMenu.java
index af1014e..4cc1bb3 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ShowViewMenu.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/ShowViewMenu.java
@@ -126,7 +126,7 @@
IObjectActivityManager objectManager = window.getWorkbench().getObjectActivityManager(IWorkbenchConstants.PL_VIEWS, false);
if (objectManager != null) {
// prune off all filtered views
- viewIds.retainAll(objectManager.getActiveObjects());
+ viewIds.retainAll(objectManager.getEnabledObjects());
}
// add all open views
viewIds = addOpenedViews(page, viewIds);
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchWindow.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchWindow.java
index d8be952..1456ac3 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchWindow.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/WorkbenchWindow.java
@@ -961,6 +961,7 @@
* flags have been set correctly (e.i. closing and updateDisabled)
*/
private boolean hardClose() {
+ boolean result;
try {
// Clear the action sets, fix for bug 27416.
actionPresentation.clearActionSets();
@@ -969,8 +970,9 @@
getAdvisor().postWindowClose(getWindowConfigurer());
getWorkbenchImpl().fireWindowClosed(this);
} finally {
- return super.close();
+ result = super.close();
}
+ return result;
}
/**
* @see IWorkbenchWindow
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/MutableActivityManager.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/MutableActivityManager.java
index 0457e89..d4d2ccc 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/MutableActivityManager.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/MutableActivityManager.java
@@ -148,6 +148,53 @@
return Collections.unmodifiableSet(enabledCategoryIds);
}
+ public Set getMatchingActivityIds(String string, Set activityIds) {
+ Set matchingActivityIds = new HashSet();
+ activityIds = Util.safeCopy(activityIds, String.class);
+
+ for (Iterator iterator = activityIds.iterator(); iterator.hasNext();) {
+ String activityId = (String) iterator.next();
+ IActivity activity = getActivity(activityId);
+
+ if (activity.isMatch(string))
+ matchingActivityIds.add(activityId);
+ }
+
+ return Collections.unmodifiableSet(matchingActivityIds);
+ }
+
+ public Set getRequiredActivityIds(Set activityIds) {
+ activityIds = Util.safeCopy(activityIds, String.class);
+ Set requiredActivityIds = new HashSet();
+ getRequiredActivityIdsImpl(activityIds, requiredActivityIds);
+ return Collections.unmodifiableSet(requiredActivityIds);
+ }
+
+ private void getRequiredActivityIdsImpl(
+ Set activityIds,
+ Set requiredActivityIds) {
+ for (Iterator iterator = activityIds.iterator(); iterator.hasNext();) {
+ String activityId = (String) iterator.next();
+ IActivity activity = getActivity(activityId);
+ Set childActivityIds = new HashSet();
+ Set activityActivityBindings =
+ activity.getActivityActivityBindings();
+
+ for (Iterator iterator2 = activityActivityBindings.iterator();
+ iterator2.hasNext();
+ ) {
+ IActivityActivityBinding activityActivityBinding =
+ (IActivityActivityBinding) iterator2.next();
+ childActivityIds.add(
+ activityActivityBinding.getChildActivityId());
+ }
+
+ childActivityIds.removeAll(requiredActivityIds);
+ requiredActivityIds.addAll(childActivityIds);
+ getRequiredActivityIdsImpl(childActivityIds, requiredActivityIds);
+ }
+ }
+
public boolean isMatch(String string, Set activityIds) {
activityIds = Util.safeCopy(activityIds, String.class);
@@ -162,25 +209,10 @@
return false;
}
- public Set getMatches(String string, Set activityIds) {
- Set matches = new HashSet();
- activityIds = Util.safeCopy(activityIds, String.class);
-
- for (Iterator iterator = activityIds.iterator(); iterator.hasNext();) {
- String activityId = (String) iterator.next();
- IActivity activity = getActivity(activityId);
-
- if (activity.isMatch(string))
- matches.add(activityId);
- }
-
- return Collections.unmodifiableSet(matches);
- }
-
public boolean match(String string, Set activityIds) {
return isMatch(string, activityIds);
}
-
+
private void notifyActivities(Map activityEventsByActivityId) {
for (Iterator iterator =
activityEventsByActivityId.entrySet().iterator();
@@ -273,8 +305,7 @@
Map.Entry entry = (Map.Entry) iterator.next();
String parentActivityId = (String) entry.getKey();
- if (activityActivityBindingsByParentActivityId
- .containsKey(parentActivityId)) {
+ if (activityDefinitionsById.containsKey(parentActivityId)) {
Collection activityActivityBindingDefinitions =
(Collection) entry.getValue();
@@ -290,7 +321,8 @@
activityActivityBindingDefinition
.getChildActivityId();
- if (childActivityId != null) {
+ if (activityDefinitionsById
+ .containsKey(childActivityId)) {
IActivityActivityBinding activityActivityBinding =
new ActivityActivityBinding(
childActivityId,
@@ -380,7 +412,7 @@
Map.Entry entry = (Map.Entry) iterator.next();
String categoryId = (String) entry.getKey();
- if (categoryActivityBindingsByCategoryId.containsKey(categoryId)) {
+ if (categoryDefinitionsById.containsKey(categoryId)) {
Collection categoryActivityBindingDefinitions =
(Collection) entry.getValue();
@@ -395,7 +427,7 @@
String activityId =
categoryActivityBindingDefinition.getActivityId();
- if (activityId != null) {
+ if (activityDefinitionsById.containsKey(activityId)) {
ICategoryActivityBinding categoryActivityBinding =
new CategoryActivityBinding(
activityId,
@@ -524,12 +556,13 @@
private ActivityEvent updateActivity(Activity activity) {
Set activityActivityBindings =
- (Set) activityActivityBindingsByParentActivityId.get(activity.getId());
+ (Set) activityActivityBindingsByParentActivityId.get(
+ activity.getId());
boolean activityActivityBindingsChanged =
- activity.setActivityActivityBindings(
+ activity.setActivityActivityBindings(
activityActivityBindings != null
- ? activityActivityBindings
- : Collections.EMPTY_SET);
+ ? activityActivityBindings
+ : Collections.EMPTY_SET);
Set activityPatternBindings =
(Set) activityPatternBindingsByActivityId.get(activity.getId());
boolean activityPatternBindingsChanged =
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ObjectActivityManager.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ObjectActivityManager.java
index 68825c9..4fc87fd 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ObjectActivityManager.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ObjectActivityManager.java
@@ -293,7 +293,7 @@
*
* @see org.eclipse.ui.activities.IObjectActivityManager#getActiveObjects()
*/
- public Collection getActiveObjects() {
+ public Collection getEnabledObjects() {
synchronized (activeObjects) {
if (!activityManager.getDefinedCategoryIds().isEmpty()) {
if (dirty) {
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ProxyActivityManager.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ProxyActivityManager.java
index ab3275c..429ec92 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ProxyActivityManager.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/activities/ProxyActivityManager.java
@@ -47,26 +47,34 @@
return activityManager.getActivity(activityId);
}
- public Set getDefinedActivityIds() {
- return activityManager.getDefinedActivityIds();
- }
-
- public Set getEnabledActivityIds() {
- return activityManager.getEnabledActivityIds();
- }
-
public ICategory getCategory(String categoryId) {
return activityManager.getCategory(categoryId);
}
+ public Set getDefinedActivityIds() {
+ return activityManager.getDefinedActivityIds();
+ }
+
public Set getDefinedCategoryIds() {
return activityManager.getDefinedCategoryIds();
}
+ public Set getEnabledActivityIds() {
+ return activityManager.getEnabledActivityIds();
+ }
+
public Set getEnabledCategoryIds() {
return activityManager.getEnabledCategoryIds();
}
+ public Set getMatchingActivityIds(String string, Set activityIds) {
+ return activityManager.getMatchingActivityIds(string, activityIds);
+ }
+
+ public Set getRequiredActivityIds(Set activityIds) {
+ return activityManager.getRequiredActivityIds(activityIds);
+ }
+
public boolean isMatch(String string, Set activityIds) {
return activityManager.isMatch(string, activityIds);
}
@@ -74,8 +82,4 @@
public boolean match(String string, Set activityIds) {
return isMatch(string, activityIds);
}
-
- public Set getMatches(String string, Set activityIds) {
- return activityManager.getMatches(string, activityIds);
- }
}
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PerspContentProvider.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PerspContentProvider.java
index 05ec641..29b368b 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PerspContentProvider.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PerspContentProvider.java
@@ -58,7 +58,7 @@
if (manager == null) {
return descriptors;
}
- Collection activePerspectives = manager.getActiveObjects();
+ Collection activePerspectives = manager.getEnabledObjects();
Collection filtered = new ArrayList();
for (int i = 0; i < descriptors.length; i++) {
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PropertyDialog.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PropertyDialog.java
index b02dafa..c0bf76b 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PropertyDialog.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/PropertyDialog.java
@@ -86,7 +86,7 @@
IWorkbenchConstants.PL_PROPERTY_PAGES,
false);
if (propManager != null) {
- Collection activeContributions = propManager.getActiveObjects();
+ Collection activeContributions = propManager.getEnabledObjects();
if (node instanceof PropertyPageNode
&& !activeContributions.contains(((PropertyPageNode) node).getContributor())) {
return;
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ViewContentProvider.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ViewContentProvider.java
index 7c820f3..2d3d0ea 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ViewContentProvider.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/ViewContentProvider.java
@@ -49,7 +49,7 @@
IWorkbenchConstants.PL_VIEWS, false);
if (objectManager != null) {
ArrayList filtered = new ArrayList();
- Collection activeObjects = objectManager.getActiveObjects();
+ Collection activeObjects = objectManager.getEnabledObjects();
for (int i = 0; i < categories.length; i++) {
if (activeObjects.contains(WorkbenchActivityHelper.createViewCategoryIdKey(categories[i].getId()))) {
filtered.add(categories[i]);
@@ -72,7 +72,7 @@
.getObjectActivityManager(
IWorkbenchConstants.PL_VIEWS, false);
if (objectManager != null) {
- Collection activeObjects = objectManager.getActiveObjects();
+ Collection activeObjects = objectManager.getEnabledObjects();
ArrayList filtered = new ArrayList();
for (Iterator i = list.iterator(); i.hasNext();) {
IViewDescriptor desc = (IViewDescriptor) i.next();
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkbenchPreferenceDialog.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkbenchPreferenceDialog.java
index 3d74989..a75ef27 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkbenchPreferenceDialog.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/dialogs/WorkbenchPreferenceDialog.java
@@ -278,7 +278,7 @@
.getObjectActivityManager(
IWorkbenchConstants.PL_PREFERENCES, false);
if (prefManager != null) {
- Collection activePages = prefManager.getActiveObjects();
+ Collection activePages = prefManager.getEnabledObjects();
if (node instanceof WorkbenchPreferenceNode && !activePages.contains(node)) {
return;
}
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressMonitorJobsDialog.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressMonitorJobsDialog.java
index fce779b..fe66c3b 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressMonitorJobsDialog.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/progress/ProgressMonitorJobsDialog.java
@@ -151,4 +151,30 @@
}
}
+ /* (non-Javadoc)
+ * @see org.eclipse.jface.dialogs.Dialog#createButtonsForButtonBar(org.eclipse.swt.widgets.Composite)
+ */
+ protected void createButtonsForButtonBar(Composite parent) {
+ super.createButtonsForButtonBar(parent);
+ detailsButton.setCursor(arrowCursor);
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.jface.dialogs.ProgressMonitorDialog#clearCursors()
+ */
+ protected void clearCursors() {
+ if (detailsButton != null && !detailsButton.isDisposed()) {
+ detailsButton.setCursor(null);
+ }
+ super.clearCursors();
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.jface.dialogs.ProgressMonitorDialog#setOperationCancelButtonEnabled(boolean)
+ */
+ protected void setOperationCancelButtonEnabled(boolean b) {
+ super.setOperationCancelButtonEnabled(b);
+ detailsButton.setEnabled(b);
+ }
+
}
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/FileEditorMapping.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/FileEditorMapping.java
index 26a6e7f..45e12fe 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/FileEditorMapping.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/internal/registry/FileEditorMapping.java
@@ -274,7 +274,7 @@
if(objectManager == null)
return editors;
ArrayList filtered = new ArrayList(editors);
- filtered.retainAll(objectManager.getActiveObjects());
+ filtered.retainAll(objectManager.getEnabledObjects());
return filtered;
}
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/DeferredTreeContentManager.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/DeferredTreeContentManager.java
index cea57d8..d221b96 100644
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/DeferredTreeContentManager.java
+++ b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/DeferredTreeContentManager.java
@@ -269,16 +269,10 @@
if (!placeholder.isRemoved()) {
Control control = treeViewer.getControl();
- //Workaround for Bug 42175
- TreeItem top = null;
- Tree tree = null;
- if(control instanceof Tree){
- tree = (Tree) control;
- top = tree.getTopItem();
- }
+ if(control.isDisposed())
+ return Status.CANCEL_STATUS;
+
treeViewer.remove(placeholder);
- if(top != null)
- tree.setTopItem(top);
placeholder.setRemoved(true);
}
return Status.OK_STATUS;
diff --git a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/ProgressUtil.java b/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/ProgressUtil.java
deleted file mode 100644
index 216668d..0000000
--- a/bundles/org.eclipse.ui.workbench/Eclipse UI/org/eclipse/ui/progress/ProgressUtil.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/**********************************************************************
- * Copyright (c) 2003 IBM Corporation and others. All rights reserved. This
- * program and the accompanying materials are made available under the terms of
- * the Common Public License v1.0 which accompanies this distribution, and is
- * available at http://www.eclipse.org/legal/cpl-v10.html
- *
- * Contributors:
- * IBM - Initial API and implementation
- **********************************************************************/
-package org.eclipse.ui.progress;
-
-import org.eclipse.ui.IWorkbenchPartSite;
-import org.eclipse.ui.internal.PartSite;
-import org.eclipse.ui.internal.progress.WorkbenchSiteProgressService;
-
-/**
- * The ProgressUtil is a repository for methods that will be replaced by
- * eventual API changes. All methods here are subject to change.
- */
-public class ProgressUtil {
-
- /**
- * Return the progress service for this site if there is on. <b>NOTE:</b>.
- * This is temporary API that will be replaced by
- * IWorkbenchPartSite.getAdapter(IWorkbenchSiteProgressService) when
- * changes can be made to IWorkbenchPartSite.
- *
- * @param site
- * @return
- */
- public IWorkbenchSiteProgressService getProgressService(IWorkbenchPartSite site) {
- if (site instanceof PartSite)
- return new WorkbenchSiteProgressService((PartSite) site);
- else
- return null;
- }
-
-}