Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Valenta2005-03-21 15:19:49 +0000
committerMichael Valenta2005-03-21 15:19:49 +0000
commit881b44d0c439a5f3cf2359888ea5e370061cd87d (patch)
treeda235d2ae191080c9cb94cd1a5996403abc6abbe
parent07168238457bbd675afb6d9cb77f169388a1ab6c (diff)
downloadeclipse.platform.team-881b44d0c439a5f3cf2359888ea5e370061cd87d.tar.gz
eclipse.platform.team-881b44d0c439a5f3cf2359888ea5e370061cd87d.tar.xz
eclipse.platform.team-881b44d0c439a5f3cf2359888ea5e370061cd87d.zip
Bug 88456 Should avoid explicit checks for [I]FileEditorInput
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/HistoryView.java10
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/RemoteRevisionQuickDiffProvider.java10
-rw-r--r--bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/CVSAction.java10
3 files changed, 18 insertions, 12 deletions
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/HistoryView.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/HistoryView.java
index c5f62d5ea..b5fa5a70c 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/HistoryView.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/HistoryView.java
@@ -46,6 +46,7 @@ import org.eclipse.team.internal.ui.Utils;
import org.eclipse.team.ui.synchronize.SyncInfoCompareInput;
import org.eclipse.ui.*;
import org.eclipse.ui.help.WorkbenchHelp;
+import org.eclipse.ui.ide.ResourceUtil;
import org.eclipse.ui.part.ResourceTransfer;
import org.eclipse.ui.part.ViewPart;
import org.eclipse.ui.texteditor.ITextEditorActionConstants;
@@ -697,10 +698,11 @@ public class HistoryView extends ViewPart {
showHistory(remote, false);
}
// Handle regular file editors
- } else if (input instanceof IFileEditorInput) {
- IFileEditorInput fileInput = (IFileEditorInput) input;
- IFile file = fileInput.getFile();
- showHistory(file, false /* don't fetch if already cached */);
+ } else {
+ IFile file = ResourceUtil.getFile(input);
+ if(file != null) {
+ showHistory(file, false /* don't fetch if already cached */);
+ }
}
}
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/RemoteRevisionQuickDiffProvider.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/RemoteRevisionQuickDiffProvider.java
index 047107882..6b63b9bb0 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/RemoteRevisionQuickDiffProvider.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/RemoteRevisionQuickDiffProvider.java
@@ -25,8 +25,8 @@ import org.eclipse.team.core.synchronize.SyncInfo;
import org.eclipse.team.internal.ccvs.core.*;
import org.eclipse.team.internal.ccvs.core.resources.CVSWorkspaceRoot;
import org.eclipse.ui.IEditorInput;
-import org.eclipse.ui.IFileEditorInput;
import org.eclipse.ui.editors.text.IStorageDocumentProvider;
+import org.eclipse.ui.ide.ResourceUtil;
import org.eclipse.ui.texteditor.*;
import org.eclipse.ui.texteditor.quickdiff.IQuickDiffReferenceProvider;
@@ -137,7 +137,8 @@ public class RemoteRevisionQuickDiffProvider implements IQuickDiffReferenceProvi
* @see org.eclipse.ui.texteditor.quickdiff.IQuickDiffProviderImplementation#setActiveEditor(org.eclipse.ui.texteditor.ITextEditor)
*/
public void setActiveEditor(ITextEditor targetEditor) {
- if(! (targetEditor.getEditorInput() instanceof IFileEditorInput)) return;
+ IEditorInput editorInput = targetEditor.getEditorInput();
+ if (editorInput == null || ResourceUtil.getFile(editorInput) == null) return;
fEditor = targetEditor;
fDocumentProvider= fEditor.getDocumentProvider();
@@ -318,9 +319,8 @@ public class RemoteRevisionQuickDiffProvider implements IQuickDiffReferenceProvi
private IFile getFileFromEditor() {
if(fEditor != null) {
IEditorInput input= fEditor.getEditorInput();
- if (input instanceof IFileEditorInput) {
- return ((IFileEditorInput)input).getFile();
- }
+ IFile file = ResourceUtil.getFile(input);
+ return file;
}
return null;
}
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/CVSAction.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/CVSAction.java
index 6571f6ca0..df59b0c2b 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/CVSAction.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/actions/CVSAction.java
@@ -12,6 +12,8 @@ package org.eclipse.team.internal.ccvs.ui.actions;
import java.lang.reflect.InvocationTargetException;
import java.util.*;
+
+import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IResource;
import org.eclipse.core.runtime.*;
import org.eclipse.jface.action.IAction;
@@ -38,6 +40,7 @@ import org.eclipse.ui.*;
import org.eclipse.ui.actions.RetargetAction;
import org.eclipse.ui.commands.*;
import org.eclipse.ui.ide.IDE;
+import org.eclipse.ui.ide.ResourceUtil;
/**
* CVSAction is the common superclass for all CVS actions. It provides
@@ -610,9 +613,10 @@ abstract public class CVSAction extends TeamAction implements IEditorActionDeleg
// If the action is run from within an editor, try and find the
// file for the given editor.
if(part != null && part instanceof IEditorPart) {
- Object input = ((IEditorPart)part).getEditorInput();
- if(input instanceof IFileEditorInput) {
- selectionChanged((IAction)null, new StructuredSelection(((IFileEditorInput)input).getFile()));
+ IEditorInput input = ((IEditorPart)part).getEditorInput();
+ IFile file = ResourceUtil.getFile(input);
+ if(file != null) {
+ selectionChanged((IAction)null, new StructuredSelection(file));
}
} else {
// Fallback is to prime the action with the selection

Back to the top