Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Valenta2006-01-09 20:52:57 +0000
committerMichael Valenta2006-01-09 20:52:57 +0000
commitdadf9bc2204d67fe0e35bfe2aa5e93f480aa7283 (patch)
treee15e31435b13e86fdaec168231af106fc819e400
parente5e7bc0bfbf9b7a9ecb855347f6881cf4648496f (diff)
downloadeclipse.platform.team-dadf9bc2204d67fe0e35bfe2aa5e93f480aa7283.tar.gz
eclipse.platform.team-dadf9bc2204d67fe0e35bfe2aa5e93f480aa7283.tar.xz
eclipse.platform.team-dadf9bc2204d67fe0e35bfe2aa5e93f480aa7283.zip
Bug 122917 [Model Sync] Make Work in Progress update real
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSUIMessages.java6
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSUIPlugin.java1
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/ICVSUIConstants.java1
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/UpdateMergePreferencePage.java24
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/ReplaceWithRemoteAction.java35
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/UpdateSilentAction.java12
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/mappings/ModelReplaceOperation.java7
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/mappings/WorkspaceSubscriberContext.java3
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/messages.properties10
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/wizards/MergeWizard.java4
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/wizards/MergeWizardPage.java20
-rw-r--r--bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/TeamUIMessages.java4
-rw-r--r--bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/messages.properties2
-rw-r--r--bundles/org.eclipse.team.ui/src/org/eclipse/team/ui/mapping/AbstractSynchronizationLabelProvider.java9
-rw-r--r--bundles/org.eclipse.team.ui/src/org/eclipse/team/ui/operations/ResourceMappingMergeOperation.java4
-rw-r--r--tests/org.eclipse.team.tests.cvs.core/launchConfigurations/One CVS Test.launch8
16 files changed, 62 insertions, 88 deletions
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSUIMessages.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSUIMessages.java
index 4985625b7..eb99dae7b 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSUIMessages.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSUIMessages.java
@@ -1040,5 +1040,11 @@ public class CVSUIMessages extends NLS {
public static String UpdateMergePreferencePage_1;
public static String UpdateMergePreferencePage_2;
public static String UpdateMergePreferencePage_3;
+ public static String WorkspaceSubscriberContext_0;
+ public static String ModelReplaceOperation_0;
+ public static String ModelReplaceOperation_1;
+ public static String ModelReplaceOperation_2;
+ public static String ModelReplaceOperation_3;
+ public static String MergeWizardPage_14;
}
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 8944ece6d..1ee643234 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
@@ -564,7 +564,6 @@ public class CVSUIPlugin extends AbstractUIPlugin {
store.setDefault(ICVSUIConstants.PREF_CHANGE_PERSPECTIVE_ON_SHOW_ANNOTATIONS, MessageDialogWithToggle.PROMPT);
store.setDefault(ICVSUIConstants.PREF_ALLOW_EMPTY_COMMIT_COMMENTS, MessageDialogWithToggle.PROMPT);
- store.setDefault(ICVSUIConstants.PREF_ENABLEMODELUPDATE, false);
store.setDefault(ICVSUIConstants.PREF_UPDATE_HANDLING, ICVSUIConstants.PREF_UPDATE_HANDLING_PERFORM);
store.setDefault(ICVSUIConstants.PREF_UPDATE_PREVIEW, ICVSUIConstants.PREF_UPDATE_PREVIEW_IN_DIALOG);
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 63305d1b0..97ffa63df 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
@@ -151,7 +151,6 @@ public interface ICVSUIConstants {
public final String PREF_ALLOW_EMPTY_COMMIT_COMMENTS= "pref_allow_empty_commit_comment"; //$NON-NLS-1$
- public final String PREF_ENABLEMODELUPDATE = "pref_workinprogress_enablemodelupdate"; //$NON-NLS-1$
public final String PREF_UPDATE_HANDLING = "pref_team_update_handling"; //$NON-NLS-1$
public final String PREF_UPDATE_HANDLING_PREVIEW = "previewUpdate"; //$NON-NLS-1$
public final String PREF_UPDATE_HANDLING_PERFORM = "performUpdate"; //$NON-NLS-1$
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/UpdateMergePreferencePage.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/UpdateMergePreferencePage.java
index ae5194b94..764bca443 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/UpdateMergePreferencePage.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/UpdateMergePreferencePage.java
@@ -1,12 +1,9 @@
package org.eclipse.team.internal.ccvs.ui;
-import org.eclipse.jface.preference.BooleanFieldEditor;
import org.eclipse.jface.preference.RadioGroupFieldEditor;
-import org.eclipse.jface.util.PropertyChangeEvent;
public class UpdateMergePreferencePage extends CVSFieldEditorPreferencePage {
- private BooleanFieldEditor enableClientUpdate;
private RadioGroupFieldEditor updateStyle;
private RadioGroupFieldEditor updatePreviewStyle;
@@ -20,12 +17,6 @@ public class UpdateMergePreferencePage extends CVSFieldEditorPreferencePage {
}
protected void createFieldEditors() {
- enableClientUpdate = new BooleanFieldEditor(
- ICVSUIConstants.PREF_ENABLEMODELUPDATE,
- CVSUIMessages.WorkInProgress_EnableModelUpdate,
- BooleanFieldEditor.DEFAULT,
- getFieldEditorParent());
- addField(enableClientUpdate);
updateStyle = new RadioGroupFieldEditor(
ICVSUIConstants.PREF_UPDATE_HANDLING,
@@ -54,21 +45,6 @@ public class UpdateMergePreferencePage extends CVSFieldEditorPreferencePage {
// TODO: Add option for sync and compare to use old or new (add to sync compare page)
- // TODO Add option for merge to use old or new
-
- updateStyle.setEnabled(CVSUIPlugin.getPlugin().getPreferenceStore().getBoolean(ICVSUIConstants.PREF_ENABLEMODELUPDATE), getFieldEditorParent());
- updatePreviewStyle.setEnabled(CVSUIPlugin.getPlugin().getPreferenceStore().getBoolean(ICVSUIConstants.PREF_ENABLEMODELUPDATE), getFieldEditorParent());
- }
-
- /* (non-Javadoc)
- * @see org.eclipse.jface.preference.FieldEditorPreferencePage#propertyChange(org.eclipse.jface.util.PropertyChangeEvent)
- */
- public void propertyChange(PropertyChangeEvent event) {
- if (event.getSource() == enableClientUpdate) {
- updateStyle.setEnabled(((Boolean)event.getNewValue()).booleanValue(), getFieldEditorParent());
- updatePreviewStyle.setEnabled(((Boolean)event.getNewValue()).booleanValue(), getFieldEditorParent());
- }
- super.propertyChange(event);
}
}
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/ReplaceWithRemoteAction.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/ReplaceWithRemoteAction.java
index 54dec9d07..3c953f0d7 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/ReplaceWithRemoteAction.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/ReplaceWithRemoteAction.java
@@ -12,50 +12,19 @@ package org.eclipse.team.internal.ccvs.ui.actions;
import java.lang.reflect.InvocationTargetException;
-import org.eclipse.core.resources.mapping.ResourceMapping;
-import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.operation.IRunnableWithProgress;
import org.eclipse.jface.preference.IPreferenceStore;
-import org.eclipse.team.internal.ccvs.core.CVSException;
-import org.eclipse.team.internal.ccvs.core.CVSProviderPlugin;
-import org.eclipse.team.internal.ccvs.core.ICVSResource;
+import org.eclipse.team.internal.ccvs.core.*;
import org.eclipse.team.internal.ccvs.core.syncinfo.ResourceSyncInfo;
import org.eclipse.team.internal.ccvs.ui.CVSUIMessages;
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.mappings.ModelReplaceOperation;
-import org.eclipse.team.internal.ccvs.ui.operations.ReplaceOperation;
-import org.eclipse.team.internal.core.InfiniteSubProgressMonitor;
public class ReplaceWithRemoteAction extends WorkspaceTraversalAction {
public void execute(IAction action) throws InvocationTargetException, InterruptedException {
IPreferenceStore store = CVSUIPlugin.getPlugin().getPreferenceStore();
- if (store.getBoolean(ICVSUIConstants.PREF_ENABLEMODELUPDATE)){
- new ModelReplaceOperation(getTargetPart(), getSelectedResourceMappings(CVSProviderPlugin.getTypeId()), getResourceMappingContext()).run();
- } else {
- final ResourceMapping[][] resourceMappings = new ResourceMapping[][] {null};
- run(new IRunnableWithProgress() {
- public void run(IProgressMonitor monitor) throws InterruptedException, InvocationTargetException {
- try {
- monitor = Policy.monitorFor(monitor);
- monitor.beginTask(null, 100);
- resourceMappings[0] = ReplaceWithTagAction.checkOverwriteOfDirtyResources(getShell(), getCVSResourceMappings(), new InfiniteSubProgressMonitor(monitor, 100));
- } finally {
- monitor.done();
- }
- }
- }, false /* cancelable */, PROGRESS_BUSYCURSOR);
-
- if(resourceMappings[0] == null || resourceMappings[0].length == 0) {
- // nothing to do
- return;
- }
- // Peform the replace in the background
- new ReplaceOperation(getTargetPart(), resourceMappings[0], null).run();
- }
+ new ModelReplaceOperation(getTargetPart(), getSelectedResourceMappings(CVSProviderPlugin.getTypeId()), getResourceMappingContext()).run();
}
/**
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/UpdateSilentAction.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/UpdateSilentAction.java
index b7b392dc0..c7a477777 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/UpdateSilentAction.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/UpdateSilentAction.java
@@ -13,7 +13,6 @@ package org.eclipse.team.internal.ccvs.ui.actions;
import java.lang.reflect.InvocationTargetException;
import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.team.internal.ccvs.core.CVSProviderPlugin;
import org.eclipse.team.internal.ccvs.core.client.Command;
import org.eclipse.team.internal.ccvs.ui.CVSUIPlugin;
@@ -42,17 +41,20 @@ public class UpdateSilentAction extends WorkspaceTraversalAction {
return true;
}
+ /* (non-Javadoc)
+ * @see org.eclipse.team.internal.ccvs.ui.actions.CVSAction#execute(org.eclipse.jface.action.IAction)
+ */
public void execute(IAction action) throws InterruptedException, InvocationTargetException {
- //For 3.2 M3 release: check to see if the user wants to perform a model update or just a
- //regular update action
- IPreferenceStore store = CVSUIPlugin.getPlugin().getPreferenceStore();
- if (!store.getBoolean(ICVSUIConstants.PREF_ENABLEMODELUPDATE) || CVSUIPlugin.getPlugin().getPreferenceStore().getString(ICVSUIConstants.PREF_UPDATE_HANDLING).equals(ICVSUIConstants.PREF_UPDATE_HANDLING_TRADITIONAL)) {
+ if (CVSUIPlugin.getPlugin().getPreferenceStore().getString(ICVSUIConstants.PREF_UPDATE_HANDLING).equals(ICVSUIConstants.PREF_UPDATE_HANDLING_TRADITIONAL)) {
new UpdateOperation(getTargetPart(), getCVSResourceMappings(), Command.NO_LOCAL_OPTIONS, null /* no tag */).run();
} else {
new ModelUpdateOperation(getTargetPart(), getSelectedResourceMappings(CVSProviderPlugin.getTypeId()), getResourceMappingContext()).run();
}
}
+ /* (non-Javadoc)
+ * @see org.eclipse.team.internal.ccvs.ui.actions.CVSAction#getId()
+ */
public String getId() {
return ICVSUIConstants.CMD_UPDATE;
}
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/mappings/ModelReplaceOperation.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/mappings/ModelReplaceOperation.java
index 0fce8a2c1..a463cc26f 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/mappings/ModelReplaceOperation.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/mappings/ModelReplaceOperation.java
@@ -18,6 +18,7 @@ import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.swt.widgets.Display;
import org.eclipse.team.core.diff.*;
import org.eclipse.team.core.mapping.IMergeContext;
+import org.eclipse.team.internal.ccvs.ui.CVSUIMessages;
import org.eclipse.ui.IWorkbenchPart;
public class ModelReplaceOperation extends ModelUpdateOperation {
@@ -60,13 +61,13 @@ public class ModelReplaceOperation extends ModelUpdateOperation {
final int[] result = new int[] { 1 };
Display.getDefault().syncExec(new Runnable() {
public void run() {
- MessageDialog dialog = new MessageDialog(getShell(), "Overwrite Local Changes?", null, // accept
+ MessageDialog dialog = new MessageDialog(getShell(), CVSUIMessages.ModelReplaceOperation_0, null, // accept
// the
// default
// window
// icon
- "The selected elements contain local changes. You may choose to overwrite the changes or preview them.",
- MessageDialog.QUESTION, new String[] { "&Overwrite", "&Preview",
+ CVSUIMessages.ModelReplaceOperation_1,
+ MessageDialog.QUESTION, new String[] { CVSUIMessages.ModelReplaceOperation_2, CVSUIMessages.ModelReplaceOperation_3,
IDialogConstants.CANCEL_LABEL }, result[0]); // preview is the default
result[0] = dialog.open();
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/mappings/WorkspaceSubscriberContext.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/mappings/WorkspaceSubscriberContext.java
index be07bffb2..14945fa2c 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/mappings/WorkspaceSubscriberContext.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/mappings/WorkspaceSubscriberContext.java
@@ -26,6 +26,7 @@ import org.eclipse.team.core.variants.IResourceVariant;
import org.eclipse.team.internal.ccvs.core.*;
import org.eclipse.team.internal.ccvs.core.client.PruneFolderVisitor;
import org.eclipse.team.internal.ccvs.core.resources.CVSWorkspaceRoot;
+import org.eclipse.team.internal.ccvs.ui.CVSUIMessages;
import org.eclipse.team.internal.ccvs.ui.Policy;
public class WorkspaceSubscriberContext extends CVSSubscriberMergeContext {
@@ -78,7 +79,7 @@ public class WorkspaceSubscriberContext extends CVSSubscriberMergeContext {
String ci1 = variant.getContentIdentifier();
String ci2 = ((IFileRevision)remote).getContentIdentifier();
if (!ci1.equals(ci2)) {
- throw new CVSException(NLS.bind("Could not update the meta-data for file {0} due to inconsistent internal state.", resource.getFullPath().toString()));
+ throw new CVSException(NLS.bind(CVSUIMessages.WorkspaceSubscriberContext_0, resource.getFullPath().toString()));
}
}
}
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 69f81bd4a..ad2cf2996 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
@@ -400,6 +400,7 @@ MergeWizardPage_10=The specified end tag is not known to exist. Either enter a d
MergeWizardPage_11=The specified start tag is not known to exist. Either enter a different tag or refresh the known tags.
MergeWizardPage_12=The start and end tags cannot be the same.
MergeWizardPage_13=A start tag is required for previewing a merge in the synchronize view.
+MergeWizardPage_14=&Allow models to participate in preview
MergeWizardEndPage_branches=Branches
ModuleSelectionPage_moduleIsProject=Use &project name as module name
@@ -832,6 +833,7 @@ CVSChangeSetCollector_4=Retrieving revision histories
CVSChangeSetCollector_0=Unassigned Remote Changes
WorkspaceChangeSetCapability_7=Edit Change Set Comment
WorkspaceChangeSetCapability_8=Edit the name and comment for the change set
+WorkspaceSubscriberContext_0=Could not update the meta-data for file {0} due to inconsistent internal state.
ProjectMetaFile_taskName=Looking for a remote meta file
@@ -839,7 +841,7 @@ TagFromWorkspace_taskName=Tagging from workspace
TagFromRepository_taskName=Tagging from repository
UpdateOnlyMergeable_taskName=Updating mergeable changes
UpdateDialog_overwriteTitle=Overwrite Local Changes?
-UpdateMergePreferencePage_0=&Never preview and use CVS merge markup in files with conflicts (not recommended)
+UpdateMergePreferencePage_0=&Never preview and use CVS text markup to indicate conflicts (not recommended)
UpdateMergePreferencePage_1=When an update preview is required
UpdateMergePreferencePage_2=Preview updates in a &dialog
UpdateMergePreferencePage_3=Preview updates in the &Synchronize view
@@ -1062,6 +1064,10 @@ ModeWizardSelectionPage_3=ASCII/Binary Property
ModeWizardSelectionPage_4=Path
ModeWizardSelectionPage_8=&Reset
ModeWizardSelectionPage_9=Reset the selected files to their current mode
+ModelReplaceOperation_0=Overwrite Local Changes?
+ModelReplaceOperation_1=The selected elements contain local changes. You may choose to overwrite the changes or preview them.
+ModelReplaceOperation_2=&Overwrite
+ModelReplaceOperation_3=&Preview
ReplaceWithTagAction_0=There are uncommitted changes in ''{0}'' that will be overwritten. Should ''{0}'' be replaced?
ReplaceWithTagAction_1=The following contain &uncommitted changes that will be overwritten. Check those that should be included in the replace operation.
@@ -1081,7 +1087,7 @@ CommentTemplatesPreferencePage_EditCommentTemplateTitle=Enter Comment Template
CommentTemplatesPreferencePage_EditCommentTemplateMessage=Please enter a comment template:
DiffOperation_0=Creating Patch on {0}
DiffOperation_1=Creating Patch
-WorkInProgress_EnableModelUpdate=&Enable client side merge features
+WorkInProgress_EnableModelUpdate=&Allow models to participate when peforming a CVS merge
WorkInProgressPage_0=When performing an update
WorkInProgressPage_1=&Preview all incoming changes before updating
WorkInProgressPage_2=&Update all non-conflicting changes and then preview remaining conflicts
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/wizards/MergeWizard.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/wizards/MergeWizard.java
index 7c41bbdce..2d59440c4 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/wizards/MergeWizard.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/wizards/MergeWizard.java
@@ -17,7 +17,6 @@ import java.util.*;
import org.eclipse.core.resources.IResource;
import org.eclipse.core.resources.mapping.ResourceMapping;
import org.eclipse.core.runtime.IStatus;
-import org.eclipse.jface.preference.IPreferenceStore;
import org.eclipse.jface.resource.ImageDescriptor;
import org.eclipse.jface.wizard.Wizard;
import org.eclipse.team.internal.ccvs.core.CVSMergeSubscriber;
@@ -74,8 +73,7 @@ public class MergeWizard extends Wizard {
// Ignore
}
} else {
- IPreferenceStore store = CVSUIPlugin.getPlugin().getPreferenceStore();
- if (store.getBoolean(ICVSUIConstants.PREF_ENABLEMODELUPDATE)){
+ if (page.isModelSync()){
CVSMergeSubscriber s = new CVSMergeSubscriber(getProjects(resources), startTag, endTag);
try {
new ModelMergeOperation(getPart(), mappings, s).run();
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/wizards/MergeWizardPage.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/wizards/MergeWizardPage.java
index c6b9d2d08..2573bec74 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/wizards/MergeWizardPage.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/wizards/MergeWizardPage.java
@@ -47,6 +47,8 @@ public class MergeWizardPage extends CVSWizardPage {
private Button previewButton;
private Button noPreviewButton;
protected boolean preview = true;
+ private Button useModelSync;
+ private boolean isUseModelSync = false;
public MergeWizardPage(String pageName, String title, ImageDescriptor titleImage, String description, TagSource tagSource) {
super(pageName, title, titleImage, description);
@@ -86,7 +88,11 @@ public class MergeWizardPage extends CVSWizardPage {
composite.setLayoutData(SWTUtils.createHFillGridData());
composite.setLayout(SWTUtils.createGridLayout(1, converter, SWTUtils.MARGINS_NONE));
- previewButton = SWTUtils.createRadioButton(composite, CVSUIMessages.MergeWizardPage_0);
+ previewButton = SWTUtils.createRadioButton(composite, CVSUIMessages.MergeWizardPage_0);
+ useModelSync = SWTUtils.createCheckBox(composite, CVSUIMessages.MergeWizardPage_14);
+ GridData data = SWTUtils.createHFillGridData(1);
+ data.horizontalIndent = 10;
+ useModelSync.setLayoutData(data);
noPreviewButton = SWTUtils.createRadioButton(composite, CVSUIMessages.MergeWizardPage_1);
SelectionAdapter selectionAdapter = new SelectionAdapter() {
public void widgetSelected(SelectionEvent e) {
@@ -95,9 +101,16 @@ public class MergeWizardPage extends CVSWizardPage {
}
};
previewButton.setSelection(preview);
+ useModelSync.setEnabled(preview);
+ useModelSync.setSelection(isUseModelSync);
noPreviewButton.setSelection(!preview);
previewButton.addSelectionListener(selectionAdapter);
noPreviewButton.addSelectionListener(selectionAdapter);
+ useModelSync.addSelectionListener(new SelectionAdapter() {
+ public void widgetSelected(SelectionEvent e) {
+ isUseModelSync = useModelSync.getSelection();
+ }
+ });
}
private void createTagRefreshArea(Composite composite) {
tagRefreshArea = new TagRefreshButtonArea(getShell(), getTagSource(), null);
@@ -247,6 +260,7 @@ public class MergeWizardPage extends CVSWizardPage {
}
private void updateEnablements() {
+ useModelSync.setEnabled(preview);
if (endTag == null && endTagField.getText().length() > 0) {
setErrorMessage(CVSUIMessages.MergeWizardPage_10);
} else if (startTag == null && startTagField.getText().length() > 0) {
@@ -283,4 +297,8 @@ public class MergeWizardPage extends CVSWizardPage {
public boolean isPreview() {
return preview;
}
+
+ public boolean isModelSync() {
+ return isUseModelSync;
+ }
}
diff --git a/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/TeamUIMessages.java b/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/TeamUIMessages.java
index 4806b5666..a4bf95e24 100644
--- a/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/TeamUIMessages.java
+++ b/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/TeamUIMessages.java
@@ -359,4 +359,8 @@ public class TeamUIMessages extends NLS {
public static String ResourceMappingOperation_0;
public static String AbstractSynchronizationLabelProvider_0;
+ public static String ResourceMappingMergeOperation_3;
+
+ public static String ResourceMappingMergeOperation_4;
+
} \ No newline at end of file
diff --git a/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/messages.properties b/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/messages.properties
index 8399c2633..c08b785b0 100644
--- a/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/messages.properties
+++ b/bundles/org.eclipse.team.ui/src/org/eclipse/team/internal/ui/messages.properties
@@ -265,6 +265,8 @@ ResourceMappingOperation_0=Selection Adjustment Required
ResourceMappingMergeOperation_0=No Incoming Changes
ResourceMappingMergeOperation_1=There are no incoming changes for the selected elements
ResourceMappingMergeOperation_2=&Done
+ResourceMappingMergeOperation_3=Multiple potential side effects of this operation have been detected.
+ResourceMappingMergeOperation_4=Preview the merge before it is performed
CompressedFoldersModelProvider_0=&Compressed Folders
HierarchicalModelProvider_0=&Tree
diff --git a/bundles/org.eclipse.team.ui/src/org/eclipse/team/ui/mapping/AbstractSynchronizationLabelProvider.java b/bundles/org.eclipse.team.ui/src/org/eclipse/team/ui/mapping/AbstractSynchronizationLabelProvider.java
index b7e9d70aa..eb06a6b57 100644
--- a/bundles/org.eclipse.team.ui/src/org/eclipse/team/ui/mapping/AbstractSynchronizationLabelProvider.java
+++ b/bundles/org.eclipse.team.ui/src/org/eclipse/team/ui/mapping/AbstractSynchronizationLabelProvider.java
@@ -235,18 +235,11 @@ public abstract class AbstractSynchronizationLabelProvider implements ILabelProv
* Return the sync kind of the given element. This is used
* to determine how to decorate the image and label of the
* element. The sync kind is described in the {@link SyncInfo}
- * class.
+ * class. A <code>null</code> is returned by default.
* @param element the element being tested
* @return the sync kind of the given element
*/
protected IDiffNode getDiff(Object element) {
- return getSyncDelta(element);
- }
-
- /**
- * @deprecated use {@link #getDiff(Object) }
- */
- protected IDiffNode getSyncDelta(Object element) {
return null;
}
diff --git a/bundles/org.eclipse.team.ui/src/org/eclipse/team/ui/operations/ResourceMappingMergeOperation.java b/bundles/org.eclipse.team.ui/src/org/eclipse/team/ui/operations/ResourceMappingMergeOperation.java
index fbbfb70aa..b21c82bb0 100644
--- a/bundles/org.eclipse.team.ui/src/org/eclipse/team/ui/operations/ResourceMappingMergeOperation.java
+++ b/bundles/org.eclipse.team.ui/src/org/eclipse/team/ui/operations/ResourceMappingMergeOperation.java
@@ -179,7 +179,7 @@ public abstract class ResourceMappingMergeOperation extends ResourceMappingOpera
return Status.OK_STATUS;
if (notOK.size() == 1)
return (IStatus)notOK.get(0);
- return new MultiStatus(TeamUIPlugin.ID, 0, (IStatus[]) notOK.toArray(new IStatus[notOK.size()]), "Multiple potential side effects of this operation have been detected.", null);
+ return new MultiStatus(TeamUIPlugin.ID, 0, (IStatus[]) notOK.toArray(new IStatus[notOK.size()]), TeamUIMessages.ResourceMappingMergeOperation_3, null);
}
/**
@@ -303,7 +303,7 @@ public abstract class ResourceMappingMergeOperation extends ResourceMappingOpera
*/
protected String getPreviewRequestMessage() {
if (!isPreviewRequested()) {
- return "Preview the merge before it is performed";
+ return TeamUIMessages.ResourceMappingMergeOperation_4;
}
return super.getPreviewRequestMessage();
}
diff --git a/tests/org.eclipse.team.tests.cvs.core/launchConfigurations/One CVS Test.launch b/tests/org.eclipse.team.tests.cvs.core/launchConfigurations/One CVS Test.launch
index fe6a2abcf..de776995f 100644
--- a/tests/org.eclipse.team.tests.cvs.core/launchConfigurations/One CVS Test.launch
+++ b/tests/org.eclipse.team.tests.cvs.core/launchConfigurations/One CVS Test.launch
@@ -12,16 +12,16 @@
<stringAttribute key="location" value="C:\Eclipse\Latest-Eclipse-Drop\eclipse\runtime-test-workspace"/>
<stringAttribute key="configLocation" value=""/>
<booleanAttribute key="clearws" value="true"/>
-<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.eclipse.team.tests.ccvs.core.mappings.ResourceMapperTests"/>
+<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.eclipse.team.tests.ccvs.core.provider.CVSProviderTest"/>
<stringAttribute key="location1" value="C:\Eclipse\Latest-Eclipse-Drop\eclipse\runtime-test-workspace"/>
-<stringAttribute key="pde.version" value="3.2"/>
<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os win32 -ws win32 -arch x86 -nl en_CA"/>
-<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Declipse.cvs.properties=c:\eclipse\repository.properties -Declipse.cvs.testName2=testOperationOnOutOfSync"/>
+<stringAttribute key="pde.version" value="3.2"/>
+<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Declipse.cvs.properties=c:\eclipse\repository.properties -Declipse.cvs.testName=testUpdate"/>
<booleanAttribute key="default" value="true"/>
<booleanAttribute key="clearConfig" value="true"/>
<booleanAttribute key="org.eclipse.debug.core.appendEnvironmentVariables" value="true"/>
-<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
<booleanAttribute key="useDefaultConfigArea" value="true"/>
+<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
<stringAttribute key="onePluginID" value=""/>
<booleanAttribute key="useDefaultConfig" value="true"/>
<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/>

Back to the top