Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/mappings/OpenChangeSetAction.java')
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/mappings/OpenChangeSetAction.java204
1 files changed, 102 insertions, 102 deletions
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/mappings/OpenChangeSetAction.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/mappings/OpenChangeSetAction.java
index 7cd2e0035..58b40232e 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/mappings/OpenChangeSetAction.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/mappings/OpenChangeSetAction.java
@@ -45,25 +45,25 @@ import com.ibm.icu.text.DateFormat;
class OpenChangeSetAction extends ResourceModelParticipantAction {
- protected OpenChangeSetAction(ISynchronizePageConfiguration configuration) {
- super(CVSUIMessages.OpenCommitSetAction_20, configuration);
+ protected OpenChangeSetAction(ISynchronizePageConfiguration configuration) {
+ super(CVSUIMessages.OpenCommitSetAction_20, configuration);
ISelection selection = configuration.getSite().getSelectionProvider().getSelection();
if (selection != null)
selectionChanged(selection);
- }
-
- private ChangeSet getChangeSet(IStructuredSelection selection) {
- // First, check to see if a change set is selected directly
- if (selection.size() == 1) {
- Object o = selection.getFirstElement();
- if (o instanceof IAdaptable) {
- ChangeSet set = ((IAdaptable)o).getAdapter(ChangeSet.class);
- if (set != null)
- return set;
- }
- }
- // Failing that, check to see if all the selected elements and their children are in the same change set
- if (selection instanceof TreeSelection) {
+ }
+
+ private ChangeSet getChangeSet(IStructuredSelection selection) {
+ // First, check to see if a change set is selected directly
+ if (selection.size() == 1) {
+ Object o = selection.getFirstElement();
+ if (o instanceof IAdaptable) {
+ ChangeSet set = ((IAdaptable)o).getAdapter(ChangeSet.class);
+ if (set != null)
+ return set;
+ }
+ }
+ // Failing that, check to see if all the selected elements and their children are in the same change set
+ if (selection instanceof TreeSelection) {
TreeSelection ts = (TreeSelection) selection;
TreePath[] paths = ts.getPaths();
if (paths.length > 0) {
@@ -79,8 +79,8 @@ class OpenChangeSetAction extends ResourceModelParticipantAction {
return set;
}
}
- return null;
- }
+ return null;
+ }
private ChangeSet getChangeSet(TreePath treePath) {
Object test = treePath.getFirstSegment();
@@ -90,70 +90,70 @@ class OpenChangeSetAction extends ResourceModelParticipantAction {
}
return null;
}
-
+
@Override
protected boolean isEnabledForSelection(IStructuredSelection selection) {
- // The selection only contains appropriate files so
- // only enable if the selection is contained within a single change set
- ChangeSet set = getChangeSet(selection);
- return set != null;
+ // The selection only contains appropriate files so
+ // only enable if the selection is contained within a single change set
+ ChangeSet set = getChangeSet(selection);
+ return set != null;
}
- public void openEditor(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException {
- try {
+ public void openEditor(IProgressMonitor monitor) throws InvocationTargetException, InterruptedException {
+ try {
IDiff[] diffs = getSelectedDiffs(monitor);
if (diffs.length > 0) {
- ICVSRepositoryLocation location = getLocation(diffs[0]);
- if (location == null) {
- throw new CVSException(CVSUIMessages.OpenCommitSetAction_21);
- }
- CompareTreeBuilder builder = new CompareTreeBuilder(location, null, null);
- if (buildTrees(builder, diffs)) {
- builder.cacheContents(monitor);
- builder.openCompareEditor(getConfiguration().getSite().getPart().getSite().getPage(), getCompareTitle(), getCompareToolTip());
- }
+ ICVSRepositoryLocation location = getLocation(diffs[0]);
+ if (location == null) {
+ throw new CVSException(CVSUIMessages.OpenCommitSetAction_21);
+ }
+ CompareTreeBuilder builder = new CompareTreeBuilder(location, null, null);
+ if (buildTrees(builder, diffs)) {
+ builder.cacheContents(monitor);
+ builder.openCompareEditor(getConfiguration().getSite().getPart().getSite().getPage(), getCompareTitle(), getCompareToolTip());
+ }
}
} catch (CoreException e) {
throw new InvocationTargetException(e);
}
- }
-
- private IDiff[] getSelectedDiffs(IProgressMonitor monitor) throws CoreException {
- ResourceTraversal[] traversals = getResourceTraversals(getStructuredSelection(), monitor);
- DiffChangeSet set = (DiffChangeSet)getChangeSet(getStructuredSelection());
+ }
+
+ private IDiff[] getSelectedDiffs(IProgressMonitor monitor) throws CoreException {
+ ResourceTraversal[] traversals = getResourceTraversals(getStructuredSelection(), monitor);
+ DiffChangeSet set = (DiffChangeSet)getChangeSet(getStructuredSelection());
return set.getDiffTree().getDiffs(traversals);
}
/*
- * Build the trees that will be compared
- */
- private boolean buildTrees(CompareTreeBuilder builder, IDiff[] diffs) {
- for (int i = 0; i < diffs.length; i++) {
+ * Build the trees that will be compared
+ */
+ private boolean buildTrees(CompareTreeBuilder builder, IDiff[] diffs) {
+ for (int i = 0; i < diffs.length; i++) {
IDiff diff = diffs[i];
if (isFileChange(diff)) {
- IFileRevision remoteRevision = Utils.getRemote(diff);
- IResourceVariant remote = SyncInfoToDiffConverter.asResourceVariant(remoteRevision);
- if (remote == null) {
- IFileRevision predecessorRevision = Utils.getBase(diff);
- IResourceVariant predecessor = SyncInfoToDiffConverter.asResourceVariant(predecessorRevision);
- if (predecessor instanceof ICVSRemoteFile) {
- builder.addToTrees((ICVSRemoteFile)predecessor, null);
- }
- } else if (remote instanceof ICVSRemoteFile) {
- try {
- ICVSRemoteFile predecessor = getImmediatePredecessor(remote);
- builder.addToTrees(predecessor, (ICVSRemoteFile)remote);
- } catch (TeamException e) {
- Utils.handle(e);
- return false;
- }
- }
+ IFileRevision remoteRevision = Utils.getRemote(diff);
+ IResourceVariant remote = SyncInfoToDiffConverter.asResourceVariant(remoteRevision);
+ if (remote == null) {
+ IFileRevision predecessorRevision = Utils.getBase(diff);
+ IResourceVariant predecessor = SyncInfoToDiffConverter.asResourceVariant(predecessorRevision);
+ if (predecessor instanceof ICVSRemoteFile) {
+ builder.addToTrees((ICVSRemoteFile)predecessor, null);
+ }
+ } else if (remote instanceof ICVSRemoteFile) {
+ try {
+ ICVSRemoteFile predecessor = getImmediatePredecessor(remote);
+ builder.addToTrees(predecessor, (ICVSRemoteFile)remote);
+ } catch (TeamException e) {
+ Utils.handle(e);
+ return false;
+ }
+ }
}
- }
- return true;
- }
-
- private boolean isFileChange(IDiff diff) {
+ }
+ return true;
+ }
+
+ private boolean isFileChange(IDiff diff) {
IResource resource = ResourceDiffTree.getResourceFor(diff);
if (resource.getType() == IResource.FILE) {
if (diff instanceof IThreeWayDiff) {
@@ -166,9 +166,9 @@ class OpenChangeSetAction extends ResourceModelParticipantAction {
}
private ICVSRepositoryLocation getLocation(IDiff diff) {
- IResource resource = ResourceDiffTree.getResourceFor(diff);
- RepositoryProvider provider = RepositoryProvider.getProvider(resource.getProject());
- if (provider instanceof CVSTeamProvider) {
+ IResource resource = ResourceDiffTree.getResourceFor(diff);
+ RepositoryProvider provider = RepositoryProvider.getProvider(resource.getProject());
+ if (provider instanceof CVSTeamProvider) {
CVSTeamProvider ctp = (CVSTeamProvider) provider;
try {
return ctp.getCVSWorkspaceRoot().getRemoteLocation();
@@ -176,46 +176,46 @@ class OpenChangeSetAction extends ResourceModelParticipantAction {
CVSUIPlugin.log(e);
}
}
- return null;
- }
-
- private String getCompareTitle() {
- ChangeSet set = getChangeSet(getStructuredSelection());
- if (set instanceof CVSCheckedInChangeSet) {
- CVSCheckedInChangeSet cics = (CVSCheckedInChangeSet)set;
- String date = DateFormat.getDateTimeInstance().format(cics.getDate());
- return NLS.bind(CVSUIMessages.OpenChangeSetAction_0, new String[] {cics.getAuthor(), date});
- }
- return CVSUIMessages.OpenChangeSetAction_1;
- }
-
- private String getCompareToolTip() {
- ChangeSet set = getChangeSet(getStructuredSelection());
- if (set != null)
- return set.getName();
- return null;
- }
-
- private ICVSRemoteFile getImmediatePredecessor(IResourceVariant remote) throws TeamException {
- CheckedInChangeSetCollector changeSetCollector = getChangeSetCollector();
- if (changeSetCollector != null) {
- return changeSetCollector.getImmediatePredecessor((ICVSRemoteFile)remote);
- }
- return null;
- }
+ return null;
+ }
+
+ private String getCompareTitle() {
+ ChangeSet set = getChangeSet(getStructuredSelection());
+ if (set instanceof CVSCheckedInChangeSet) {
+ CVSCheckedInChangeSet cics = (CVSCheckedInChangeSet)set;
+ String date = DateFormat.getDateTimeInstance().format(cics.getDate());
+ return NLS.bind(CVSUIMessages.OpenChangeSetAction_0, new String[] {cics.getAuthor(), date});
+ }
+ return CVSUIMessages.OpenChangeSetAction_1;
+ }
+
+ private String getCompareToolTip() {
+ ChangeSet set = getChangeSet(getStructuredSelection());
+ if (set != null)
+ return set.getName();
+ return null;
+ }
+
+ private ICVSRemoteFile getImmediatePredecessor(IResourceVariant remote) throws TeamException {
+ CheckedInChangeSetCollector changeSetCollector = getChangeSetCollector();
+ if (changeSetCollector != null) {
+ return changeSetCollector.getImmediatePredecessor((ICVSRemoteFile)remote);
+ }
+ return null;
+ }
- private CheckedInChangeSetCollector getChangeSetCollector() {
- return (CheckedInChangeSetCollector)getConfiguration().getProperty(CVSChangeSetCollector.CVS_CHECKED_IN_COLLECTOR);
- }
-
- @Override
+ private CheckedInChangeSetCollector getChangeSetCollector() {
+ return (CheckedInChangeSetCollector)getConfiguration().getProperty(CVSChangeSetCollector.CVS_CHECKED_IN_COLLECTOR);
+ }
+
+ @Override
public void run() {
- try {
+ try {
PlatformUI.getWorkbench().getProgressService().run(true, true, monitor -> openEditor(monitor));
} catch (InvocationTargetException e) {
Utils.handle(e);
} catch (InterruptedException e) {
// Ignore
}
- }
+ }
}

Back to the top