|
From: <caw...@us...> - 2007-07-16 13:45:38
|
Revision: 2763
http://svn.sourceforge.net/rubyeclipse/?rev=2763&view=rev
Author: cawilliams
Date: 2007-07-16 06:45:35 -0700 (Mon, 16 Jul 2007)
Log Message:
-----------
when trying to open a ruby file, if project doesn't have ruby nature, add it first. This basically automatically makes any project where a user opens a.rb file into a ruby project automatically under the hood.
Modified Paths:
--------------
trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/rubyeditor/RubyDocumentProvider.java
Modified: trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/rubyeditor/RubyDocumentProvider.java
===================================================================
--- trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/rubyeditor/RubyDocumentProvider.java 2007-07-13 14:10:00 UTC (rev 2762)
+++ trunk/org.rubypeople.rdt.ui/src/org/rubypeople/rdt/internal/ui/rubyeditor/RubyDocumentProvider.java 2007-07-16 13:45:35 UTC (rev 2763)
@@ -6,6 +6,7 @@
import org.eclipse.core.resources.IFile;
import org.eclipse.core.resources.IMarker;
+import org.eclipse.core.resources.IProject;
import org.eclipse.core.resources.IResource;
import org.eclipse.core.runtime.CoreException;
import org.eclipse.core.runtime.IProgressMonitor;
@@ -48,11 +49,13 @@
import org.eclipse.ui.texteditor.MarkerUtilities;
import org.eclipse.ui.texteditor.ResourceMarkerAnnotationModel;
import org.rubypeople.rdt.core.IProblemRequestor;
+import org.rubypeople.rdt.core.IRubyProject;
import org.rubypeople.rdt.core.IRubyScript;
import org.rubypeople.rdt.core.RubyCore;
import org.rubypeople.rdt.core.RubyModelException;
import org.rubypeople.rdt.core.compiler.CategorizedProblem;
import org.rubypeople.rdt.core.compiler.IProblem;
+import org.rubypeople.rdt.internal.core.RubyProject;
import org.rubypeople.rdt.internal.ui.RubyPlugin;
import org.rubypeople.rdt.internal.ui.RubyPluginImages;
import org.rubypeople.rdt.internal.ui.text.ruby.IProblemRequestorExtension;
@@ -209,7 +212,12 @@
extension.setIsActive(false);
extension.setIsHandlingTemporaryProblems(isHandlingTemporaryProblems());
}
-
+ // FIXME If project doesn't have ruby nature, add it here
+ IRubyProject project = original.getRubyProject();
+ IProject iProject = input.getFile().getProject();
+ if (!RubyProject.hasRubyNature(iProject)) {
+ RubyCore.addRubyNature(iProject, null);
+ }
original.becomeWorkingCopy(requestor, getProgressMonitor());
cuInfo.fCopy = original;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|