[jbosstools-commits] JBoss Tools SVN: r9072 - in trunk/seam/plugins/org.jboss.tools.seam.pages.xml: src/org/jboss/tools/seam/pages/xml/model/handlers and 1 other directories.

jbosstools-commits at lists.jboss.org jbosstools-commits at lists.jboss.org
Fri Jul 4 07:20:09 EDT 2008


Author: scabanovich
Date: 2008-07-04 07:20:09 -0400 (Fri, 04 Jul 2008)
New Revision: 9072

Modified:
   trunk/seam/plugins/org.jboss.tools.seam.pages.xml/resources/meta/seam-pages.meta
   trunk/seam/plugins/org.jboss.tools.seam.pages.xml/src/org/jboss/tools/seam/pages/xml/model/handlers/DiagramAdopt.java
   trunk/seam/plugins/org.jboss.tools.seam.pages.xml/src/org/jboss/tools/seam/pages/xml/model/handlers/PageAdopt.java
   trunk/seam/plugins/org.jboss.tools.seam.pages.xml/src/org/jboss/tools/seam/pages/xml/model/helpers/SeamPagesDiagramHelper.java
   trunk/seam/plugins/org.jboss.tools.seam.pages.xml/src/org/jboss/tools/seam/pages/xml/model/helpers/SeamPagesPageRefUpdateManager.java
Log:
JBIDE-1189

Modified: trunk/seam/plugins/org.jboss.tools.seam.pages.xml/resources/meta/seam-pages.meta
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.pages.xml/resources/meta/seam-pages.meta	2008-07-04 11:19:52 UTC (rev 9071)
+++ trunk/seam/plugins/org.jboss.tools.seam.pages.xml/resources/meta/seam-pages.meta	2008-07-04 11:20:09 UTC (rev 9072)
@@ -2819,7 +2819,7 @@
    <XActionItem ICON="action.empty" displayName="New" kind="list" name="CreateActions">
     <XActionItem HandlerClassName="%SpecialWizard%" ICON="action.empty"
      PROPERTIES="support=org.jboss.tools.seam.pages.xml.model.handlers.AddViewSupport"
-     displayName="New Page..." kind="action" name="AddPage">
+     displayName="New Page (wizard)..." kind="action" name="AddPageWizard">
      <EntityData EntityName="SeamPagesAddViewWizard">
       <AttributeData AttributeName="view id" Mandatory="no"/>
       <AttributeData AttributeName="create file" Mandatory="no"/>
@@ -2827,10 +2827,18 @@
      </EntityData>
     </XActionItem>
     <XActionItem
+     HandlerClassName="org.jboss.tools.seam.ui.pages.editor.commands.AddPageOnDiagramHandler"
+     ICON="action.empty"
+     displayName="New Page (diagram)..." kind="action" name="AddPage"/>
+    <XActionItem
      HandlerClassName="org.jboss.tools.jsf.model.handlers.JSFProcessRegirectHandler"
      ICON="action.empty"
      PROPERTIES="actionpath=CreateActions/AddException"
-     displayName="New Exception..." kind="action" name="AddException"/>
+     displayName="New Exception (wizard)..." kind="action" name="AddExceptionWizard"/>
+    <XActionItem
+     HandlerClassName="org.jboss.tools.seam.ui.pages.editor.commands.AddExceptionOnDiagramHandler"
+     ICON="action.empty"
+     displayName="New Exception (diagram)..." kind="action" name="AddException"/>
    </XActionItem>
    <XActionItem HIDE="always"
     HandlerClassName="org.jboss.tools.jsf.model.handlers.CreateCommentHandler"
@@ -2941,6 +2949,11 @@
       <AttributeData AttributeName="comment"/>
      </EntityData>
     </XActionItem>
+    <XActionItem
+     HandlerClassName="org.jboss.tools.jsf.model.handlers.JSFItemRegirectHandler"
+     ICON="action.new.jsf.case"
+     PROPERTIES="actionpath=CreateActions/AddParam"
+     WizardClassName="%Default%" displayName="Param..." kind="action" name="CreateParam"/>
    </XActionItem>
    <XActionItem HIDE="disabled"
     HandlerClassName="org.jboss.tools.seam.pages.xml.model.handlers.OpenPageHandler"

Modified: trunk/seam/plugins/org.jboss.tools.seam.pages.xml/src/org/jboss/tools/seam/pages/xml/model/handlers/DiagramAdopt.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.pages.xml/src/org/jboss/tools/seam/pages/xml/model/handlers/DiagramAdopt.java	2008-07-04 11:19:52 UTC (rev 9071)
+++ trunk/seam/plugins/org.jboss.tools.seam.pages.xml/src/org/jboss/tools/seam/pages/xml/model/handlers/DiagramAdopt.java	2008-07-04 11:20:09 UTC (rev 9072)
@@ -110,7 +110,7 @@
 		p.put("sample", object);
 		String type = object.getAttributeValue(ATTR_TYPE);
 		if(TYPE_PAGE.equals(type)) {
-			XActionInvoker.invoke("CreateActions.AddPage", target, p);
+			XActionInvoker.invoke("CreateActions.AddPageWizard", target, p);
 		} else {
 			//TODO
 		}

Modified: trunk/seam/plugins/org.jboss.tools.seam.pages.xml/src/org/jboss/tools/seam/pages/xml/model/handlers/PageAdopt.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.pages.xml/src/org/jboss/tools/seam/pages/xml/model/handlers/PageAdopt.java	2008-07-04 11:19:52 UTC (rev 9071)
+++ trunk/seam/plugins/org.jboss.tools.seam.pages.xml/src/org/jboss/tools/seam/pages/xml/model/handlers/PageAdopt.java	2008-07-04 11:20:09 UTC (rev 9072)
@@ -105,9 +105,16 @@
 
 	protected void adoptSeamPage(XModelObject source, XModelObject target, Properties p) throws XModelException {
 		String path = target.getAttributeValue(ATTR_PATH);
-		String n = path;
-		if(n.lastIndexOf('.') > 0) n = n.substring(0, n.lastIndexOf('.'));
-		if(n.lastIndexOf('/') >= 0) n = n.substring(n.lastIndexOf('/') + 1);
+		if(source != null && source.getModelEntity().getName().startsWith(ENT_EXCEPTION)) {
+			XModelObject redirect = source.getChildByPath("target");
+			if(redirect != null) {
+				redirect.getModel().editObjectAttribute(redirect, ATTR_VIEW_ID, path);
+				return;
+			}
+		}
+//		String n = path;
+//		if(n.lastIndexOf('.') > 0) n = n.substring(0, n.lastIndexOf('.'));
+//		if(n.lastIndexOf('/') >= 0) n = n.substring(n.lastIndexOf('/') + 1);
 		String suffix = DiagramAdopt.getPageSuffix(source.getModelEntity().getName());
 		XModelObject cs = source.getModel().createModelObject(ENT_NAVIGATION_RULE + suffix, null);
 		XModelObject redirect = source.getModel().createModelObject("SeamPageRedirect" + suffix, null);

Modified: trunk/seam/plugins/org.jboss.tools.seam.pages.xml/src/org/jboss/tools/seam/pages/xml/model/helpers/SeamPagesDiagramHelper.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.pages.xml/src/org/jboss/tools/seam/pages/xml/model/helpers/SeamPagesDiagramHelper.java	2008-07-04 11:19:52 UTC (rev 9071)
+++ trunk/seam/plugins/org.jboss.tools.seam.pages.xml/src/org/jboss/tools/seam/pages/xml/model/helpers/SeamPagesDiagramHelper.java	2008-07-04 11:20:09 UTC (rev 9072)
@@ -87,11 +87,11 @@
 				String entity = ns[j].getModelEntity().getName();
 				if(!entity.startsWith(ENT_NAVIGATION)) continue;
 				if(entity.startsWith(ENT_NAVIGATION_RULE)) {
-					addTarget(ns[j]);
+					addTarget(ns[j], true);
 				} else {
 					XModelObject[] rs = ns[j].getChildren();
 					for (int k = 0; k < rs.length; k++) {
-						addTarget(rs[k]);
+						addTarget(rs[k], true);
 					}
 				}
 			}
@@ -103,7 +103,7 @@
 			XModelObject g = findOrCreateItem(code, code, TYPE_EXCEPTION);
 			((ReferenceObjectImpl)g).setReference(sourceExceptions[i]);
 			exceptionItems.put(code, g);
-			addTarget(sourceExceptions[i]);
+			addTarget(sourceExceptions[i], false);
 		}
 
 		Iterator<String> it = pageItems.keySet().iterator();
@@ -118,11 +118,12 @@
 		updatePages();
 	}
 
-	private void addTarget(XModelObject rule) {
+	private void addTarget(XModelObject rule, boolean addEmpty) {
 		XModelObject target = rule.getChildByPath("target");
 		if(target == null) return;
 		String tvi = target.getAttributeValue(ATTR_VIEW_ID);
 		if(tvi == null) return;
+		if(!addEmpty && tvi.length() == 0) return;
 		targets.put(toNavigationRulePathPart(tvi), getTemplate());							
 	}
 
@@ -254,7 +255,13 @@
 		item.setAttributeValue(ATTR_ID, exc.getPathPart());
 		item.setAttributeValue(ATTR_PATH, exc.getAttributeValue("class"));
 		XModelObject t = getTargetChild(exc);
-		XModelObject[] cs = t == null ? new XModelObject[0] : new XModelObject[]{t};		
+		XModelObject[] cs = t == null ? new XModelObject[0] : new XModelObject[]{t};
+		if(cs.length == 1) {
+			String path = t.getAttributeValue(ATTR_VIEW_ID);
+			if(path == null || path.length() == 0) {
+				cs = new XModelObject[0];
+			}
+		}
 		updateOutputs(item, cs);
 	}
 

Modified: trunk/seam/plugins/org.jboss.tools.seam.pages.xml/src/org/jboss/tools/seam/pages/xml/model/helpers/SeamPagesPageRefUpdateManager.java
===================================================================
--- trunk/seam/plugins/org.jboss.tools.seam.pages.xml/src/org/jboss/tools/seam/pages/xml/model/helpers/SeamPagesPageRefUpdateManager.java	2008-07-04 11:19:52 UTC (rev 9071)
+++ trunk/seam/plugins/org.jboss.tools.seam.pages.xml/src/org/jboss/tools/seam/pages/xml/model/helpers/SeamPagesPageRefUpdateManager.java	2008-07-04 11:20:09 UTC (rev 9072)
@@ -20,7 +20,7 @@
 public class SeamPagesPageRefUpdateManager implements XModelTreeListener, Runnable, SeamPagesConstants {
 
     public static SeamPagesPageRefUpdateManager getInstance(XModel model) {
-		SeamPagesPageRefUpdateManager instance = (SeamPagesPageRefUpdateManager)model.getManager("JSFPageUpdateManager");
+		SeamPagesPageRefUpdateManager instance = (SeamPagesPageRefUpdateManager)model.getManager("SeamPagesPageRefUpdateManager");
         if(instance == null) {
             instance = new SeamPagesPageRefUpdateManager();
             instance.model = model;




More information about the jbosstools-commits mailing list