Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJean Michel-Lemieux2004-03-09 20:51:17 +0000
committerJean Michel-Lemieux2004-03-09 20:51:17 +0000
commit70d8db4a04629905c0aefa376adfc27566b12c73 (patch)
tree99abba1031918f6e868a7a1ad3e7faed7abce295 /bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui
parentb1c14fbe58367c34bf6eef789f77edca3623f574 (diff)
downloadeclipse.platform.team-70d8db4a04629905c0aefa376adfc27566b12c73.tar.gz
eclipse.platform.team-70d8db4a04629905c0aefa376adfc27566b12c73.tar.xz
eclipse.platform.team-70d8db4a04629905c0aefa376adfc27566b12c73.zip
Added several things:
- a global action to refresh - a compare dialog framework that will allow you to show compare input in a dialog and support saving
Diffstat (limited to 'bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui')
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSCompareRevisionsInput.java142
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSUIPlugin.java50
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/ICVSUIConstants.java3
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/CompareWithRemoteAction.java65
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/CompareWithRevisionAction.java32
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/CompareWithTagAction.java27
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/ReplaceWithRevisionAction.java79
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/SyncAction.java6
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/merge/MergeWizard.java49
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/messages.properties2
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/operations/ReconcileProjectOperation.java13
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/ChangeLogModelProvider.java1
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/CompareParticipant.java4
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/CompareParticipantPage.java2
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/MergeSynchronizeParticipant.java11
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/WorkspaceSynchronizeParticipant.java4
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/wizards/SharingWizard.java5
17 files changed, 309 insertions, 186 deletions
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSCompareRevisionsInput.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSCompareRevisionsInput.java
index 915bf0b16..1dbaef57a 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSCompareRevisionsInput.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSCompareRevisionsInput.java
@@ -27,13 +27,12 @@ import org.eclipse.jface.viewers.*;
import org.eclipse.swt.widgets.*;
import org.eclipse.team.core.RepositoryProvider;
import org.eclipse.team.core.TeamException;
-import org.eclipse.team.core.variants.IResourceVariant;
import org.eclipse.team.internal.ccvs.core.*;
import org.eclipse.team.internal.ccvs.core.client.Command;
import org.eclipse.team.internal.ccvs.core.client.Update;
import org.eclipse.team.internal.ccvs.core.resources.CVSWorkspaceRoot;
import org.eclipse.team.internal.ccvs.ui.actions.CVSAction;
-import org.eclipse.team.internal.ccvs.ui.actions.ShowAnnotationAction;
+import org.eclipse.team.internal.ui.Utils;
import org.eclipse.ui.actions.WorkspaceModifyOperation;
import org.eclipse.ui.help.WorkbenchHelp;
@@ -41,13 +40,16 @@ public class CVSCompareRevisionsInput extends CompareEditorInput {
IFile resource;
ILogEntry[] editions;
TableViewer viewer;
- Action getContentsAction;
- Action getRevisionAction;
- Action getAnnotateAction;
+ Action getRevisionAction;
Shell shell;
+ // Provide the widget for the history table
private HistoryTableProvider historyTableProvider;
+ /**
+ * Provide a wrapper for a resource node that doesn't buffer. Changes are saved directly to the
+ * underlying file.
+ */
class TypedBufferedContent extends ResourceNode {
public TypedBufferedContent(IFile resource) {
super(resource);
@@ -88,6 +90,9 @@ public class CVSCompareRevisionsInput extends CompareEditorInput {
public ITypedElement replace(ITypedElement child, ITypedElement other) {
return null;
}
+ public void fireChange() {
+ fireContentChanged();
+ }
}
/**
@@ -121,6 +126,7 @@ public class CVSCompareRevisionsInput extends CompareEditorInput {
return super.getName();
}
};
+
/**
* A compare node that gets its label from the right element
*/
@@ -137,7 +143,9 @@ public class CVSCompareRevisionsInput extends CompareEditorInput {
}
return null;
}
-
+ public void fireContentChanges() {
+ fireChange();
+ }
};
/**
* A content provider which knows how to get the children of the diff container
@@ -167,7 +175,7 @@ public class CVSCompareRevisionsInput extends CompareEditorInput {
this.shell = parent.getShell();
viewer = getHistoryTableProvider().createTable(parent);
Table table = viewer.getTable();
- table.setData(CompareUI.COMPARE_VIEWER_TITLE, Policy.bind("CVSCompareRevisionsInput.structureCompare")); //$NON-NLS-1$
+ table.setData(CompareUI.COMPARE_VIEWER_TITLE, getTitle()); //$NON-NLS-1$
viewer.setContentProvider(new VersionCompareContentProvider());
@@ -176,9 +184,7 @@ public class CVSCompareRevisionsInput extends CompareEditorInput {
mm.addMenuListener(
new IMenuListener() {
public void menuAboutToShow(IMenuManager mm) {
- mm.add(getContentsAction);
mm.add(getRevisionAction);
- mm.add(getAnnotateAction);
}
}
);
@@ -187,103 +193,30 @@ public class CVSCompareRevisionsInput extends CompareEditorInput {
public void selectionChanged(SelectionChangedEvent event) {
ISelection selection = event.getSelection();
if (!(selection instanceof IStructuredSelection)) {
- getContentsAction.setEnabled(false);
getRevisionAction.setEnabled(false);
- getAnnotateAction.setEnabled(false);
return;
}
IStructuredSelection ss = (IStructuredSelection)selection;
- getContentsAction.setEnabled(ss.size() == 1);
getRevisionAction.setEnabled(ss.size() == 1);
- getAnnotateAction.setEnabled(ss.size() == 1);
}
});
// Add F1 help.
WorkbenchHelp.setHelp(table, IHelpContextIds.COMPARE_REVISIONS_VIEW);
- WorkbenchHelp.setHelp(getContentsAction, IHelpContextIds.GET_FILE_CONTENTS_ACTION);
- WorkbenchHelp.setHelp(getRevisionAction, IHelpContextIds.GET_FILE_REVISION_ACTION);
- WorkbenchHelp.setHelp(getAnnotateAction, IHelpContextIds.GET_ANNOTATE_ACTION);
-
return viewer;
}
-
+
private void initLabels() {
CompareConfiguration cc = (CompareConfiguration)getCompareConfiguration();
- String resourceName = resource.getName();
-// if (editions[0].isTeamStreamResource()) {
-// setTitle(Policy.bind("CompareResourceEditorInput.compareResourceAndStream", new Object[] {resourceName, editions[0].getTeamStream().getName()}));
-// } else {
-// setTitle(Policy.bind("CompareResourceEditorInput.compareResourceAndVersions", new Object[] {resourceName}));
-// }
- setTitle(Policy.bind("CVSCompareRevisionsInput.compareResourceAndVersions", new Object[] {resourceName})); //$NON-NLS-1$
cc.setLeftEditable(true);
cc.setRightEditable(false);
-
+ String resourceName = resource.getName();
String leftLabel = Policy.bind("CVSCompareRevisionsInput.workspace", new Object[] {resourceName}); //$NON-NLS-1$
cc.setLeftLabel(leftLabel);
String rightLabel = Policy.bind("CVSCompareRevisionsInput.repository", new Object[] {resourceName}); //$NON-NLS-1$
cc.setRightLabel(rightLabel);
}
- private void initializeActions() {
-
- getAnnotateAction = new Action(Policy.bind("HistoryView.getAnnotateAction"), null) { //$NON-NLS-1$
- public void run() {
- try {
- IStructuredSelection selection = (IStructuredSelection)viewer.getSelection();
- if (selection.size() != 1) return;
- VersionCompareDiffNode node = (VersionCompareDiffNode)selection.getFirstElement();
- ResourceEditionNode right = (ResourceEditionNode)node.getRight();
- ICVSRemoteResource edition = right.getRemoteResource();
- ShowAnnotationAction annotateAction = new ShowAnnotationAction();
- annotateAction.execute(edition);
-
- } catch (InterruptedException e) {
- // Do nothing
- return;
- } catch (InvocationTargetException e) {
- handle(e);
- }
- }
- };
-
- getContentsAction = new Action(Policy.bind("HistoryView.getContentsAction"), null) { //$NON-NLS-1$
- public void run() {
- try {
- new ProgressMonitorDialog(shell).run(false, true, new WorkspaceModifyOperation() {
- protected void execute(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException {
- IStructuredSelection selection = (IStructuredSelection)viewer.getSelection();
- if (selection.size() != 1) return;
- VersionCompareDiffNode node = (VersionCompareDiffNode)selection.getFirstElement();
- ResourceEditionNode right = (ResourceEditionNode)node.getRight();
- IResourceVariant edition = (IResourceVariant)right.getRemoteResource();
- // Do the load. This just consists of setting the local contents. We don't
- // actually want to change the base.
- try {
- monitor.beginTask(null, 100);
- InputStream in = edition.getStorage(new SubProgressMonitor(monitor, 50)).getContents();
- resource.setContents(in, false, true, new SubProgressMonitor(monitor, 50));
- } catch (TeamException e) {
- throw new InvocationTargetException(e);
- } catch (CoreException e) {
- throw new InvocationTargetException(e);
- } finally {
- monitor.done();
- }
- }
- });
- } catch (InterruptedException e) {
- // Do nothing
- return;
- } catch (InvocationTargetException e) {
- handle(e);
- }
- // recompute the labels on the viewer
- updateCurrentEdition();
- viewer.refresh();
- }
- };
-
+ private void initializeActions() {
getRevisionAction = new Action(Policy.bind("HistoryView.getRevisionAction"), null) { //$NON-NLS-1$
public void run() {
try {
@@ -315,6 +248,12 @@ public class CVSCompareRevisionsInput extends CompareEditorInput {
} catch (InvocationTargetException e) {
handle(e);
}
+ // fire change
+ IStructuredSelection selection = (IStructuredSelection)viewer.getSelection();
+ if (selection.size() != 1) return;
+ VersionCompareDiffNode node = (VersionCompareDiffNode)selection.getFirstElement();
+ TypedBufferedContent left = (TypedBufferedContent)node.getLeft();
+ left.fireChange();
// recompute the labels on the viewer
viewer.refresh();
}
@@ -323,8 +262,8 @@ public class CVSCompareRevisionsInput extends CompareEditorInput {
protected Object prepareInput(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException {
initLabels();
DiffNode diffRoot = new DiffNode(Differencer.NO_CHANGE);
+ ITypedElement left = new TypedBufferedContent(resource);
for (int i = 0; i < editions.length; i++) {
- ITypedElement left = new TypedBufferedContent(resource);
ITypedElement right = new ResourceRevisionNode(editions[i]);
diffRoot.add(new VersionCompareDiffNode(left, right));
}
@@ -350,5 +289,34 @@ public class CVSCompareRevisionsInput extends CompareEditorInput {
}
return historyTableProvider;
}
-
+
+
+ /* (non-Javadoc)
+ * @see org.eclipse.compare.CompareEditorInput#saveChanges(org.eclipse.core.runtime.IProgressMonitor)
+ */
+ public void saveChanges(IProgressMonitor pm) throws CoreException {
+ super.saveChanges(pm);
+ }
+
+ public void replaceLocalWithCurrentlySelectedRevision() throws CoreException {
+ IStructuredSelection selection = (IStructuredSelection)viewer.getSelection();
+ if (selection.size() != 1) return;
+ VersionCompareDiffNode node = (VersionCompareDiffNode)selection.getFirstElement();
+ ResourceRevisionNode right = (ResourceRevisionNode)node.getRight();
+ TypedBufferedContent left = (TypedBufferedContent)node.getLeft();
+ left.setContent(Utils.readBytes(right.getContents()));
+ }
+
+ public Viewer getViewer() {
+ return viewer;
+ }
+
+
+ /* (non-Javadoc)
+ * @see org.eclipse.compare.CompareEditorInput#getTitle()
+ */
+ public String getTitle() {
+ String resourceName = resource.getName();
+ return Policy.bind("CVSCompareRevisionsInput.compareResourceAndVersions", new Object[] {resourceName}); //$NON-NLS-1$
+ }
}
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSUIPlugin.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSUIPlugin.java
index 7635e7a79..4205d12c1 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSUIPlugin.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSUIPlugin.java
@@ -14,20 +14,11 @@ package org.eclipse.team.internal.ccvs.ui;
import java.lang.reflect.InvocationTargetException;
import java.net.MalformedURLException;
import java.net.URL;
-import java.util.ArrayList;
-import java.util.Hashtable;
-import java.util.Iterator;
-import java.util.List;
+import java.util.*;
import org.eclipse.core.resources.IResource;
import org.eclipse.core.resources.IResourceStatus;
-import org.eclipse.core.runtime.CoreException;
-import org.eclipse.core.runtime.IPluginDescriptor;
-import org.eclipse.core.runtime.IProgressMonitor;
-import org.eclipse.core.runtime.IStatus;
-import org.eclipse.core.runtime.Platform;
-import org.eclipse.core.runtime.Preferences;
-import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.*;
import org.eclipse.jface.dialogs.ErrorDialog;
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.operation.IRunnableWithProgress;
@@ -40,11 +31,7 @@ import org.eclipse.swt.graphics.RGB;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.team.core.TeamException;
-import org.eclipse.team.internal.ccvs.core.CVSProviderPlugin;
-import org.eclipse.team.internal.ccvs.core.CVSStatus;
-import org.eclipse.team.internal.ccvs.core.ICVSRemoteFile;
-import org.eclipse.team.internal.ccvs.core.ICVSRemoteFolder;
-import org.eclipse.team.internal.ccvs.core.ICVSRepositoryLocation;
+import org.eclipse.team.internal.ccvs.core.*;
import org.eclipse.team.internal.ccvs.core.client.Command.KSubstOption;
import org.eclipse.team.internal.ccvs.ui.console.CVSOutputConsole;
import org.eclipse.team.internal.ccvs.ui.model.CVSAdapterFactory;
@@ -56,10 +43,7 @@ import org.eclipse.team.internal.ui.Utils;
import org.eclipse.team.ui.TeamUI;
import org.eclipse.team.ui.synchronize.ISynchronizeParticipant;
import org.eclipse.team.ui.synchronize.ISynchronizeView;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.IWorkingSet;
-import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.*;
import org.eclipse.ui.console.ConsolePlugin;
import org.eclipse.ui.console.IConsole;
import org.eclipse.ui.plugin.AbstractUIPlugin;
@@ -624,6 +608,7 @@ public class CVSUIPlugin extends AbstractUIPlugin {
store.setDefault(ICVSUIConstants.PREF_DETERMINE_SERVER_VERSION, true);
store.setDefault(ICVSUIConstants.PREF_CONFIRM_MOVE_TAG, CVSProviderPlugin.DEFAULT_CONFIRM_MOVE_TAG);
store.setDefault(ICVSUIConstants.PREF_DEBUG_PROTOCOL, false);
+ store.setDefault(ICVSUIConstants.PREF_WARN_REMEMBERING_MERGES, true);
PreferenceConverter.setDefault(store, ICVSUIConstants.PREF_CONSOLE_COMMAND_COLOR, new RGB(0, 0, 0));
PreferenceConverter.setDefault(store, ICVSUIConstants.PREF_CONSOLE_MESSAGE_COLOR, new RGB(0, 0, 255));
@@ -737,29 +722,4 @@ public class CVSUIPlugin extends AbstractUIPlugin {
return null;
}
}
-
- /**
- * This is a convenience method to show the CVS workspace subscriber in the sync view.
- * The working set of the workspace participant will be set to the provided working set
- * and the provided resources will be refreshed.
- * @param shell shell used to display errors (can be <code>null</code>)
- * @param resources the resources to be refreshed (can be <code>null</code>)
- * @param workingSet the working set to be assigned to the participant (can be <code>null</code>)
- * @param mode the mode to place the participant in (can be 0)
- */
- public static void showInSyncView(Shell shell, IResource[] resources, int mode) {
- ISynchronizeView view = TeamUI.getSynchronizeManager().showSynchronizeViewInActivePage(null);
- if(view != null) {
- WorkspaceSynchronizeParticipant cvsPage = CVSUIPlugin.getPlugin().getCvsWorkspaceSynchronizeParticipant();
- view.display(cvsPage);
- if (resources != null) {
- cvsPage.refreshWithRemote(resources, false);
- }
- if (mode != 0) {
- cvsPage.setMode(mode);
- }
- } else {
- CVSUIPlugin.openError(shell, Policy.bind("error"), Policy.bind("Error.unableToShowSyncView"), null); //$NON-NLS-1$ //$NON-NLS-2$
- }
- }
} \ No newline at end of file
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/ICVSUIConstants.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/ICVSUIConstants.java
index 496ad351c..d9b445ba0 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/ICVSUIConstants.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/ICVSUIConstants.java
@@ -78,6 +78,8 @@ public interface ICVSUIConstants {
public final String PREF_DETERMINE_SERVER_VERSION = "pref_determine_server_version"; //$NON-NLS-1$
public final String PREF_CONFIRM_MOVE_TAG = "pref_confirm_move_tag"; //$NON-NLS-1$
public final String PREF_DEBUG_PROTOCOL = "pref_debug_protocol"; //$NON-NLS-1$
+ public final String PREF_WARN_REMEMBERING_MERGES = "pref_remember_merges"; //$NON-NLS-1$
+ public final String PREF_FIRST_STARTUP = "pref_first_startup"; //$NON-NLS-1$
// console preferences
public final String PREF_CONSOLE_COMMAND_COLOR = "pref_console_command_color"; //$NON-NLS-1$
@@ -89,7 +91,6 @@ public interface ICVSUIConstants {
// decorator preferences
- public final String PREF_FIRST_STARTUP = "pref_first_startup"; //$NON-NLS-1$
public final String PREF_FILETEXT_DECORATION = "pref_filetext_decoration"; //$NON-NLS-1$
public final String PREF_FOLDERTEXT_DECORATION = "pref_foldertext_decoration"; //$NON-NLS-1$
public final String PREF_PROJECTTEXT_DECORATION = "pref_projecttext_decoration"; //$NON-NLS-1$
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/CompareWithRemoteAction.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/CompareWithRemoteAction.java
new file mode 100644
index 000000000..f36c5a974
--- /dev/null
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/CompareWithRemoteAction.java
@@ -0,0 +1,65 @@
+/*******************************************************************************
+ * Copyright (c) 2000, 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 Corporation - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.team.internal.ccvs.ui.actions;
+
+import java.lang.reflect.InvocationTargetException;
+
+import org.eclipse.core.resources.IResource;
+import org.eclipse.jface.action.IAction;
+import org.eclipse.team.internal.ccvs.core.CVSException;
+import org.eclipse.team.internal.ccvs.core.ICVSResource;
+import org.eclipse.team.internal.ccvs.ui.CVSUIPlugin;
+import org.eclipse.team.internal.ccvs.ui.subscriber.WorkspaceSynchronizeParticipant;
+import org.eclipse.team.ui.synchronize.subscriber.SubscriberParticipantDialog;
+
+/**
+ * This action shows the CVS workspace participant into a model dialog. For single file
+ * selection, the compare editor is shown instead.
+ *
+ * @since 3.0
+ */
+public class CompareWithRemoteAction extends WorkspaceAction {
+
+ public void execute(IAction action) throws InvocationTargetException, InterruptedException {
+ final IResource[] resources = getSelectedResources();
+
+ // Show the 3-way comparison in a model dialog
+ WorkspaceSynchronizeParticipant participant = CVSUIPlugin.getPlugin().getCvsWorkspaceSynchronizeParticipant();
+ SubscriberParticipantDialog openCompare = new SubscriberParticipantDialog(getShell(), participant.getId(), participant, resources);
+ openCompare.setRememberInSyncView(false);
+ openCompare.run();
+ }
+
+ /*
+ * Update the text label for the action based on the tags in the selection.
+ * @see TeamAction#setActionEnablement(org.eclipse.jface.action.IAction)
+ */
+ protected void setActionEnablement(IAction action) {
+ super.setActionEnablement(action);
+ action.setText(calculateActionTagValue());
+ }
+
+ /**
+ * Enable for resources that are managed (using super) or whose parent is a CVS folder.
+ *
+ * @see org.eclipse.team.internal.ccvs.ui.actions.WorkspaceAction#isEnabledForCVSResource(org.eclipse.team.internal.ccvs.core.ICVSResource)
+ */
+ protected boolean isEnabledForCVSResource(ICVSResource cvsResource) throws CVSException {
+ return super.isEnabledForCVSResource(cvsResource) || cvsResource.getParent().isCVSFolder();
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.team.internal.ccvs.ui.actions.WorkspaceAction#isEnabledForNonExistantResources()
+ */
+ protected boolean isEnabledForNonExistantResources() {
+ return true;
+ }
+}
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/CompareWithRevisionAction.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/CompareWithRevisionAction.java
index b41b7886f..dd474d785 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/CompareWithRevisionAction.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/CompareWithRevisionAction.java
@@ -16,9 +16,11 @@ import org.eclipse.compare.CompareUI;
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IResource;
import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.jface.action.IAction;
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.operation.IRunnableWithProgress;
+import org.eclipse.swt.widgets.Shell;
import org.eclipse.team.core.TeamException;
import org.eclipse.team.internal.ccvs.core.CVSException;
import org.eclipse.team.internal.ccvs.core.ICVSRemoteFile;
@@ -27,7 +29,12 @@ import org.eclipse.team.internal.ccvs.core.ILogEntry;
import org.eclipse.team.internal.ccvs.core.resources.CVSWorkspaceRoot;
import org.eclipse.team.internal.ccvs.ui.CVSCompareRevisionsInput;
import org.eclipse.team.internal.ccvs.ui.Policy;
+import org.eclipse.team.ui.synchronize.viewers.SynchronizeDialog;
+/**
+ * Compare with revision will allow a user to browse the history of a file, compare with the
+ * other revisions and merge changes from other revisions into the workspace copy.
+ */
public class CompareWithRevisionAction extends WorkspaceAction {
/**
@@ -85,40 +92,49 @@ public class CompareWithRevisionAction extends WorkspaceAction {
// Show the compare viewer
run(new IRunnableWithProgress() {
- public void run(IProgressMonitor monitor) throws InvocationTargetException {
- CompareUI.openCompareEditorOnPage(
- new CVSCompareRevisionsInput((IFile)getSelectedResources()[0], entries[0]),
- getTargetPage());
+ public void run(IProgressMonitor monitor) throws InterruptedException, InvocationTargetException {
+ CVSCompareRevisionsInput input = new CVSCompareRevisionsInput((IFile)getSelectedResources()[0], entries[0]);
+ // running with a null progress monitor is fine because we have already pre-fetched the log entries above.
+ input.run(new NullProgressMonitor());
+ SynchronizeDialog cd = createCompareDialog(getShell(), input);
+ cd.setBlockOnOpen(true);
+ cd.open();
}
}, false /* cancelable */, PROGRESS_BUSYCURSOR);
}
/**
+ * Return the compare dialog to use to show the compare input.
+ */
+ protected SynchronizeDialog createCompareDialog(Shell shell, CVSCompareRevisionsInput input) {
+ return new SynchronizeDialog(getShell(), "Compare With Revision", input);
+ }
+
+ /* (non-Javadoc)
* @see org.eclipse.team.internal.ccvs.ui.actions.CVSAction#getErrorTitle()
*/
protected String getErrorTitle() {
return Policy.bind("CompareWithRevisionAction.compare"); //$NON-NLS-1$
}
- /**
+ /* (non-Javadoc)
* @see org.eclipse.team.internal.ccvs.ui.actions.WorkspaceAction#isEnabledForCVSResource(org.eclipse.team.internal.ccvs.core.ICVSResource)
*/
protected boolean isEnabledForCVSResource(ICVSResource cvsResource) throws CVSException {
return (!cvsResource.isFolder() && super.isEnabledForCVSResource(cvsResource));
}
- /**
+ /* (non-Javadoc)
* @see org.eclipse.team.internal.ccvs.ui.actions.WorkspaceAction#isEnabledForMultipleResources()
*/
protected boolean isEnabledForMultipleResources() {
return false;
}
- /**
+ /* (non-Javadoc)
* @see org.eclipse.team.internal.ccvs.ui.actions.WorkspaceAction#isEnabledForAddedResources()
*/
protected boolean isEnabledForAddedResources() {
return false;
}
-
}
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/CompareWithTagAction.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/CompareWithTagAction.java
index 34393d71d..3dfd3c3e8 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/CompareWithTagAction.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/CompareWithTagAction.java
@@ -19,34 +19,23 @@ import org.eclipse.team.internal.ccvs.core.CVSCompareSubscriber;
import org.eclipse.team.internal.ccvs.core.CVSTag;
import org.eclipse.team.internal.ccvs.ui.TagSelectionDialog;
import org.eclipse.team.internal.ccvs.ui.subscriber.CompareParticipant;
-import org.eclipse.team.ui.synchronize.subscriber.SubscriberParticipant;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PlatformUI;
+import org.eclipse.team.ui.synchronize.subscriber.SubscriberParticipantDialog;
public class CompareWithTagAction extends WorkspaceAction {
public void execute(IAction action) throws InvocationTargetException, InterruptedException {
- IResource[] resources = getSelectedResources();
+ final IResource[] resources = getSelectedResources();
CVSTag tag = promptForTag(resources);
if (tag == null)
return;
- IWorkbenchWindow wWindow = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
- IWorkbenchPage activePage = null;
- if (wWindow != null) {
- activePage = wWindow.getActivePage();
- }
- // Create the synchronize view participant
+
+ // Run the comparison
CVSCompareSubscriber s = new CVSCompareSubscriber(resources, tag);
- CompareParticipant participant = (CompareParticipant)SubscriberParticipant.find(s);
- boolean addParticipant = false;
- if(participant == null) {
- participant = new CompareParticipant(s);
- addParticipant = true;
- }
- participant.refreshWithRemote(s.roots(), addParticipant);
+ CompareParticipant participant = new CompareParticipant(s);
+ SubscriberParticipantDialog openCompare = new SubscriberParticipantDialog(getShell(), CVSCompareSubscriber.ID_MODAL, participant, resources);
+ openCompare.run();
}
-
+
protected CVSTag promptForTag(IResource[] resources) {
IProject[] projects = new IProject[resources.length];
for (int i = 0; i < resources.length; i++) {
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/ReplaceWithRevisionAction.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/ReplaceWithRevisionAction.java
new file mode 100644
index 000000000..63762b0db
--- /dev/null
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/ReplaceWithRevisionAction.java
@@ -0,0 +1,79 @@
+/*******************************************************************************
+ * Copyright (c) 2000, 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 Corporation - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.team.internal.ccvs.ui.actions;
+
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.jface.dialogs.IDialogConstants;
+import org.eclipse.jface.viewers.*;
+import org.eclipse.swt.widgets.*;
+import org.eclipse.team.internal.ccvs.ui.CVSCompareRevisionsInput;
+import org.eclipse.team.internal.ui.Utils;
+import org.eclipse.team.ui.synchronize.viewers.SynchronizeDialog;
+
+/**
+ * Displays a compare dialog and allows the same behavior as the compare. In addition
+ * a replace button is added to the dialog that will replace the local with the currently
+ * selected revision.
+ *
+ * @since 3.0
+ */
+public class ReplaceWithRevisionAction extends CompareWithRevisionAction {
+
+ protected static final int REPLACE_ID = 10;
+
+ protected class ReplaceCompareDialog extends SynchronizeDialog {
+ private Button replaceButton;
+
+ public ReplaceCompareDialog(Shell shell, String title, CVSCompareRevisionsInput input) {
+ super(shell, title, input);
+ }
+
+ /**
+ * Add the replace button to the dialog.
+ */
+ protected void createButtonsForButtonBar(Composite parent) {
+ replaceButton = createButton(parent, REPLACE_ID, "&Replace", false);
+ replaceButton.setEnabled(false);
+ ((CVSCompareRevisionsInput)getCompareEditorInput()).getViewer().addSelectionChangedListener(
+ new ISelectionChangedListener() {
+ public void selectionChanged(SelectionChangedEvent e) {
+ ISelection s= e.getSelection();
+ replaceButton.setEnabled(s != null && ! s.isEmpty());
+ }
+ }
+ );
+ super.createButtonsForButtonBar(parent);
+ }
+
+ /**
+ * If the replace button was pressed.
+ */
+ protected void buttonPressed(int buttonId) {
+ if(buttonId == REPLACE_ID) {
+ CVSCompareRevisionsInput input = (CVSCompareRevisionsInput)getCompareEditorInput();
+ try {
+ input.replaceLocalWithCurrentlySelectedRevision();
+ } catch (CoreException e) {
+ Utils.handle(e);
+ }
+ buttonId = IDialogConstants.OK_ID;
+ }
+ super.buttonPressed(buttonId);
+ }
+ }
+
+ /* (non-Javadoc)
+ * @see org.eclipse.team.internal.ccvs.ui.actions.CompareWithRevisionAction#createCompareDialog(org.eclipse.swt.widgets.Shell, org.eclipse.team.internal.ccvs.ui.CVSCompareRevisionsInput)
+ */
+ protected SynchronizeDialog createCompareDialog(Shell shell, CVSCompareRevisionsInput input) {
+ return new ReplaceCompareDialog(shell, "Replace With Revision", input);
+ }
+}
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/SyncAction.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/SyncAction.java
index 1a8a7668f..0e5688de6 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/SyncAction.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/SyncAction.java
@@ -17,6 +17,7 @@ import org.eclipse.jface.action.IAction;
import org.eclipse.team.internal.ccvs.core.CVSException;
import org.eclipse.team.internal.ccvs.core.ICVSResource;
import org.eclipse.team.internal.ccvs.ui.CVSUIPlugin;
+import org.eclipse.team.internal.ccvs.ui.subscriber.WorkspaceSynchronizeParticipant;
/**
* Action for catchup/release in popup menus.
@@ -27,7 +28,10 @@ public class SyncAction extends WorkspaceAction {
IResource[] resources = getResourcesToSync();
if (resources == null || resources.length == 0) return;
- CVSUIPlugin.showInSyncView(getShell(), resources, 0 /* no mode in particular */);
+ WorkspaceSynchronizeParticipant participant = CVSUIPlugin.getPlugin().getCvsWorkspaceSynchronizeParticipant();
+ if(participant != null) {
+ participant.refresh(resources);
+ }
}
protected IResource[] getResourcesToSync() {
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/merge/MergeWizard.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/merge/MergeWizard.java
index 8f1c0767f..f6a553be7 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/merge/MergeWizard.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/merge/MergeWizard.java
@@ -11,20 +11,23 @@
package org.eclipse.team.internal.ccvs.ui.merge;
+import org.eclipse.compare.CompareEditorInput;
import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.IResource;
+import org.eclipse.jface.dialogs.IDialogConstants;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.jface.wizard.Wizard;
+import org.eclipse.swt.widgets.Shell;
import org.eclipse.team.internal.ccvs.core.CVSMergeSubscriber;
import org.eclipse.team.internal.ccvs.core.CVSTag;
-import org.eclipse.team.internal.ccvs.ui.CVSUIPlugin;
-import org.eclipse.team.internal.ccvs.ui.ICVSUIConstants;
-import org.eclipse.team.internal.ccvs.ui.Policy;
+import org.eclipse.team.internal.ccvs.ui.*;
import org.eclipse.team.internal.ccvs.ui.subscriber.MergeSynchronizeParticipant;
+import org.eclipse.team.ui.synchronize.subscriber.SubscriberParticipantDialog;
import org.eclipse.team.ui.synchronize.subscriber.SubscriberParticipant;
-import org.eclipse.ui.IWorkbenchPage;
-import org.eclipse.ui.IWorkbenchWindow;
-import org.eclipse.ui.PlatformUI;
+import org.eclipse.team.ui.synchronize.viewers.SynchronizeDialog;
+import org.eclipse.ui.*;
public class MergeWizard extends Wizard {
MergeWizardStartPage startPage;
@@ -63,12 +66,38 @@ public class MergeWizard extends Wizard {
CVSMergeSubscriber s = new CVSMergeSubscriber(resources, startTag, endTag);
MergeSynchronizeParticipant participant = (MergeSynchronizeParticipant)SubscriberParticipant.find(s);
- boolean addParticipant = false;
if(participant == null) {
participant = new MergeSynchronizeParticipant(s);
- addParticipant = true;
- }
- participant.refreshWithRemote(s.roots(), addParticipant);
+ }
+
+ SubscriberParticipantDialog compareAction = new SubscriberParticipantDialog(activePage.getWorkbenchWindow().getShell(), CVSMergeSubscriber.ID_MODAL, participant, s.roots()) {
+ protected SynchronizeDialog createCompareDialog(Shell shell, String title, CompareEditorInput input) {
+ return new SynchronizeDialog(shell, title, input) {
+ public boolean close() {
+ final IPreferenceStore store = CVSUIPlugin.getPlugin().getPreferenceStore();
+ if(! isRememberParticipant() && store.getBoolean(ICVSUIConstants.PREF_PROMPT_ON_MIXED_TAGS)) {
+ AvoidableMessageDialog dialog = new AvoidableMessageDialog(
+ getShell(),
+ "Remember the Merge", //$NON-NLS-1$
+ null, // accept the default window icon
+ "Do you want to remember this merge session for later? If you plan on merging changes into your workspace from this merge configuration later on you should save this session. This will make it easier to incrementally merge changes.", //$NON-NLS-1$
+ MessageDialog.WARNING,
+ new String[] {IDialogConstants.OK_LABEL, IDialogConstants.NO_LABEL},
+ 0);
+
+ if(dialog.open() == IDialogConstants.OK_ID) {
+ rememberParticipant();
+ }
+ if(dialog.isDontShowAgain()) {
+ store.setValue(ICVSUIConstants.PREF_WARN_REMEMBERING_MERGES, false);
+ }
+ }
+ return super.close();
+ }
+ };
+ }
+ };
+ compareAction.run();
return true;
}
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/messages.properties b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/messages.properties
index af2b1022e..ca27c5ca2 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/messages.properties
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/messages.properties
@@ -116,7 +116,7 @@ CVSCompareEditorInput.noWorkspaceFile=No workspace file
CVSCompareEditorInput.noRepositoryFile=No repository file
CVSCompareRevisionsInput.addToWorkspace=Get
-CVSCompareRevisionsInput.compareResourceAndVersions=Compare {0} <workspace> and versions
+CVSCompareRevisionsInput.compareResourceAndVersions=Revisions of ''{0}''
CVSCompareRevisionsInput.errorReplacingTitle=Unable to Replace
CVSCompareRevisionsInput.errorReplacingMessage=Resource(s) could not be loaded. A communication error may have occurred, or \
the resource(s) may not exist on the server, or you may \
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/operations/ReconcileProjectOperation.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/operations/ReconcileProjectOperation.java
index 557cb03ed..91dddcb5d 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/operations/ReconcileProjectOperation.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/operations/ReconcileProjectOperation.java
@@ -13,6 +13,7 @@ package org.eclipse.team.internal.ccvs.ui.operations;
import java.lang.reflect.InvocationTargetException;
import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
@@ -21,6 +22,7 @@ import org.eclipse.team.core.variants.IResourceVariant;
import org.eclipse.team.internal.ccvs.core.*;
import org.eclipse.team.internal.ccvs.ui.CVSUIPlugin;
import org.eclipse.team.internal.ccvs.ui.Policy;
+import org.eclipse.team.internal.ccvs.ui.subscriber.WorkspaceSynchronizeParticipant;
/**
* Reconcile an existing unshared local project with an existing remote folder.
@@ -44,11 +46,16 @@ public class ReconcileProjectOperation extends CVSOperation {
monitor.beginTask(null, 300);
ICVSRemoteFolder remote = CheckoutToRemoteFolderOperation.checkoutRemoteFolder(getShell(), folder, Policy.subMonitorFor(monitor, 100));
// TODO: make -in-sync should also be done by the subscriber
-// makeFoldersInSync(project, remote, Policy.subMonitorFor(monitor, 100));
- CVSProviderPlugin.getPlugin().getCVSWorkspaceSubscriber().setRemote(project, (IResourceVariant)remote, Policy.subMonitorFor(monitor, 100));
+ // makeFoldersInSync(project, remote, Policy.subMonitorFor(monitor, 100));
+
+ final CVSWorkspaceSubscriber participant = CVSProviderPlugin.getPlugin().getCVSWorkspaceSubscriber();
+ participant.setRemote(project, (IResourceVariant)remote, Policy.subMonitorFor(monitor, 100));
Display.getDefault().asyncExec(new Runnable() {
public void run() {
- CVSUIPlugin.showInSyncView(getShell(), null, 0 /* no mode in particular */);
+ WorkspaceSynchronizeParticipant participant = CVSUIPlugin.getPlugin().getCvsWorkspaceSynchronizeParticipant();
+ if(participant != null) {
+ participant.refresh(new IResource[] {project});
+ }
}
});
} catch (InvocationTargetException e) {
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/ChangeLogModelProvider.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/ChangeLogModelProvider.java
index 01a775c3e..3ff4dd5e2 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/ChangeLogModelProvider.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/ChangeLogModelProvider.java
@@ -24,6 +24,7 @@ import org.eclipse.team.internal.ccvs.core.resources.CVSWorkspaceRoot;
import org.eclipse.team.internal.ccvs.core.resources.RemoteFile;
import org.eclipse.team.internal.ccvs.core.syncinfo.ResourceSyncInfo;
import org.eclipse.team.internal.ccvs.ui.CVSUIPlugin;
+import org.eclipse.team.internal.ui.synchronize.*;
import org.eclipse.team.ui.synchronize.viewers.*;
import org.eclipse.ui.progress.UIJob;
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/CompareParticipant.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/CompareParticipant.java
index 90c98db82..3462ab803 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/CompareParticipant.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/CompareParticipant.java
@@ -21,7 +21,7 @@ import org.eclipse.team.ui.TeamUI;
import org.eclipse.team.ui.synchronize.ISynchronizeParticipantDescriptor;
import org.eclipse.team.ui.synchronize.ISynchronizeView;
import org.eclipse.team.ui.synchronize.subscriber.SubscriberParticipant;
-import org.eclipse.ui.part.IPageBookViewPage;
+import org.eclipse.team.ui.synchronize.subscriber.SubscriberParticipantPage;
public class CompareParticipant extends SubscriberParticipant {
@@ -62,7 +62,7 @@ public class CompareParticipant extends SubscriberParticipant {
/* (non-Javadoc)
* @see org.eclipse.team.ui.synchronize.subscriber.SubscriberParticipant#doCreatePage(org.eclipse.team.ui.synchronize.ISynchronizeView)
*/
- protected IPageBookViewPage doCreatePage(ISynchronizeView view) {
+ protected SubscriberParticipantPage doCreatePage(ISynchronizeView view) {
return new CompareParticipantPage(this, view);
}
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/CompareParticipantPage.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/CompareParticipantPage.java
index 55d7aebb1..47e0cd2fb 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/CompareParticipantPage.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/CompareParticipantPage.java
@@ -14,11 +14,11 @@ import org.eclipse.core.runtime.NullProgressMonitor;
import org.eclipse.jface.action.*;
import org.eclipse.team.core.TeamException;
import org.eclipse.team.internal.ui.Utils;
+import org.eclipse.team.internal.ui.synchronize.SynchronizeModelProvider;
import org.eclipse.team.internal.ui.synchronize.actions.RemoveSynchronizeParticipantAction;
import org.eclipse.team.ui.synchronize.ISynchronizeView;
import org.eclipse.team.ui.synchronize.subscriber.SubscriberParticipant;
import org.eclipse.team.ui.synchronize.subscriber.SynchronizeViewerAdvisor;
-import org.eclipse.team.ui.synchronize.viewers.SynchronizeModelProvider;
import org.eclipse.ui.IActionBars;
public class CompareParticipantPage extends CVSSynchronizeViewPage {
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/MergeSynchronizeParticipant.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/MergeSynchronizeParticipant.java
index 877e8228d..26d207fa6 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/MergeSynchronizeParticipant.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/MergeSynchronizeParticipant.java
@@ -21,11 +21,12 @@ import org.eclipse.team.internal.ccvs.core.*;
import org.eclipse.team.internal.ccvs.ui.CVSUIPlugin;
import org.eclipse.team.internal.ccvs.ui.Policy;
import org.eclipse.team.ui.TeamUI;
-import org.eclipse.team.ui.synchronize.*;
-import org.eclipse.team.ui.synchronize.subscriber.*;
+import org.eclipse.team.ui.synchronize.ISynchronizeParticipantDescriptor;
+import org.eclipse.team.ui.synchronize.ISynchronizeView;
+import org.eclipse.team.ui.synchronize.subscriber.SubscriberParticipant;
+import org.eclipse.team.ui.synchronize.subscriber.SubscriberParticipantPage;
import org.eclipse.ui.IMemento;
import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.part.IPageBookViewPage;
public class MergeSynchronizeParticipant extends SubscriberParticipant {
@@ -52,7 +53,7 @@ public class MergeSynchronizeParticipant extends SubscriberParticipant {
*/
protected void setSubscriber(Subscriber subscriber) {
super.setSubscriber(subscriber);
- String id = CVSMergeSubscriber.QUALIFIED_NAME;
+ String id = CVSMergeSubscriber.ID;
try {
ISynchronizeParticipantDescriptor descriptor = TeamUI.getSynchronizeManager().getParticipantDescriptor(id);
setInitializationData(descriptor);
@@ -103,7 +104,7 @@ public class MergeSynchronizeParticipant extends SubscriberParticipant {
/* (non-Javadoc)
* @see org.eclipse.team.ui.synchronize.ISynchronizeParticipant#createPage(org.eclipse.team.ui.synchronize.ISynchronizeView)
*/
- protected IPageBookViewPage doCreatePage(ISynchronizeView view) {
+ protected SubscriberParticipantPage doCreatePage(ISynchronizeView view) {
return new MergeSynchronizePage(this, view);
}
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/WorkspaceSynchronizeParticipant.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/WorkspaceSynchronizeParticipant.java
index bde067da7..edac01341 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/WorkspaceSynchronizeParticipant.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/subscriber/WorkspaceSynchronizeParticipant.java
@@ -14,9 +14,9 @@ import org.eclipse.team.core.subscribers.Subscriber;
import org.eclipse.team.internal.ccvs.core.CVSProviderPlugin;
import org.eclipse.team.ui.synchronize.ISynchronizeView;
import org.eclipse.team.ui.synchronize.subscriber.SubscriberParticipant;
+import org.eclipse.team.ui.synchronize.subscriber.SubscriberParticipantPage;
import org.eclipse.ui.IMemento;
import org.eclipse.ui.PartInitException;
-import org.eclipse.ui.part.IPageBookViewPage;
public class WorkspaceSynchronizeParticipant extends SubscriberParticipant {
@@ -25,7 +25,7 @@ public class WorkspaceSynchronizeParticipant extends SubscriberParticipant {
/* (non-Javadoc)
* @see org.eclipse.team.ui.synchronize.subscriber.SubscriberParticipant#doCreatePage(org.eclipse.team.ui.synchronize.ISynchronizeView)
*/
- protected IPageBookViewPage doCreatePage(ISynchronizeView view) {
+ protected SubscriberParticipantPage doCreatePage(ISynchronizeView view) {
return new WorkspaceSynchronizePage(this, view);
}
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/wizards/SharingWizard.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/wizards/SharingWizard.java
index 51505e727..754044ca1 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/wizards/SharingWizard.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/wizards/SharingWizard.java
@@ -307,7 +307,10 @@ public class SharingWizard extends Wizard implements IConfigurationWizard {
throw new InvocationTargetException(e);
}
}
- CVSUIPlugin.showInSyncView(getContainer().getShell(), null, SubscriberParticipant.OUTGOING_MODE);
+ WorkspaceSynchronizeParticipant participant = CVSUIPlugin.getPlugin().getCvsWorkspaceSynchronizeParticipant();
+ if(participant != null) {
+ participant.refresh(new IResource[] {project});
+ }
}
} catch (InterruptedException e) {
return true;

Back to the top