Author: scabanovich
Date: 2008-12-18 09:18:44 -0500 (Thu, 18 Dec 2008)
New Revision: 12671
Modified:
trunk/seam/plugins/org.jboss.tools.seam.pages.xml/src/org/jboss/tools/seam/pages/xml/model/ViewIdsTree.java
Log:
JBIDE-3145
Fixed for case, when pages.xml is opened from a project that has no Seam support: null
object was included into tree, and it failed.
Modified:
trunk/seam/plugins/org.jboss.tools.seam.pages.xml/src/org/jboss/tools/seam/pages/xml/model/ViewIdsTree.java
===================================================================
---
trunk/seam/plugins/org.jboss.tools.seam.pages.xml/src/org/jboss/tools/seam/pages/xml/model/ViewIdsTree.java 2008-12-18
13:11:10 UTC (rev 12670)
+++
trunk/seam/plugins/org.jboss.tools.seam.pages.xml/src/org/jboss/tools/seam/pages/xml/model/ViewIdsTree.java 2008-12-18
14:18:44 UTC (rev 12671)
@@ -3,8 +3,10 @@
import java.util.Map;
import java.util.TreeMap;
+import org.eclipse.ui.IViewReference;
import org.jboss.tools.common.model.XModelObject;
import org.jboss.tools.common.model.filesystems.FileSystemsHelper;
+import org.jboss.tools.common.model.plugin.ModelPlugin;
import org.jboss.tools.jst.web.model.tree.WebPagesTree;
import org.jboss.tools.seam.pages.xml.model.helpers.SeamPagesDiagramStructureHelper;
@@ -41,7 +43,24 @@
}
public XModelObject[] getChildren(XModelObject object) {
- if(object == root) return new XModelObject[]{webRoot, pages};
+ if(object == root) {
+ if(webRoot == null) {
+ XModelObject[] rs = super.getChildren(object);
+ if(pages == null) {
+ return rs;
+ } else {
+ XModelObject[] rs1 = new XModelObject[rs.length + 1];
+ System.arraycopy(rs, 0, rs1, 0, rs.length);
+ rs1[rs.length] = pages;
+ return rs1;
+ }
+ }
+ if(pages == null) {
+ return new XModelObject[]{webRoot};
+ } else {
+ return new XModelObject[]{webRoot, pages};
+ }
+ }
if(object == pages) return pageMap.values().toArray(new XModelObject[0]);
return super.getChildren(object);
}
Show replies by date