diff options
Diffstat (limited to 'plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal')
21 files changed, 149 insertions, 117 deletions
diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/contentmergeviewer/accessor/factory/impl/AccessorFactoryExtensionRegistryListener.java b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/contentmergeviewer/accessor/factory/impl/AccessorFactoryExtensionRegistryListener.java index a6f172d57..711e21e7f 100644 --- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/contentmergeviewer/accessor/factory/impl/AccessorFactoryExtensionRegistryListener.java +++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/contentmergeviewer/accessor/factory/impl/AccessorFactoryExtensionRegistryListener.java @@ -1,5 +1,5 @@ /*******************************************************************************
- * Copyright (c) 2012 Obeo.
+ * Copyright (c) 2012, 2014 Obeo.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -55,8 +55,8 @@ public class AccessorFactoryExtensionRegistryListener extends AbstractRegistryEv try {
Integer.parseInt(rankingStr);
} catch (NumberFormatException nfe) {
- log(IStatus.ERROR, element, "Attribute '" + ATT_RANKING
- + "' is malformed, should be an integer.");
+ log(IStatus.ERROR, element, "Attribute '" + ATT_RANKING //$NON-NLS-1$
+ + "' is malformed, should be an integer."); //$NON-NLS-1$
}
logMissingAttribute(element, ATT_RANKING);
valid = false;
@@ -81,8 +81,8 @@ public class AccessorFactoryExtensionRegistryListener extends AbstractRegistryEv factory.setRanking(Integer.parseInt(element.getAttribute(ATT_RANKING)));
IAccessorFactory previous = registry.add(factory);
if (previous != null) {
- log(IStatus.WARNING, element, "The accessor factory '" + factory.getClass().getName()
- + "' is registered twice.");
+ log(IStatus.WARNING, element, "The accessor factory '" + factory.getClass().getName() //$NON-NLS-1$
+ + "' is registered twice."); //$NON-NLS-1$
}
} catch (CoreException e) {
log(element, e);
diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/contentmergeviewer/accessor/impl/ContainmentReferenceChangeAccessorImpl.java b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/contentmergeviewer/accessor/impl/ContainmentReferenceChangeAccessorImpl.java index fadf55c45..c95966bf8 100644 --- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/contentmergeviewer/accessor/impl/ContainmentReferenceChangeAccessorImpl.java +++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/contentmergeviewer/accessor/impl/ContainmentReferenceChangeAccessorImpl.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2012, 2013 Obeo. + * Copyright (c) 2012, 2014 Obeo. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -12,7 +12,7 @@ package org.eclipse.emf.compare.rcp.ui.internal.contentmergeviewer.accessor.impl import static com.google.common.collect.Iterables.filter; import static com.google.common.collect.Iterables.getFirst; -import static org.eclipse.emf.compare.utils.EMFComparePredicates.containmentReferenceChange; +import static org.eclipse.emf.compare.utils.EMFComparePredicates.CONTAINMENT_REFERENCE_CHANGE; import com.google.common.collect.ImmutableList; @@ -51,7 +51,7 @@ public class ContainmentReferenceChangeAccessorImpl extends AbstractStructuralFe @Override protected ImmutableList<Diff> computeDifferences() { List<Diff> allDifferences = getComparison().getDifferences(); - return ImmutableList.<Diff> copyOf(filter(allDifferences, containmentReferenceChange())); + return ImmutableList.<Diff> copyOf(filter(allDifferences, CONTAINMENT_REFERENCE_CHANGE)); } /** diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/contentmergeviewer/accessor/impl/ResourceContentsAccessorImpl.java b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/contentmergeviewer/accessor/impl/ResourceContentsAccessorImpl.java index 0d5b886c5..eb5b15241 100644 --- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/contentmergeviewer/accessor/impl/ResourceContentsAccessorImpl.java +++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/contentmergeviewer/accessor/impl/ResourceContentsAccessorImpl.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2013 Obeo. + * Copyright (c) 2013, 2014 Obeo. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -125,16 +125,13 @@ public class ResourceContentsAccessorImpl extends AbstractTypedElementAdapter im Object ancestor = match.getOrigin(); // Manage case where the resource attachment change is between an existing resource and an unknown // resource - if (MergeViewerUtil.getResource(getComparison(), MergeViewerSide.LEFT, - (ResourceAttachmentChange)initialDiff) == null) { + if (MergeViewerUtil.getResource(getComparison(), MergeViewerSide.LEFT, initialDiff) == null) { left = null; } - if (MergeViewerUtil.getResource(getComparison(), MergeViewerSide.RIGHT, - (ResourceAttachmentChange)initialDiff) == null) { + if (MergeViewerUtil.getResource(getComparison(), MergeViewerSide.RIGHT, initialDiff) == null) { right = null; } - if (MergeViewerUtil.getResource(getComparison(), MergeViewerSide.ANCESTOR, - (ResourceAttachmentChange)initialDiff) == null) { + if (MergeViewerUtil.getResource(getComparison(), MergeViewerSide.ANCESTOR, initialDiff) == null) { ancestor = null; } diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/emfcomparercpuimessages.properties b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/emfcomparercpuimessages.properties index c1bd22ccb..61688a286 100644 --- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/emfcomparercpuimessages.properties +++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/emfcomparercpuimessages.properties @@ -9,3 +9,21 @@ # Obeo - initial API and implementation ################################################################################ ## note : apostrophes need to be doubled in these messages or they'll be ignored +TableMergeViewer.directResourceContentsLabel = resource contents + +FilterActionMenu.tooltip = Filters + +GroupActionMenu.tooltip = Groups + +DefaultGroupProvider.label = Default + +KindGroupProvider.addition.label = Additions +KindGroupProvider.deletion.label = Deletions +KindGroupProvider.change.label = Changes +KindGroupProvider.move.label = Moves + +ThreeWayComparisonGroupProvider.conflicts.label = Conflicts +ThreeWayComparisonGroupProvider.left.label = Left Side +ThreeWayComparisonGroupProvider.right.label = Right Side + +BasicDifferenceGroup.name = Group
\ No newline at end of file diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/mergeviewer/impl/TableMergeViewer.java b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/mergeviewer/impl/TableMergeViewer.java index 2823f08f2..06a5630ad 100644 --- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/mergeviewer/impl/TableMergeViewer.java +++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/mergeviewer/impl/TableMergeViewer.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2012, 2013 Obeo. + * Copyright (c) 2012, 2014 Obeo. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -10,6 +10,7 @@ *******************************************************************************/ package org.eclipse.emf.compare.rcp.ui.internal.mergeviewer.impl; +import org.eclipse.emf.compare.rcp.ui.internal.EMFCompareRCPUIMessages; import org.eclipse.emf.compare.rcp.ui.internal.configuration.IEMFCompareConfiguration; import org.eclipse.emf.compare.rcp.ui.internal.contentmergeviewer.accessor.IStructuralFeatureAccessor; import org.eclipse.emf.compare.rcp.ui.internal.contentmergeviewer.accessor.impl.ResourceContentsAccessorImpl; @@ -272,7 +273,8 @@ public class TableMergeViewer extends TableOrTreeMergeViewer { if (getLabelProvider() instanceof ILabelProvider) { ILabelProvider labelProvider = (ILabelProvider)getLabelProvider(); - fFeatureLabel.setText("resource contents"); + fFeatureLabel.setText(EMFCompareRCPUIMessages + .getString("TableMergeViewer.directResourceContentsLabel")); //$NON-NLS-1$ fEObjectIcon.setImage(labelProvider.getImage(resource)); fEObjectLabel.setText(labelProvider.getText(resource)); diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/mergeviewer/item/impl/MergeViewerItem.java b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/mergeviewer/item/impl/MergeViewerItem.java index 80c98302b..d7cd1f40f 100644 --- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/mergeviewer/item/impl/MergeViewerItem.java +++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/mergeviewer/item/impl/MergeViewerItem.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2012, 2013 Obeo. + * Copyright (c) 2012, 2014 Obeo. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -18,7 +18,7 @@ import static com.google.common.collect.Iterables.isEmpty; import static com.google.common.collect.Iterables.size; import static com.google.common.collect.Lists.newArrayList; import static com.google.common.collect.Lists.newArrayListWithCapacity; -import static org.eclipse.emf.compare.utils.EMFComparePredicates.containmentReferenceChange; +import static org.eclipse.emf.compare.utils.EMFComparePredicates.CONTAINMENT_REFERENCE_CHANGE; import static org.eclipse.emf.compare.utils.EMFComparePredicates.onFeature; import com.google.common.base.Objects; @@ -229,11 +229,14 @@ public class MergeViewerItem extends AdapterImpl implements IMergeViewerItem { public String toString() { String className = this.getClass().getName(); int start = className.lastIndexOf('.'); - return Objects.toStringHelper(className.substring(start + 1)).add("ancestor", - EObjectUtil.getLabel((EObject)getAncestor())).add("left", - EObjectUtil.getLabel((EObject)getLeft())).add("right", - EObjectUtil.getLabel((EObject)getRight())).add("side", getSide()).add("diff", getDiff()) - .toString(); + // @formatter:off + return Objects.toStringHelper(className.substring(start + 1)) + .add("ancestor", EObjectUtil.getLabel((EObject)getAncestor())) //$NON-NLS-1$ + .add("left", EObjectUtil.getLabel((EObject)getLeft())) //$NON-NLS-1$ + .add("right", EObjectUtil.getLabel((EObject)getRight())) //$NON-NLS-1$ + .add("side", getSide()) //$NON-NLS-1$ + .add("diff", getDiff()).toString(); //$NON-NLS-1$ + // @formatter:on } /** @@ -297,7 +300,7 @@ public class MergeViewerItem extends AdapterImpl implements IMergeViewerItem { */ private Iterable<? extends Diff> getDiffsWithValue(EObject expectedValue, Match parentMatch) { Iterable<? extends Diff> diffs = filter(fComparison.getDifferences(expectedValue), - containmentReferenceChange()); + CONTAINMENT_REFERENCE_CHANGE); if (size(diffs) > 1) { throw new IllegalStateException("Should not have more than one ReferenceChange on each Match"); //$NON-NLS-1$ } else { @@ -466,7 +469,7 @@ public class MergeViewerItem extends AdapterImpl implements IMergeViewerItem { Match match = getComparison().getMatch(eObject); ReferenceChange referenceChange = (ReferenceChange)getFirst(filter(getComparison().getDifferences( - eObject), containmentReferenceChange()), null); + eObject), CONTAINMENT_REFERENCE_CHANGE), null); if (match != null) { return new MergeViewerItem.Container(getComparison(), referenceChange, match, getSide(), getAdapterFactory()); @@ -605,7 +608,7 @@ public class MergeViewerItem extends AdapterImpl implements IMergeViewerItem { final ImmutableList<Diff> differences; if (match != null) { differences = ImmutableList.copyOf(filter(match.getDifferences(), - containmentReferenceChange())); + CONTAINMENT_REFERENCE_CHANGE)); } else { differences = ImmutableList.of(); } diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/mergeviewer/item/impl/ResourceAttachmentChangeMergeViewerItem.java b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/mergeviewer/item/impl/ResourceAttachmentChangeMergeViewerItem.java index 9284ca9d1..187b3ca6d 100644 --- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/mergeviewer/item/impl/ResourceAttachmentChangeMergeViewerItem.java +++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/mergeviewer/item/impl/ResourceAttachmentChangeMergeViewerItem.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2013 Obeo. + * Copyright (c) 2013, 2014 Obeo. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -74,6 +74,7 @@ public class ResourceAttachmentChangeMergeViewerItem extends MergeViewerItem.Con * * @see org.eclipse.emf.compare.rcp.ui.internal.mergeviewer.item.impl.MergeViewerItem.Container#getChildren() */ + @SuppressWarnings("unchecked") @Override public IMergeViewerItem[] getChildren(IDifferenceGroupProvider group, Predicate<? super EObject> filters) { Object sideValue = getSideValue(getSide()); diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/actions/FilterActionMenu.java b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/actions/FilterActionMenu.java index 2cf2967cd..52cc0b8db 100644 --- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/actions/FilterActionMenu.java +++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/actions/FilterActionMenu.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2012, 2013 Obeo. + * Copyright (c) 2012, 2014 Obeo. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -14,6 +14,7 @@ import java.util.Collection; import org.eclipse.emf.compare.Comparison; import org.eclipse.emf.compare.rcp.ui.EMFCompareRCPUIPlugin; +import org.eclipse.emf.compare.rcp.ui.internal.EMFCompareRCPUIMessages; import org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.filters.IDifferenceFilter; import org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.filters.IDifferenceFilter.Registry; import org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.filters.StructureMergeViewerFilter; @@ -39,7 +40,7 @@ public class FilterActionMenu extends Action implements IMenuCreator { /** Menu Manager that will contain our menu. */ private final MenuManager menuManager; - /** The registry that will be used to retrieve available filters. */ + /** The registry that will be used to retrieve available filters. */ private final Registry registry; /** @@ -57,7 +58,7 @@ public class FilterActionMenu extends Action implements IMenuCreator { this.registry = registry; this.menuManager = new MenuManager(); setMenuCreator(this); - setToolTipText("Filters"); + setToolTipText(EMFCompareRCPUIMessages.getString("FilterActionMenu.tooltip")); //$NON-NLS-1$ setImageDescriptor(AbstractUIPlugin.imageDescriptorFromPlugin(EMFCompareRCPUIPlugin.PLUGIN_ID, "icons/full/toolb16/filter.gif")); //$NON-NLS-1$ } diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/actions/GroupActionMenu.java b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/actions/GroupActionMenu.java index aafc0a3a8..bfbe5076d 100644 --- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/actions/GroupActionMenu.java +++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/actions/GroupActionMenu.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2012, 2013 Obeo. + * Copyright (c) 2012, 2014 Obeo. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -12,6 +12,7 @@ package org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.actions; import org.eclipse.emf.compare.Comparison; import org.eclipse.emf.compare.rcp.ui.EMFCompareRCPUIPlugin; +import org.eclipse.emf.compare.rcp.ui.internal.EMFCompareRCPUIMessages; import org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.groups.IDifferenceGroupProvider; import org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.groups.StructureMergeViewerGrouper; import org.eclipse.emf.compare.scope.IComparisonScope; @@ -55,7 +56,7 @@ public class GroupActionMenu extends Action implements IMenuCreator { this.registry = registry; this.menuManager = new MenuManager(); this.structureMergeViewerGrouper = structureMergeViewerGrouper; - setToolTipText("Groups"); + setToolTipText(EMFCompareRCPUIMessages.getString("GroupActionMenu.tooltip")); //$NON-NLS-1$ setImageDescriptor(AbstractUIPlugin.imageDescriptorFromPlugin(EMFCompareRCPUIPlugin.PLUGIN_ID, "icons/full/toolb16/group.gif")); //$NON-NLS-1$ setMenuCreator(this); diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/filters/StructureMergeViewerFilter.java b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/filters/StructureMergeViewerFilter.java index f35e3a6f0..ca88f67d2 100644 --- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/filters/StructureMergeViewerFilter.java +++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/filters/StructureMergeViewerFilter.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2012, 2013 Obeo. + * Copyright (c) 2012, 2014 Obeo. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -14,7 +14,6 @@ import static com.google.common.base.Predicates.alwaysFalse; import static com.google.common.base.Predicates.not; import static com.google.common.base.Predicates.or; import static com.google.common.collect.Iterables.any; -import static com.google.common.collect.Lists.newArrayList; import static com.google.common.collect.Sets.newLinkedHashSet; import com.google.common.base.Predicate; @@ -22,7 +21,6 @@ import com.google.common.collect.Iterables; import com.google.common.eventbus.EventBus; import java.util.Collection; -import java.util.List; import java.util.Set; import org.eclipse.emf.common.notify.Adapter; @@ -34,7 +32,6 @@ import org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.filters.impl import org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.groups.provider.GroupItemProviderAdapter; import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.edit.tree.TreeNode; -import org.eclipse.jface.viewers.StructuredViewer; import org.eclipse.jface.viewers.Viewer; import org.eclipse.jface.viewers.ViewerFilter; @@ -63,9 +60,6 @@ public class StructureMergeViewerFilter extends ViewerFilter { private final Set<IDifferenceFilter> unselectedDifferenceFilters; - /** List of all TreeViewers on which this filter is applied. */ - private final List<StructuredViewer> viewers; - /** The {@link EventBus} associated with this filter. */ private final EventBus eventBus; @@ -99,7 +93,6 @@ public class StructureMergeViewerFilter extends ViewerFilter { this.predicates = newLinkedHashSet(); this.selectedDifferenceFilters = newLinkedHashSet(); this.unselectedDifferenceFilters = newLinkedHashSet(); - this.viewers = newArrayList(); this.aggregatedPredicate = DEFAULT_PREDICATE; } diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/filters/impl/DifferenceFilterExtensionRegistryListener.java b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/filters/impl/DifferenceFilterExtensionRegistryListener.java index 525a89ca6..2066474a5 100644 --- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/filters/impl/DifferenceFilterExtensionRegistryListener.java +++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/filters/impl/DifferenceFilterExtensionRegistryListener.java @@ -1,5 +1,5 @@ /*******************************************************************************
- * Copyright (c) 2012, 2013 Obeo.
+ * Copyright (c) 2012, 2014 Obeo.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -84,8 +84,8 @@ public class DifferenceFilterExtensionRegistryListener extends AbstractRegistryE }
IDifferenceFilter previous = filterRegistry.add(filter);
if (previous != null) {
- log(IStatus.WARNING, element, "The filter '" + filter.getClass().getName()
- + "' is registered twice.");
+ log(IStatus.WARNING, element, "The filter '" + filter.getClass().getName() //$NON-NLS-1$
+ + "' is registered twice."); //$NON-NLS-1$
}
} catch (CoreException e) {
log(element, e);
diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/BasicDifferenceGroupImpl.java b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/BasicDifferenceGroupImpl.java index 42167cca2..46b91a1e8 100644 --- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/BasicDifferenceGroupImpl.java +++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/BasicDifferenceGroupImpl.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2012, 2013 Obeo. + * Copyright (c) 2012, 2014 Obeo. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -20,9 +20,9 @@ import static com.google.common.collect.Iterators.concat; import static com.google.common.collect.Iterators.transform; import static com.google.common.collect.Lists.newArrayList; import static com.google.common.collect.Sets.newHashSet; -import static org.eclipse.emf.compare.utils.EMFComparePredicates.containmentMoveReferenceChange; -import static org.eclipse.emf.compare.utils.EMFComparePredicates.containmentReferenceChange; +import static org.eclipse.emf.compare.utils.EMFComparePredicates.CONTAINMENT_REFERENCE_CHANGE; import static org.eclipse.emf.compare.utils.EMFComparePredicates.hasState; +import static org.eclipse.emf.compare.utils.EMFComparePredicates.ofKind; import static org.eclipse.emf.compare.utils.EMFComparePredicates.valueIs; import com.google.common.base.Function; @@ -42,6 +42,7 @@ import org.eclipse.emf.common.notify.impl.AdapterImpl; import org.eclipse.emf.common.util.EList; import org.eclipse.emf.compare.Comparison; import org.eclipse.emf.compare.Diff; +import org.eclipse.emf.compare.DifferenceKind; import org.eclipse.emf.compare.DifferenceState; import org.eclipse.emf.compare.Match; import org.eclipse.emf.compare.MatchResource; @@ -51,6 +52,7 @@ import org.eclipse.emf.compare.provider.utils.ComposedStyledString; import org.eclipse.emf.compare.provider.utils.IStyledString; import org.eclipse.emf.compare.provider.utils.IStyledString.Style; import org.eclipse.emf.compare.rcp.ui.EMFCompareRCPUIPlugin; +import org.eclipse.emf.compare.rcp.ui.internal.EMFCompareRCPUIMessages; import org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.groups.extender.IDifferenceGroupExtender; import org.eclipse.emf.ecore.EObject; import org.eclipse.emf.ecore.util.ECrossReferenceAdapter; @@ -94,8 +96,6 @@ public class BasicDifferenceGroupImpl extends AdapterImpl implements IDifference /** The cross reference adapter that will be added to this group's children. */ private final ECrossReferenceAdapter crossReferenceAdapter; - private final IDifferenceGroupProvider groupProvider; - /** * Instantiates this group given the comparison and filter that should be used in order to determine its * list of differences. @@ -112,11 +112,11 @@ public class BasicDifferenceGroupImpl extends AdapterImpl implements IDifference * @param crossReferenceAdapter * The cross reference adapter that will be added to this group's children. */ - public BasicDifferenceGroupImpl(Comparison comparison, IDifferenceGroupProvider groupProvider, - Predicate<? super Diff> filter, ECrossReferenceAdapter crossReferenceAdapter) { - this(comparison, groupProvider, filter, - "Group", EMFCompareRCPUIPlugin.getImage("icons/full/toolb16/group.gif"), //$NON-NLS-2$ - crossReferenceAdapter); + public BasicDifferenceGroupImpl(Comparison comparison, Predicate<? super Diff> filter, + ECrossReferenceAdapter crossReferenceAdapter) { + this(comparison, filter, + EMFCompareRCPUIMessages.getString("BasicDifferenceGroup.name"), EMFCompareRCPUIPlugin //$NON-NLS-1$ + .getImage("icons/full/toolb16/group.gif"), crossReferenceAdapter); //$NON-NLS-1$ } /** @@ -141,10 +141,10 @@ public class BasicDifferenceGroupImpl extends AdapterImpl implements IDifference * @param crossReferenceAdapter * The cross reference adapter that will be added to this group's children. */ - public BasicDifferenceGroupImpl(Comparison comparison, IDifferenceGroupProvider groupProvider, - Predicate<? super Diff> filter, String name, ECrossReferenceAdapter crossReferenceAdapter) { - this(comparison, groupProvider, filter, name, EMFCompareRCPUIPlugin - .getImage("icons/full/toolb16/group.gif"), crossReferenceAdapter); //$NON-NLS-1$ + public BasicDifferenceGroupImpl(Comparison comparison, Predicate<? super Diff> filter, String name, + ECrossReferenceAdapter crossReferenceAdapter) { + this(comparison, filter, name, EMFCompareRCPUIPlugin.getImage("icons/full/toolb16/group.gif"), //$NON-NLS-1$ + crossReferenceAdapter); } /** @@ -164,11 +164,9 @@ public class BasicDifferenceGroupImpl extends AdapterImpl implements IDifference * @param crossReferenceAdapter * Updated upstream The cross reference adapter that will be added to this group's children. */ - public BasicDifferenceGroupImpl(Comparison comparison, IDifferenceGroupProvider groupProvider, - Predicate<? super Diff> filter, String name, Image image, - ECrossReferenceAdapter crossReferenceAdapter) { + public BasicDifferenceGroupImpl(Comparison comparison, Predicate<? super Diff> filter, String name, + Image image, ECrossReferenceAdapter crossReferenceAdapter) { this.comparison = comparison; - this.groupProvider = groupProvider; this.filter = filter; this.name = name; this.image = image; @@ -206,7 +204,7 @@ public class BasicDifferenceGroupImpl extends AdapterImpl implements IDifference boolean unresolvedDiffs = any(Iterators.filter(eAllData, Diff.class), hasState(DifferenceState.UNRESOLVED)); if (unresolvedDiffs) { - ret.append("> ", Style.DECORATIONS_STYLER); + ret.append("> ", Style.DECORATIONS_STYLER); //$NON-NLS-1$ } ret.append(getName()); return ret; @@ -358,7 +356,7 @@ public class BasicDifferenceGroupImpl extends AdapterImpl implements IDifference boolean hasNonEmptySubMatch = false; Set<Match> alreadyProcessedSubMatch = newHashSet(); // Manage non-containment changes - for (Diff diff : filter(match.getDifferences(), and(filter, not(or(containmentReferenceChange(), + for (Diff diff : filter(match.getDifferences(), and(filter, not(or(CONTAINMENT_REFERENCE_CHANGE, resourceAttachmentChange()))))) { if (diff.getPrimeRefining() != null && !extensionDiffProcessed.contains(diff)) { continue; @@ -380,7 +378,8 @@ public class BasicDifferenceGroupImpl extends AdapterImpl implements IDifference } } // Manage move changes - for (Diff diff : filter(match.getDifferences(), and(filter, containmentMoveReferenceChange()))) { + for (Diff diff : filter(match.getDifferences(), and(filter, and(CONTAINMENT_REFERENCE_CHANGE, + ofKind(DifferenceKind.MOVE))))) { if (!containsChildrenWithDataEqualsToDiff(treeNode, diff)) { TreeNode buildSubTree = buildSubTree(diff); if (buildSubTree != null) { @@ -499,7 +498,7 @@ public class BasicDifferenceGroupImpl extends AdapterImpl implements IDifference */ @SuppressWarnings("unchecked") protected Predicate<Diff> containmentReferenceForMatch(Match subMatch) { - return and(filter, containmentReferenceChange(), or(valueIs(subMatch.getLeft()), valueIs(subMatch + return and(filter, CONTAINMENT_REFERENCE_CHANGE, or(valueIs(subMatch.getLeft()), valueIs(subMatch .getRight()), valueIs(subMatch.getOrigin()))); } diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/extender/DifferenceGroupExtenderRegistryImpl.java b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/extender/DifferenceGroupExtenderRegistryImpl.java index 30a4ec730..e5cc70c2e 100644 --- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/extender/DifferenceGroupExtenderRegistryImpl.java +++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/extender/DifferenceGroupExtenderRegistryImpl.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2013 Obeo. + * Copyright (c) 2013, 2014 Obeo. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -24,7 +24,7 @@ import org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.groups.exten * The default implementation of the {@link Registry}. * * @author <a href="mailto:axel.richard@obeo.fr">Axel Richard</a> - * @since 3.0 + * @since 4.0 */ public class DifferenceGroupExtenderRegistryImpl implements Registry { diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/extender/DifferenceGroupExtenderRegistryListener.java b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/extender/DifferenceGroupExtenderRegistryListener.java index 4d5a5ac53..8fb58a43f 100644 --- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/extender/DifferenceGroupExtenderRegistryListener.java +++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/extender/DifferenceGroupExtenderRegistryListener.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2013 Obeo. + * Copyright (c) 2013, 2014 Obeo. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -18,7 +18,7 @@ import org.eclipse.emf.compare.rcp.extension.AbstractRegistryEventListener; /** * @author <a href="mailto:axel.richard@obeo.fr">Axel Richard</a> - * @since 3.0 + * @since 4.0 */ public class DifferenceGroupExtenderRegistryListener extends AbstractRegistryEventListener { @@ -83,8 +83,8 @@ public class DifferenceGroupExtenderRegistryListener extends AbstractRegistryEve .createExecutableExtension(ATT_CLASS); IDifferenceGroupExtender previous = extendersRegistry.add(extender); if (previous != null) { - log(IStatus.WARNING, element, "The difference group extender '" - + extender.getClass().getName() + "' is registered twice."); + log(IStatus.WARNING, element, "The difference group extender '" //$NON-NLS-1$ + + extender.getClass().getName() + "' is registered twice."); //$NON-NLS-1$ } } catch (CoreException e) { log(element, e); diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/extender/IDifferenceGroupExtender.java b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/extender/IDifferenceGroupExtender.java index e5a58d67b..11f8322b1 100644 --- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/extender/IDifferenceGroupExtender.java +++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/extender/IDifferenceGroupExtender.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2013 Obeo. + * Copyright (c) 2013, 2014 Obeo. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -19,7 +19,7 @@ import org.eclipse.emf.edit.tree.TreeNode; * in the structure merge viewer. * * @author <a href="mailto:axel.richard@obeo.fr">Axel Richard</a> - * @since 3.0 + * @since 4.0 */ public interface IDifferenceGroupExtender { diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/impl/ByResourceGroupProvider.java b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/impl/ByResourceGroupProvider.java index 80c3eafa4..78745aae0 100644 --- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/impl/ByResourceGroupProvider.java +++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/impl/ByResourceGroupProvider.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2013 Obeo. + * Copyright (c) 2013, 2014 Obeo. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -15,8 +15,8 @@ import static com.google.common.base.Predicates.not; import static com.google.common.base.Predicates.or; import static com.google.common.collect.Collections2.filter; import static com.google.common.collect.Lists.newArrayList; -import static org.eclipse.emf.compare.utils.EMFComparePredicates.containmentMoveReferenceChange; -import static org.eclipse.emf.compare.utils.EMFComparePredicates.containmentReferenceChange; +import static org.eclipse.emf.compare.utils.EMFComparePredicates.CONTAINMENT_REFERENCE_CHANGE; +import static org.eclipse.emf.compare.utils.EMFComparePredicates.ofKind; import com.google.common.base.Predicates; import com.google.common.collect.ImmutableList; @@ -27,6 +27,7 @@ import java.util.List; import org.eclipse.emf.compare.Comparison; import org.eclipse.emf.compare.Diff; +import org.eclipse.emf.compare.DifferenceKind; import org.eclipse.emf.compare.Match; import org.eclipse.emf.compare.MatchResource; import org.eclipse.emf.compare.ReferenceChange; @@ -67,7 +68,7 @@ public class ByResourceGroupProvider extends AbstractDifferenceGroupProvider { if (group == null || !comparison.equals(comp)) { dispose(); this.comp = comparison; - group = new ResourceGroup(comparison, this, getCrossReferenceAdapter()); + group = new ResourceGroup(comparison, getCrossReferenceAdapter()); } return ImmutableList.of(group); } @@ -138,9 +139,8 @@ public class ByResourceGroupProvider extends AbstractDifferenceGroupProvider { * * @see org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.groups.BasicDifferenceGroupImpl#BasicDifferenceGroupImpl(org.eclipse.emf.compare.Comparison) */ - public ResourceGroup(Comparison comparison, IDifferenceGroupProvider groupProvider, - ECrossReferenceAdapter crossReferenceAdapter) { - super(comparison, groupProvider, Predicates.<Diff> alwaysTrue(), crossReferenceAdapter); + public ResourceGroup(Comparison comparison, ECrossReferenceAdapter crossReferenceAdapter) { + super(comparison, Predicates.<Diff> alwaysTrue(), crossReferenceAdapter); } /** @@ -235,7 +235,7 @@ public class ByResourceGroupProvider extends AbstractDifferenceGroupProvider { boolean hasDiff = false; boolean hasNonEmptySubMatch = false; for (Diff diff : filter(match.getDifferences(), and(filter, not(or( - containmentReferenceChange(), resourceAttachmentChange()))))) { + CONTAINMENT_REFERENCE_CHANGE, resourceAttachmentChange()))))) { hasDiff = true; treeNode.getChildren().add(wrap(diff)); } @@ -246,7 +246,8 @@ public class ByResourceGroupProvider extends AbstractDifferenceGroupProvider { treeNode.getChildren().addAll(buildSubTree); } } - for (Diff diff : filter(match.getDifferences(), and(filter, containmentMoveReferenceChange()))) { + for (Diff diff : filter(match.getDifferences(), and(filter, and(CONTAINMENT_REFERENCE_CHANGE, + ofKind(DifferenceKind.MOVE))))) { if (!containsChildrenWithDataEqualsToDiff(treeNode, diff)) { TreeNode buildSubTree = buildSubTree(diff); if (buildSubTree != null) { diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/impl/DefaultGroupProvider.java b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/impl/DefaultGroupProvider.java index 2ff786a1f..304959f17 100644 --- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/impl/DefaultGroupProvider.java +++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/impl/DefaultGroupProvider.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2013 Obeo. + * Copyright (c) 2013, 2014 Obeo. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -17,6 +17,7 @@ import com.google.common.collect.ImmutableList; import java.util.Collection; import org.eclipse.emf.compare.Comparison; +import org.eclipse.emf.compare.rcp.ui.internal.EMFCompareRCPUIMessages; import org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.groups.BasicDifferenceGroupImpl; import org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.groups.IDifferenceGroup; import org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.groups.IDifferenceGroupProvider; @@ -41,11 +42,11 @@ public class DefaultGroupProvider extends AbstractDifferenceGroupProvider { * * @see org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.groups.IDifferenceGroupProvider#getGroups(org.eclipse.emf.compare.Comparison) */ - public Collection<? extends IDifferenceGroup> getGroups(Comparison comparison) { - if (group == null || !comparison.equals(this.comparison)) { + public Collection<? extends IDifferenceGroup> getGroups(Comparison aComparison) { + if (group == null || !aComparison.equals(this.comparison)) { dispose(); - this.comparison = comparison; - group = new BasicDifferenceGroupImpl(comparison, this, alwaysTrue(), getCrossReferenceAdapter()); + this.comparison = aComparison; + group = new BasicDifferenceGroupImpl(aComparison, alwaysTrue(), getCrossReferenceAdapter()); } return ImmutableList.of(group); } @@ -56,7 +57,7 @@ public class DefaultGroupProvider extends AbstractDifferenceGroupProvider { * @see org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.groups.IDifferenceGroupProvider#getLabel() */ public String getLabel() { - return "Default"; + return EMFCompareRCPUIMessages.getString("DefaultGroupProvider.label"); //$NON-NLS-1$ } /** @@ -92,7 +93,7 @@ public class DefaultGroupProvider extends AbstractDifferenceGroupProvider { * @see org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.groups.IDifferenceGroupProvider#isEnabled(org * .eclipse.emf.compare.scope.IComparisonScope, org.eclipse.emf.compare.Comparison) */ - public boolean isEnabled(IComparisonScope scope, Comparison comparison) { + public boolean isEnabled(IComparisonScope scope, Comparison aComparison) { return true; } diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/impl/DifferenceGroupProviderExtensionRegistryListener.java b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/impl/DifferenceGroupProviderExtensionRegistryListener.java index 389d986d6..4a7c1f779 100644 --- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/impl/DifferenceGroupProviderExtensionRegistryListener.java +++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/impl/DifferenceGroupProviderExtensionRegistryListener.java @@ -1,5 +1,5 @@ /*******************************************************************************
- * Copyright (c) 2012, 2013 Obeo.
+ * Copyright (c) 2012, 2014 Obeo.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@@ -80,8 +80,8 @@ public class DifferenceGroupProviderExtensionRegistryListener extends AbstractRe IDifferenceGroupProvider.Descriptor previous = groupProviderRegistry.add(providerDescriptor, element
.getAttribute(ATT_CLASS));
if (previous != null) {
- log(IStatus.WARNING, element, "The group provider descriptor'" + element.getAttribute(ATT_CLASS)
- + "' is registered twice.");
+ log(IStatus.WARNING, element, "The group provider descriptor'" + element.getAttribute(ATT_CLASS) //$NON-NLS-1$
+ + "' is registered twice."); //$NON-NLS-1$
}
return true;
}
diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/impl/KindGroupProvider.java b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/impl/KindGroupProvider.java index 7f70df38b..c33b01be9 100644 --- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/impl/KindGroupProvider.java +++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/impl/KindGroupProvider.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2012, 2013 Obeo. + * Copyright (c) 2012, 2014 Obeo. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -19,6 +19,7 @@ import java.util.Collection; import org.eclipse.emf.compare.Comparison; import org.eclipse.emf.compare.DifferenceKind; +import org.eclipse.emf.compare.rcp.ui.internal.EMFCompareRCPUIMessages; import org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.groups.BasicDifferenceGroupImpl; import org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.groups.IDifferenceGroup; import org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.groups.IDifferenceGroupProvider; @@ -54,14 +55,18 @@ public class KindGroupProvider extends AbstractDifferenceGroupProvider { if (differenceGroups == null || !comparison.equals(comp)) { dispose(); this.comp = comparison; - final IDifferenceGroup additions = new BasicDifferenceGroupImpl(comparison, this, - ofKind(DifferenceKind.ADD), "Additions", getCrossReferenceAdapter()); - final IDifferenceGroup deletions = new BasicDifferenceGroupImpl(comparison, this, - ofKind(DifferenceKind.DELETE), "Deletions", getCrossReferenceAdapter()); - final IDifferenceGroup changes = new BasicDifferenceGroupImpl(comparison, this, - ofKind(DifferenceKind.CHANGE), "Changes", getCrossReferenceAdapter()); - final IDifferenceGroup moves = new BasicDifferenceGroupImpl(comparison, this, - ofKind(DifferenceKind.MOVE), "Moves", getCrossReferenceAdapter()); + final IDifferenceGroup additions = new BasicDifferenceGroupImpl(comparison, + ofKind(DifferenceKind.ADD), EMFCompareRCPUIMessages + .getString("KindGroupProvider.addition.label"), getCrossReferenceAdapter()); //$NON-NLS-1$ + final IDifferenceGroup deletions = new BasicDifferenceGroupImpl(comparison, + ofKind(DifferenceKind.DELETE), EMFCompareRCPUIMessages + .getString("KindGroupProvider.deletion.label"), getCrossReferenceAdapter()); //$NON-NLS-1$ + final IDifferenceGroup changes = new BasicDifferenceGroupImpl(comparison, + ofKind(DifferenceKind.CHANGE), EMFCompareRCPUIMessages + .getString("KindGroupProvider.change.label"), getCrossReferenceAdapter()); //$NON-NLS-1$ + final IDifferenceGroup moves = new BasicDifferenceGroupImpl(comparison, + ofKind(DifferenceKind.MOVE), EMFCompareRCPUIMessages + .getString("KindGroupProvider.move.label"), getCrossReferenceAdapter()); //$NON-NLS-1$ Collection<IDifferenceGroup> groups = Lists.newArrayList(); if (!additions.getChildren().isEmpty()) { groups.add(additions); diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/impl/ThreeWayComparisonGroupProvider.java b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/impl/ThreeWayComparisonGroupProvider.java index 1de06184f..e490b9aa2 100644 --- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/impl/ThreeWayComparisonGroupProvider.java +++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/structuremergeviewer/groups/impl/ThreeWayComparisonGroupProvider.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2013 Obeo. + * Copyright (c) 2013, 2014 Obeo. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -43,6 +43,7 @@ import org.eclipse.emf.compare.provider.utils.ComposedStyledString; import org.eclipse.emf.compare.provider.utils.IStyledString; import org.eclipse.emf.compare.provider.utils.IStyledString.IComposedStyledString; import org.eclipse.emf.compare.provider.utils.IStyledString.Style; +import org.eclipse.emf.compare.rcp.ui.internal.EMFCompareRCPUIMessages; import org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.groups.BasicDifferenceGroupImpl; import org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.groups.IDifferenceGroup; import org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.groups.IDifferenceGroupProvider; @@ -81,14 +82,17 @@ public class ThreeWayComparisonGroupProvider extends AbstractDifferenceGroupProv if (differenceGroups == null || !comparison.equals(comp)) { dispose(); this.comp = comparison; - final IDifferenceGroup conflicts = new ConflictsGroupImpl(comparison, this, hasConflict( - ConflictKind.REAL, ConflictKind.PSEUDO), "Conflicts", getCrossReferenceAdapter()); - final IDifferenceGroup leftSide = new BasicDifferenceGroupImpl(comparison, this, Predicates.and( + final IDifferenceGroup conflicts = new ConflictsGroupImpl(comparison, hasConflict( + ConflictKind.REAL, ConflictKind.PSEUDO), EMFCompareRCPUIMessages + .getString("ThreeWayComparisonGroupProvider.conflicts.label"), getCrossReferenceAdapter()); //$NON-NLS-1$ + final IDifferenceGroup leftSide = new BasicDifferenceGroupImpl(comparison, Predicates.and( fromSide(DifferenceSource.LEFT), Predicates.not(hasConflict(ConflictKind.REAL, - ConflictKind.PSEUDO))), "Left side", getCrossReferenceAdapter()); - final IDifferenceGroup rightSide = new BasicDifferenceGroupImpl(comparison, this, Predicates.and( + ConflictKind.PSEUDO))), EMFCompareRCPUIMessages + .getString("ThreeWayComparisonGroupProvider.left.label"), getCrossReferenceAdapter()); //$NON-NLS-1$ + final IDifferenceGroup rightSide = new BasicDifferenceGroupImpl(comparison, Predicates.and( fromSide(DifferenceSource.RIGHT), Predicates.not(hasConflict(ConflictKind.REAL, - ConflictKind.PSEUDO))), "Right side", getCrossReferenceAdapter()); + ConflictKind.PSEUDO))), EMFCompareRCPUIMessages + .getString("ThreeWayComparisonGroupProvider.right.label"), getCrossReferenceAdapter()); //$NON-NLS-1$ differenceGroups = ImmutableList.of(conflicts, leftSide, rightSide); } @@ -157,9 +161,9 @@ public class ThreeWayComparisonGroupProvider extends AbstractDifferenceGroupProv * @see org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.groups.BasicDifferenceGroupImpl#BasicDifferenceGroupImpl(org.eclipse.emf.compare.Comparison, * java.lang.Iterable, com.google.common.base.Predicate, java.lang.String) */ - public ConflictsGroupImpl(Comparison comparison, IDifferenceGroupProvider groupProvider, - Predicate<? super Diff> filter, String name, ECrossReferenceAdapter crossReferenceAdapter) { - super(comparison, groupProvider, filter, name, crossReferenceAdapter); + public ConflictsGroupImpl(Comparison comparison, Predicate<? super Diff> filter, String name, + ECrossReferenceAdapter crossReferenceAdapter) { + super(comparison, filter, name, crossReferenceAdapter); } /** @@ -177,7 +181,7 @@ public class ThreeWayComparisonGroupProvider extends AbstractDifferenceGroupProv boolean unresolvedDiffs = any(diffs, and(hasState(DifferenceState.UNRESOLVED), hasConflict( ConflictKind.REAL, ConflictKind.PSEUDO))); if (unresolvedDiffs) { - ret.append("> ", Style.DECORATIONS_STYLER); + ret.append("> ", Style.DECORATIONS_STYLER); //$NON-NLS-1$ } ret.append(getName()); return ret; diff --git a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/util/MergeViewerUtil.java b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/util/MergeViewerUtil.java index b6cc96162..b7259d778 100644 --- a/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/util/MergeViewerUtil.java +++ b/plugins/org.eclipse.emf.compare.rcp.ui/src/org/eclipse/emf/compare/rcp/ui/internal/util/MergeViewerUtil.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2012, 2013 Obeo. + * Copyright (c) 2012, 2014 Obeo. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -30,7 +30,6 @@ import org.eclipse.emf.compare.Match; import org.eclipse.emf.compare.MatchResource; import org.eclipse.emf.compare.ReferenceChange; import org.eclipse.emf.compare.ResourceAttachmentChange; -import org.eclipse.emf.compare.internal.utils.DiffUtil; import org.eclipse.emf.compare.rcp.ui.internal.mergeviewer.IMergeViewer.MergeViewerSide; import org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.groups.IDifferenceGroup; import org.eclipse.emf.compare.rcp.ui.internal.structuremergeviewer.groups.IDifferenceGroupProvider; @@ -325,11 +324,18 @@ public final class MergeViewerUtil { } /** - * Predicates that apply {@link DiffUtil#isPrimeRefining(EObject)}. + * Check if the given object is a Diff that is a prime refining of one of its refine diffs. */ private static final Predicate<EObject> IS_PRIME_REFINING = new Predicate<EObject>() { public boolean apply(EObject eObject) { - return DiffUtil.isPrimeRefining(eObject); + if (eObject instanceof Diff) { + for (Diff refine : ((Diff)eObject).getRefines()) { + if (refine.getPrimeRefining() == eObject) { + return true; + } + } + } + return false; } }; } |