diff options
author | Michael Valenta | 2007-05-15 14:44:13 +0000 |
---|---|---|
committer | Michael Valenta | 2007-05-15 14:44:13 +0000 |
commit | 6784f81e6721738b5e61e12ebb6196bf8bd526bc (patch) | |
tree | aaf0789f4f9db634f1dd964a9e354de5f15b6591 /examples | |
parent | c2047206dc82bf5ae63e95bc0caeaef8cfdafd7d (diff) | |
download | eclipse.platform.team-6784f81e6721738b5e61e12ebb6196bf8bd526bc.tar.gz eclipse.platform.team-6784f81e6721738b5e61e12ebb6196bf8bd526bc.tar.xz eclipse.platform.team-6784f81e6721738b5e61e12ebb6196bf8bd526bc.zip |
Bug 186166 [Examples] Synchronize and compare with Latest From Local History
Diffstat (limited to 'examples')
-rw-r--r-- | examples/org.eclipse.team.examples.filesystem/src/org/eclipse/team/examples/localhistory/LocalHistoryParticipant.java | 35 |
1 files changed, 34 insertions, 1 deletions
diff --git a/examples/org.eclipse.team.examples.filesystem/src/org/eclipse/team/examples/localhistory/LocalHistoryParticipant.java b/examples/org.eclipse.team.examples.filesystem/src/org/eclipse/team/examples/localhistory/LocalHistoryParticipant.java index 143dd5082..63ed6695c 100644 --- a/examples/org.eclipse.team.examples.filesystem/src/org/eclipse/team/examples/localhistory/LocalHistoryParticipant.java +++ b/examples/org.eclipse.team.examples.filesystem/src/org/eclipse/team/examples/localhistory/LocalHistoryParticipant.java @@ -10,16 +10,27 @@ *******************************************************************************/ package org.eclipse.team.examples.localhistory; +import org.eclipse.compare.CompareConfiguration; import org.eclipse.compare.structuremergeviewer.IDiffElement; import org.eclipse.core.runtime.CoreException; import org.eclipse.core.runtime.IAdaptable; +import org.eclipse.core.runtime.IProgressMonitor; import org.eclipse.jface.viewers.ILabelDecorator; import org.eclipse.jface.viewers.LabelProvider; +import org.eclipse.osgi.util.NLS; import org.eclipse.swt.graphics.Image; +import org.eclipse.team.core.TeamException; import org.eclipse.team.core.subscribers.Subscriber; import org.eclipse.team.core.synchronize.SyncInfo; +import org.eclipse.team.core.variants.IResourceVariant; import org.eclipse.team.ui.TeamUI; -import org.eclipse.team.ui.synchronize.*; +import org.eclipse.team.ui.synchronize.ISynchronizeModelElement; +import org.eclipse.team.ui.synchronize.ISynchronizePageConfiguration; +import org.eclipse.team.ui.synchronize.ISynchronizeParticipantDescriptor; +import org.eclipse.team.ui.synchronize.SubscriberParticipant; +import org.eclipse.team.ui.synchronize.SynchronizeModelAction; +import org.eclipse.team.ui.synchronize.SynchronizeModelOperation; +import org.eclipse.team.ui.synchronize.SynchronizePageActionGroup; public class LocalHistoryParticipant extends SubscriberParticipant { @@ -84,4 +95,26 @@ public class LocalHistoryParticipant extends SubscriberParticipant { configuration.addActionContribution(new LocalHistoryActionContribution()); configuration.addLabelDecorator(new LocalHistoryDecorator()); } + + protected static SyncInfo getSyncInfo(ISynchronizeModelElement element) { + if (element instanceof IAdaptable) { + return (SyncInfo)((IAdaptable)element).getAdapter(SyncInfo.class); + } + return null; + } + + public void prepareCompareInput(ISynchronizeModelElement element, + CompareConfiguration config, IProgressMonitor monitor) + throws TeamException { + super.prepareCompareInput(element, config, monitor); + + SyncInfo sync = getSyncInfo(element); + final IResourceVariant remote = sync.getRemote(); + if (remote != null) { + config.setRightLabel(NLS.bind("Local History ({0})", + new String[] { remote.getContentIdentifier() })); + } else { + config.setRightLabel("Local History"); + } + } } |