applying code changes to fix ticket issue #637. You can now work with files and get...
authorEdward Mann <phpeclipse.dev@edmann.com>
Thu, 24 Jan 2008 05:26:47 +0000 (05:26 +0000)
committerEdward Mann <phpeclipse.dev@edmann.com>
Thu, 24 Jan 2008 05:26:47 +0000 (05:26 +0000)
net.sourceforge.phpeclipse/src/net/sourceforge/phpeclipse/phpeditor/PHPEditor.java

index a3605cb..d144789 100644 (file)
@@ -61,17 +61,18 @@ import net.sourceforge.phpdt.ui.text.JavaTextTools;
 import net.sourceforge.phpdt.ui.text.PHPSourceViewerConfiguration;
 import net.sourceforge.phpdt.ui.text.folding.IJavaFoldingStructureProvider;
 import net.sourceforge.phpeclipse.PHPeclipsePlugin;
-import net.sourceforge.phpeclipse.ui.IPreferenceConstants;
 import net.sourceforge.phpeclipse.ui.editor.BrowserUtil;
-import net.sourceforge.phpeclipse.ui.overlaypages.ProjectPrefUtil;
 import net.sourceforge.phpeclipse.webbrowser.views.BrowserView;
 
+import org.eclipse.core.resources.IFile;
 import org.eclipse.core.resources.IMarker;
 import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.ResourcesPlugin;
 import org.eclipse.core.runtime.CoreException;
 import org.eclipse.core.runtime.IProgressMonitor;
 import org.eclipse.core.runtime.IStatus;
 import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Path;
 import org.eclipse.core.runtime.Preferences;
 import org.eclipse.core.runtime.Status;
 import org.eclipse.core.runtime.jobs.Job;
@@ -178,6 +179,7 @@ import org.eclipse.ui.actions.ActionGroup;
 import org.eclipse.ui.editors.text.DefaultEncodingSupport;
 import org.eclipse.ui.editors.text.EditorsUI;
 import org.eclipse.ui.editors.text.IEncodingSupport;
+import org.eclipse.ui.ide.FileStoreEditorInput;
 import org.eclipse.ui.part.FileEditorInput;
 import org.eclipse.ui.part.IShowInSource;
 import org.eclipse.ui.part.IShowInTargetList;
@@ -5874,13 +5876,20 @@ public abstract class PHPEditor extends AbstractDecoratedTextEditor implements
        }
 
        public ShowInContext getShowInContext() {
-               FileEditorInput fei = (FileEditorInput) getEditorInput();
-               ShowInContext context = BrowserUtil.getShowInContext(fei.getFile(),
+               IFile file;
+               if(getEditorInput() instanceof FileStoreEditorInput){
+                       FileStoreEditorInput fei = (FileStoreEditorInput) getEditorInput();
+                       file = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(fei.getURI().getPath()));
+               } else {
+                       FileEditorInput fei = (FileEditorInput) getEditorInput();
+                       file = ResourcesPlugin.getWorkspace().getRoot().getFile(fei.getPath());
+               }
+               ShowInContext context = BrowserUtil.getShowInContext(file,
                                false, "");
                if (context != null) {
                        return context;
                }
-               return new ShowInContext(fei.getFile(), null);
+               return new ShowInContext(file, null);
        }
 
        public String[] getShowInTargetIds() {