|
From: Christopher W. <caw...@us...> - 2006-04-04 23:06:26
|
Update of /cvsroot/rubyeclipse/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20546/src/org/rubypeople/rdt/internal/core Modified Files: RubyModelManager.java Log Message: fix null pointer bug on RubyBrowsingPart.setInitialSelection Index: RubyModelManager.java =================================================================== RCS file: /cvsroot/rubyeclipse/org.rubypeople.rdt.core/src/org/rubypeople/rdt/internal/core/RubyModelManager.java,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** RubyModelManager.java 10 Feb 2006 18:29:16 -0000 1.7 --- RubyModelManager.java 4 Apr 2006 23:06:22 -0000 1.8 *************** *** 11,17 **** --- 11,21 ---- import java.util.Map; + import org.eclipse.core.resources.IFile; + import org.eclipse.core.resources.IFolder; import org.eclipse.core.resources.IProject; + import org.eclipse.core.resources.IResource; import org.eclipse.core.resources.IResourceChangeEvent; import org.eclipse.core.resources.IWorkspace; + import org.eclipse.core.resources.IWorkspaceRoot; import org.eclipse.core.resources.ResourcesPlugin; import org.eclipse.core.runtime.CoreException; *************** *** 38,41 **** --- 42,46 ---- import org.rubypeople.rdt.internal.core.buffer.BufferManager; import org.rubypeople.rdt.internal.core.builder.RubyBuilder; + import org.rubypeople.rdt.internal.core.util.Util; /** *************** *** 722,728 **** public void contentTypeChanged(ContentTypeChangeEvent event) { ! // TODO Change our classes which determine if a file is "Ruby-like" ! //Util.resetRubyLikeExtensions(); } } --- 727,751 ---- public void contentTypeChanged(ContentTypeChangeEvent event) { ! Util.resetRubyLikeExtensions(); } + public static IRubyElement create(IResource resource, IRubyProject project) { + if (resource == null) { + return null; + } + int type = resource.getType(); + switch (type) { + case IResource.PROJECT : + return RubyCore.create((IProject) resource); + case IResource.FILE : + return create((IFile) resource, project); + case IResource.FOLDER : + return create((IFolder) resource, project); + case IResource.ROOT : + return RubyCore.create((IWorkspaceRoot) resource); + default : + return null; + } + } + } |