Author: scabanovich
Date: 2010-01-22 09:12:31 -0500 (Fri, 22 Jan 2010)
New Revision: 19882
Added:
trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/model/handlers/AddOrderingSupport.java
trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/model/impl/OrderingObjectImpl.java
Modified:
trunk/jsf/plugins/org.jboss.tools.jsf/plugin.xml
trunk/jsf/plugins/org.jboss.tools.jsf/resources/meta/jsf2.meta
trunk/jsf/plugins/org.jboss.tools.jsf/resources/meta/jsfwizards.meta
trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/model/FacesConfigLoader.java
trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/model/JSFConstants.java
Log:
https://jira.jboss.org/jira/browse/JBIDE-5471
Modified: trunk/jsf/plugins/org.jboss.tools.jsf/plugin.xml
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf/plugin.xml 2010-01-22 13:56:23 UTC (rev 19881)
+++ trunk/jsf/plugins/org.jboss.tools.jsf/plugin.xml 2010-01-22 14:12:31 UTC (rev 19882)
@@ -170,6 +170,9 @@
class="org.jboss.tools.jsf.model.ReferenceGroupImpl"/>
<xclass id="org.jboss.tools.jsf.model.ReferenceObjectImpl"
class="org.jboss.tools.jsf.model.ReferenceObjectImpl"/>
+ <xclass id="org.jboss.tools.jsf.model.impl.OrderingObjectImpl"
+ class="org.jboss.tools.jsf.model.impl.OrderingObjectImpl"/>
+
<xclass id="org.jboss.tools.jsf.model.handlers.AddCaseToGroupHandler"
class="org.jboss.tools.jsf.model.handlers.AddCaseToGroupHandler"/>
<xclass id="org.jboss.tools.jsf.model.handlers.AddNavigationCaseHandler"
@@ -234,6 +237,10 @@
class="org.jboss.tools.jsf.model.handlers.SetApplicationHandler"/>
<xclass id="org.jboss.tools.jsf.model.handlers.SetFactoryHandler"
class="org.jboss.tools.jsf.model.handlers.SetFactoryHandler"/>
+ <xclass id="org.jboss.tools.jsf.model.handlers.AddOrderingSupport"
+ class="org.jboss.tools.jsf.model.handlers.AddOrderingSupport"/>
+
+
<xclass
id="org.jboss.tools.jsf.model.handlers.bean.AddManagedPropertySafeHandler"
class="org.jboss.tools.jsf.model.handlers.bean.AddManagedPropertySafeHandler"/>
<xclass
id="org.jboss.tools.jsf.model.handlers.bean.DeleteManagedPropertyHandler"
Modified: trunk/jsf/plugins/org.jboss.tools.jsf/resources/meta/jsf2.meta
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf/resources/meta/jsf2.meta 2010-01-22 13:56:23 UTC
(rev 19881)
+++ trunk/jsf/plugins/org.jboss.tools.jsf/resources/meta/jsf2.meta 2010-01-22 14:12:31 UTC
(rev 19882)
@@ -25,6 +25,7 @@
<XChildEntity maxCount="1" name="JSFConverters"
required="yes"/>
<XChildEntity maxCount="1" name="JSFManagedBeans20"
required="yes"/>
<XChildEntity maxCount="1" name="JSFNavigationRules20"
required="yes"/>
+ <XChildEntity maxCount="1" name="JSFOrderings20"
required="yes"/>
<XChildEntity maxCount="1" name="JSFReferencedBeans"
required="yes"/>
<XChildEntity maxCount="1" name="JSFRenderKits20"
required="yes"/>
<XChildEntity maxCount="1" name="JSFValidators12"
required="yes"/>
@@ -161,6 +162,9 @@
WizardClassName="%Default%" displayName="Managed Bean..."
kind="action" name="AddManagedBean"/>
<XActionItem HandlerClassName="%Redirect%"
ICON="action.empty"
+
PROPERTIES="validator.add=true;sourcepath=Orderings;actionpath=CreateActions/AddOrdering"
+ WizardClassName="%Default%" displayName="Ordering..."
kind="action" name="AddOrdering"/>
+ <XActionItem HandlerClassName="%Redirect%"
ICON="action.empty"
PROPERTIES="validator.add=true;sourcepath=Referenced
Beans;actionpath=CreateActions/AddReferencedBean"
WizardClassName="%Default%" displayName="Referenced Bean..."
kind="action" name="AddReferencedBean"/>
@@ -223,6 +227,111 @@
</XActionItem>
<XDependencies/>
</XModelEntity>
+ <XModelEntity ImplementingClass="%Custom%"
+
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.jsf.ui.editor.form.JSFFormLayoutData;children=%Ordered%;saveDefault=false"
+ XMLSUBPATH="absolute-ordering" name="JSFAbsoluteOrdering20">
+ <XChildrenEntities>
+ <XChildEntity name="JSFOrderingName20"/>
+ </XChildrenEntities>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.jsf.property" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="absolute-ordering"
loader="ElementType" name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="id=true" default="Absolute
Ordering"
+ name="name" visibility="false"/>
+ <XModelAttribute PROPERTIES="category=general" default="false"
name="others">
+ <Constraint loader="List">
+ <value name="true"/>
+ <value name="false"/>
+ </Constraint>
+ <Editor name="List"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItem kind="list" name="CreateActions">
+ <XActionItem HandlerClassName="%Create%" ICON="action.empty"
+ WizardClassName="%Default%" displayName="Add Name..."
kind="action" name="AddName">
+ <EntityData EntityName="JSFOrderingName20">
+ <AttributeData AttributeName="name"/>
+ </EntityData>
+ </XActionItem>
+ </XActionItem>
+ <XActionItem ICON="action.delete" displayName="Delete"
kind="list" name="DeleteActions">
+ <XActionItem BaseActionName="Delete"
HandlerClassName="%Delete%"
+ ICON="action.delete" displayName="Delete"
kind="action" name="Delete"/>
+ </XActionItem>
+ <XActionItem ICON="action.copy" displayName="Copy"
kind="list" name="CopyActions">
+ <XActionItem BaseActionName="Cut" HandlerClassName="%Cut%"
+ ICON="action.cut" displayName="Cut" kind="action"
name="Cut"/>
+ <XActionItem BaseActionName="Copy" HandlerClassName="%Copy%"
+ ICON="action.copy" displayName="Copy" kind="action"
name="Copy"/>
+ <XActionItem BaseActionName="Paste"
HandlerClassName="%Paste%"
+ ICON="action.paste" displayName="Paste" kind="action"
name="Paste"/>
+ </XActionItem>
+ <XActionItem displayName="move" kind="list"
name="MoveActions">
+ <XActionItem HIDE="always" HandlerClassName="%Move%"
+ ICON="action.move" displayName="Move" kind="action"
name="Move"/>
+ </XActionItem>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XModelEntity ImplementingClass="%Custom%"
+
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.jsf.ui.editor.form.JSFFormLayoutData;children=%Ordered%;saveDefault=false"
+ XMLSUBPATH="after" name="JSFAfter20">
+ <XChildrenEntities>
+ <XChildEntity name="JSFOrderingName20"/>
+ </XChildrenEntities>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.jsf.property" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="after" loader="ElementType"
name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="id=true" default="After"
name="name" visibility="false"/>
+ <XModelAttribute PROPERTIES="category=general" default="false"
name="others">
+ <Constraint loader="List">
+ <value name="true"/>
+ <value name="false"/>
+ </Constraint>
+ <Editor name="List"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItem kind="list" name="CreateActions">
+ <XActionItem HandlerClassName="%Create%" ICON="action.empty"
+ WizardClassName="%Default%" displayName="Add Name..."
kind="action" name="AddName">
+ <EntityData EntityName="JSFOrderingName20">
+ <AttributeData AttributeName="name"/>
+ </EntityData>
+ </XActionItem>
+ </XActionItem>
+ <XActionItem ICON="action.delete" displayName="Delete"
kind="list" name="DeleteActions">
+ <XActionItem BaseActionName="Delete"
HandlerClassName="%Delete%"
+ ICON="action.delete" displayName="Delete"
kind="action" name="Delete"/>
+ </XActionItem>
+ <XActionItem ICON="action.copy" displayName="Copy"
kind="list" name="CopyActions">
+ <XActionItem BaseActionName="Cut" HandlerClassName="%Cut%"
+ ICON="action.cut" displayName="Cut" kind="action"
name="Cut"/>
+ <XActionItem BaseActionName="Copy" HandlerClassName="%Copy%"
+ ICON="action.copy" displayName="Copy" kind="action"
name="Copy"/>
+ <XActionItem BaseActionName="Paste"
HandlerClassName="%Paste%"
+ ICON="action.paste" displayName="Paste" kind="action"
name="Paste"/>
+ </XActionItem>
+ <XActionItem displayName="move" kind="list"
name="MoveActions">
+ <XActionItem HIDE="always" HandlerClassName="%Move%"
+ ICON="action.move" displayName="Move" kind="action"
name="Move"/>
+ </XActionItem>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
<XModelEntity
ImplementingClass="org.jboss.tools.jsf.model.impl.ApplicationObjectImpl"
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.jsf.ui.editor.form.JSFFormLayoutData;saveDefault=false"
@@ -382,6 +491,58 @@
<XDependencies/>
</XModelEntity>
<XModelEntity ImplementingClass="%Custom%"
+
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.jsf.ui.editor.form.JSFFormLayoutData;children=%Ordered%;saveDefault=false"
+ XMLSUBPATH="before" name="JSFBefore20">
+ <XChildrenEntities>
+ <XChildEntity name="JSFOrderingName20"/>
+ </XChildrenEntities>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.jsf.property" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="before" loader="ElementType"
name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="id=true" default="Before"
name="name" visibility="false"/>
+ <XModelAttribute PROPERTIES="category=general" default="false"
name="others">
+ <Constraint loader="List">
+ <value name="true"/>
+ <value name="false"/>
+ </Constraint>
+ <Editor name="List"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItem kind="list" name="CreateActions">
+ <XActionItem HandlerClassName="%Create%" ICON="action.empty"
+ WizardClassName="%Default%" displayName="Add Name..."
kind="action" name="AddName">
+ <EntityData EntityName="JSFOrderingName20">
+ <AttributeData AttributeName="name"/>
+ </EntityData>
+ </XActionItem>
+ </XActionItem>
+ <XActionItem ICON="action.delete" displayName="Delete"
kind="list" name="DeleteActions">
+ <XActionItem BaseActionName="Delete"
HandlerClassName="%Delete%"
+ ICON="action.delete" displayName="Delete"
kind="action" name="Delete"/>
+ </XActionItem>
+ <XActionItem ICON="action.copy" displayName="Copy"
kind="list" name="CopyActions">
+ <XActionItem BaseActionName="Cut" HandlerClassName="%Cut%"
+ ICON="action.cut" displayName="Cut" kind="action"
name="Cut"/>
+ <XActionItem BaseActionName="Copy" HandlerClassName="%Copy%"
+ ICON="action.copy" displayName="Copy" kind="action"
name="Copy"/>
+ <XActionItem BaseActionName="Paste"
HandlerClassName="%Paste%"
+ ICON="action.paste" displayName="Paste" kind="action"
name="Paste"/>
+ </XActionItem>
+ <XActionItem displayName="move" kind="list"
name="MoveActions">
+ <XActionItem HIDE="always" HandlerClassName="%Move%"
+ ICON="action.move" displayName="Move" kind="action"
name="Move"/>
+ </XActionItem>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XModelEntity ImplementingClass="%Custom%"
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.jsf.ui.editor.form.JSFFormLayoutData"
XMLSUBPATH="validator-id" name="JSFDefaultValidator">
<XChildrenEntities/>
@@ -994,6 +1155,131 @@
<XDependencies/>
</XModelEntity>
<XModelEntity
+ ImplementingClass="org.jboss.tools.jsf.model.impl.OrderingObjectImpl"
+
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.jsf.ui.editor.form.JSFFormLayoutData;saveDefault=false"
+ XMLSUBPATH="ordering" name="JSFOrdering20">
+ <XChildrenEntities>
+ <XChildEntity maxCount="1" name="JSFAfter20"
required="yes"/>
+ <XChildEntity maxCount="1" name="JSFBefore20"
required="yes"/>
+ </XChildrenEntities>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.jsf.property" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="ordering" loader="ElementType"
name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute name="_id_" visibility="false"/>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItem kind="list" name="CreateActions"/>
+ <XActionItem ICON="action.delete" displayName="Delete"
kind="list" name="DeleteActions">
+ <XActionItem BaseActionName="Delete"
HandlerClassName="%Delete%"
+ ICON="action.delete" displayName="Delete"
kind="action" name="Delete"/>
+ </XActionItem>
+ <XActionItem ICON="action.copy" displayName="Copy"
kind="list" name="CopyActions">
+ <XActionItem BaseActionName="Cut" HandlerClassName="%Cut%"
+ ICON="action.cut" displayName="Cut" kind="action"
name="Cut"/>
+ <XActionItem BaseActionName="Copy" HandlerClassName="%Copy%"
+ ICON="action.copy" displayName="Copy" kind="action"
name="Copy"/>
+ <XActionItem BaseActionName="Paste"
HandlerClassName="%Paste%"
+ ICON="action.paste" displayName="Paste" kind="action"
name="Paste"/>
+ </XActionItem>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XModelEntity ImplementingClass="%Custom%"
+
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.jsf.ui.editor.form.JSFFormLayoutData"
+ XMLSUBPATH="name" name="JSFOrderingName20">
+ <XChildrenEntities/>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.jsf.property" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="name" loader="ElementType"
name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute PROPERTIES="id=true;category=general"
name="name" xmlname="#text"/>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItem ICON="action.delete" displayName="Delete"
kind="list" name="DeleteActions">
+ <XActionItem BaseActionName="Delete"
HandlerClassName="%Delete%"
+ ICON="action.delete" displayName="Delete"
kind="action" name="Delete"/>
+ </XActionItem>
+ <XActionItem ICON="action.copy" displayName="Copy"
kind="list" name="CopyActions">
+ <XActionItem BaseActionName="Cut" HandlerClassName="%Cut%"
+ ICON="action.cut" displayName="Cut" kind="action"
name="Cut"/>
+ <XActionItem BaseActionName="Copy" HandlerClassName="%Copy%"
+ ICON="action.copy" displayName="Copy" kind="action"
name="Copy"/>
+ <XActionItem BaseActionName="Paste"
HandlerClassName="%Paste%"
+ ICON="action.paste" displayName="Paste" kind="action"
name="Paste"/>
+ </XActionItem>
+ <XActionItem displayName="move" kind="list"
name="MoveActions">
+ <XActionItem HIDE="always" HandlerClassName="%Move%"
+ ICON="action.move" displayName="Move" kind="action"
name="Move"/>
+ </XActionItem>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XModelEntity ImplementingClass="%Ordered%"
+
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.jsf.ui.editor.form.JSFFormLayoutData"
name="JSFOrderings20">
+ <XChildrenEntities>
+ <XChildEntity maxCount="1" name="JSFAbsoluteOrdering20"
required="yes"/>
+ <XChildEntity name="JSFOrdering20"/>
+ </XChildrenEntities>
+ <XEntityRenderer>
+ <ICONS>
+ <ICON info="main.jsf.renderkits" type="main"/>
+ </ICONS>
+ </XEntityRenderer>
+ <XModelAttributes>
+ <XModelAttribute default="ordering list" loader="ElementType"
name="element type">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ <XModelAttribute default="Orderings" name="name"
xmlname="NAME">
+ <Editor name="Uneditable"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list">
+ <XActionItem ICON="action.empty" displayName="New"
group="1"
+ kind="list" name="CreateActions">
+ <XActionItem HandlerClassName="%SpecialWizard%"
+ ICON="main.jsf.renderkit"
+
PROPERTIES="validator.add=true;support=org.jboss.tools.jsf.model.handlers.AddOrderingSupport;entity=JSFOrdering20"
+ displayName="Ordering..." kind="action"
name="AddOrdering">
+ <EntityData EntityName="JSFAddOrderingWizard">
+ <AttributeData AttributeName="after name"
Mandatory="no"/>
+ <AttributeData AttributeName="after others"
Mandatory="no"/>
+ <AttributeData AttributeName="before name"
Mandatory="no"/>
+ <AttributeData AttributeName="before others"
Mandatory="no"/>
+ </EntityData>
+ </XActionItem>
+ </XActionItem>
+ <XActionItem ICON="action.copy" displayName="Copy"
kind="list" name="CopyActions">
+ <XActionItem BaseActionName="Cut" HandlerClassName="%Cut%"
+ ICON="action.cut" displayName="Cut" kind="action"
name="Cut"/>
+ <XActionItem BaseActionName="Copy"
HandlerClassName="%CopyChildren%"
+ ICON="action.copy" displayName="Copy" kind="action"
name="Copy"/>
+ <XActionItem BaseActionName="Paste"
HandlerClassName="%Paste%"
+ ICON="action.paste" displayName="Paste" kind="action"
name="Paste"/>
+ </XActionItem>
+ <XActionItem kind="list" name="DeleteActions">
+ <XActionItem BaseActionName="Delete"
+ HandlerClassName="%DeleteChildren%" ICON="action.delete"
+ displayName="Delete" kind="action" name="Delete"/>
+ </XActionItem>
+ <XActionItem ICON="action.empty" kind="list"
name="Properties">
+ <XActionItem HandlerClassName="%Properties%"
ICON="action.empty"
+ displayName="Properties..." kind="action"
name="Properties"/>
+ </XActionItem>
+ </XActionItem>
+ <XDependencies/>
+ </XModelEntity>
+ <XModelEntity
ImplementingClass="org.jboss.tools.jsf.model.impl.RenderKitObjectImpl"
PROPERTIES="formFactory=%Default%;formLayout=org.jboss.tools.jsf.ui.editor.form.JSFFormLayoutData"
XMLSUBPATH="render-kit" name="JSFRenderKit20">
Modified: trunk/jsf/plugins/org.jboss.tools.jsf/resources/meta/jsfwizards.meta
===================================================================
--- trunk/jsf/plugins/org.jboss.tools.jsf/resources/meta/jsfwizards.meta 2010-01-22
13:56:23 UTC (rev 19881)
+++ trunk/jsf/plugins/org.jboss.tools.jsf/resources/meta/jsfwizards.meta 2010-01-22
14:12:31 UTC (rev 19882)
@@ -1,5 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE XModelEntityGroup PUBLIC "-//Red Hat, Inc.//DTD Meta 1.0//EN"
"meta.dtd">
+<!DOCTYPE XModelEntityGroup PUBLIC "-//Red Hat, Inc.//DTD Meta 1.0//EN"
+ "meta.dtd">
<XModelEntityGroup>
<VERSION DEPENDS="Model:1.0" MODULE="JSF"
VERSION="1.0"/>
<MAPPINGS/>
@@ -64,7 +65,6 @@
<Editor name="List"/>
</XModelAttribute>
<XModelAttribute PROPERTIES="save=always" name="value"
xmlname="value.#text">
- <Constraint/>
<Editor name="Note"/>
</XModelAttribute>
<XModelAttribute default="true" name="add java property">
@@ -109,14 +109,10 @@
<Editor name="ContainerChooser"/>
</XModelAttribute>
<XModelAttribute name="separator">
- <Constraint/>
<Editor name="Separator"/>
</XModelAttribute>
<XModelAttribute default="faces-config" name="name"
- visibility="false" xmlname="NAME">
- <Constraint/>
- <Editor/>
- </XModelAttribute>
+ visibility="false" xmlname="NAME"/>
<XModelAttribute name="version">
<Constraint loader="ListString"/>
<Editor name="DropDown"/>
@@ -132,6 +128,30 @@
<XActionItem kind="list"/>
<XDependencies/>
</XModelEntity>
+ <XModelEntity name="JSFAddOrderingWizard">
+ <XChildrenEntities/>
+ <XEntityRenderer/>
+ <XModelAttributes>
+ <XModelAttribute name="after name"/>
+ <XModelAttribute PROPERTIES="category=general" default="false"
name="after others">
+ <Constraint loader="List">
+ <value name="true"/>
+ <value name="false"/>
+ </Constraint>
+ <Editor name="List"/>
+ </XModelAttribute>
+ <XModelAttribute name="before name"/>
+ <XModelAttribute PROPERTIES="category=general" default="false"
name="before others">
+ <Constraint loader="List">
+ <value name="true"/>
+ <value name="false"/>
+ </Constraint>
+ <Editor name="List"/>
+ </XModelAttribute>
+ </XModelAttributes>
+ <XActionItem kind="list"/>
+ <XDependencies/>
+ </XModelEntity>
<XModelEntity name="JSFAddViewWizard">
<XChildrenEntities/>
<XEntityRenderer/>
@@ -169,10 +189,7 @@
</ICONS>
</XEntityRenderer>
<XModelAttributes>
- <XModelAttribute PROPERTIES="id=true" name="name">
- <Constraint/>
- <Editor/>
- </XModelAttribute>
+ <XModelAttribute PROPERTIES="id=true" name="name"/>
</XModelAttributes>
<XActionItem kind="list">
<XActionItem HandlerClassName="%Edit%" ICON="action.empty"
@@ -215,10 +232,7 @@
</ICONS>
</XEntityRenderer>
<XModelAttributes>
- <XModelAttribute PROPERTIES="id=true" name="name">
- <Constraint/>
- <Editor/>
- </XModelAttribute>
+ <XModelAttribute PROPERTIES="id=true" name="name"/>
</XModelAttributes>
<XActionItem kind="list">
<XActionItem displayName="New" group="1" kind="list"
name="CreateActions">
@@ -248,10 +262,7 @@
<XChildrenEntities/>
<XEntityRenderer/>
<XModelAttributes>
- <XModelAttribute name="var">
- <Constraint/>
- <Editor/>
- </XModelAttribute>
+ <XModelAttribute name="var"/>
<XModelAttribute PROPERTIES="nodeName=dataTable;attrName=value"
name="value">
<Constraint loader="ListString"/>
<Editor name="KnowledgeBase"/>
@@ -272,10 +283,7 @@
</ICONS>
</XEntityRenderer>
<XModelAttributes>
- <XModelAttribute PROPERTIES="save=always"
name="managed-bean-class" xmlname="managed-bean-class.#text">
- <Constraint/>
- <Editor/>
- </XModelAttribute>
+ <XModelAttribute PROPERTIES="save=always"
name="managed-bean-class" xmlname="managed-bean-class.#text"/>
</XModelAttributes>
<XActionItem kind="list"/>
<XDependencies/>
@@ -319,10 +327,7 @@
</Constraint>
<Editor name="CheckBox"/>
</XModelAttribute>
- <XModelAttribute name="index" visibility="false">
- <Constraint/>
- <Editor/>
- </XModelAttribute>
+ <XModelAttribute name="index" visibility="false"/>
</XModelAttributes>
<XActionItem kind="list"/>
<XDependencies/>
@@ -331,10 +336,7 @@
<XChildrenEntities/>
<XEntityRenderer/>
<XModelAttributes>
- <XModelAttribute name="link text">
- <Constraint/>
- <Editor/>
- </XModelAttribute>
+ <XModelAttribute name="link text"/>
</XModelAttributes>
<XActionItem kind="list"/>
<XDependencies/>
Modified:
trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/model/FacesConfigLoader.java
===================================================================
---
trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/model/FacesConfigLoader.java 2010-01-22
13:56:23 UTC (rev 19881)
+++
trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/model/FacesConfigLoader.java 2010-01-22
14:12:31 UTC (rev 19882)
@@ -22,6 +22,7 @@
import org.jboss.tools.common.model.filesystems.impl.*;
import org.jboss.tools.common.model.loaders.impl.SimpleWebFileLoader;
import org.jboss.tools.common.model.util.*;
+import org.jboss.tools.common.xml.XMLUtilities;
import org.jboss.tools.jsf.JSFModelPlugin;
import org.jboss.tools.jst.web.model.*;
@@ -173,6 +174,7 @@
JSFConstants.FOLDER_CONVERTERS,
JSFConstants.FOLDER_MANAGED_BEANS,
JSFConstants.FOLDER_NAVIGATION_RULES,
+ JSFConstants.FOLDER_ORDERINGS,
JSFConstants.FOLDER_REFENCED_BEANS,
JSFConstants.FOLDER_RENDER_KITS,
JSFConstants.FOLDER_VALIDATORS,
@@ -188,6 +190,9 @@
} else if("JSFNavigationCase".equals(entity.getName())) { //$NON-NLS-1$
children.add("redirect"); //$NON-NLS-1$
}
+ if(entity.getAttribute("others") != null) {
+ children.add("others");
+ }
return children;
}
@@ -239,9 +244,12 @@
XAttribute[] as = o.getModelEntity().getAttributes();
for (int i = 0; i < as.length; i++) {
String xml = as[i].getXMLName();
+ String v = o.getAttributeValue(as[i].getName());
+ if("others".equals(as[i].getName())) {
+ if("true".equals(v)) return true;
+ }
// it would be more safe to check isSavable
if(xml == null || xml.length() == 0 || "NAME".equals(xml)) continue;
//$NON-NLS-1$
- String v = o.getAttributeValue(as[i].getName());
if(v != null && v.length() > 0) return true;
}
String finalComment = o.get("#final-comment"); //$NON-NLS-1$
@@ -268,7 +276,11 @@
saveListEntriesChildren(element, o);
return true;
} else {
- return super.saveChildren(element, o);
+ boolean b = super.saveChildren(element, o);
+ if("true".equals(o.getAttributeValue("others"))) {
+ XMLUtilities.createElement(element, "others");
+ }
+ return b;
}
}
@@ -284,7 +296,10 @@
o.setAttributeValue("null-value", "false"); //$NON-NLS-1$
//$NON-NLS-2$
o.setAttributeValue("value", super.getAttribute(element,
"value.#text")); //$NON-NLS-1$ //$NON-NLS-2$
}
- }
+ }
+ if(XMLUtilities.getUniqueChild(element, "others") != null) {
+ o.setAttributeValue("others", "true");
+ }
}
protected boolean isSaveable(XModelEntity entity, String n, String v, String dv) {
Modified:
trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/model/JSFConstants.java
===================================================================
---
trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/model/JSFConstants.java 2010-01-22
13:56:23 UTC (rev 19881)
+++
trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/model/JSFConstants.java 2010-01-22
14:12:31 UTC (rev 19882)
@@ -50,6 +50,7 @@
public static final String FOLDER_CONVERTERS = "Converters"; //$NON-NLS-1$
public static final String FOLDER_RENDER_KITS = "Render Kits"; //$NON-NLS-1$
public static final String FOLDER_VALIDATORS = "Validators"; //$NON-NLS-1$
+ public static final String FOLDER_ORDERINGS = "Orderings"; //$NON-NLS-1$
public static final String FOLDER_EXTENSIONS = "Extensions"; //$NON-NLS-1$
public static final String ATT_ID = "id"; //$NON-NLS-1$
Added:
trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/model/handlers/AddOrderingSupport.java
===================================================================
---
trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/model/handlers/AddOrderingSupport.java
(rev 0)
+++
trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/model/handlers/AddOrderingSupport.java 2010-01-22
14:12:31 UTC (rev 19882)
@@ -0,0 +1,49 @@
+package org.jboss.tools.jsf.model.handlers;
+
+import java.util.Properties;
+
+import org.jboss.tools.common.meta.action.impl.handlers.DefaultCreateHandler;
+import org.jboss.tools.common.meta.action.impl.handlers.DefaultCreateSupport;
+import org.jboss.tools.common.model.XModelException;
+import org.jboss.tools.common.model.XModelObject;
+import org.jboss.tools.common.model.util.XModelObjectLoaderUtil;
+
+public class AddOrderingSupport extends DefaultCreateSupport {
+ static String ATTR_AFTER_NAME = "after name";
+ static String ATTR_AFTER_OTHERS = "after others";
+ static String ATTR_BEFORE_NAME = "before name";
+ static String ATTR_BEFORE_OTHERS = "before others";
+
+ public AddOrderingSupport() {}
+
+ protected void finish() throws XModelException {
+ String entity = getEntityName();
+ Properties p = extractStepData(0);
+ XModelObject c = XModelObjectLoaderUtil.createValidObject(getTarget().getModel(),
entity, p);
+
+ String afterName = p.getProperty(ATTR_AFTER_NAME);
+ if(afterName == null || afterName.length() > 0) {
+ XModelObject n = XModelObjectLoaderUtil.createValidObject(getTarget().getModel(),
c.getChildByPath("After").getModelEntity().getChildren()[0].getName());
+ n.setAttributeValue("name", afterName);
+ c.getChildByPath("After").addChild(n);
+ }
+ String afterOthers = p.getProperty(ATTR_AFTER_OTHERS);
+ if("true".equals(afterOthers)) {
+ c.getChildByPath("After").setAttributeValue("others",
"true");
+ }
+
+ String beforeName = p.getProperty(ATTR_BEFORE_NAME);
+ if(beforeName == null || beforeName.length() > 0) {
+ XModelObject n = XModelObjectLoaderUtil.createValidObject(getTarget().getModel(),
c.getChildByPath("Before").getModelEntity().getChildren()[0].getName());
+ n.setAttributeValue("name", beforeName);
+ c.getChildByPath("Before").addChild(n);
+ }
+ String beforeOthers = p.getProperty(ATTR_BEFORE_OTHERS);
+ if("true".equals(beforeOthers)) {
+ c.getChildByPath("Before").setAttributeValue("others",
"true");
+ }
+
+ DefaultCreateHandler.addCreatedObject(getTarget(), c, getProperties());
+ }
+
+}
Property changes on:
trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/model/handlers/AddOrderingSupport.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Added:
trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/model/impl/OrderingObjectImpl.java
===================================================================
---
trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/model/impl/OrderingObjectImpl.java
(rev 0)
+++
trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/model/impl/OrderingObjectImpl.java 2010-01-22
14:12:31 UTC (rev 19882)
@@ -0,0 +1,53 @@
+/*******************************************************************************
+ * Copyright (c) 2007 Red Hat, Inc.
+ * Distributed under license by Red Hat, Inc. All rights reserved.
+ * This program is made available under the terms of the
+ * Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at
http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Red Hat, Inc. - initial API and implementation
+ ******************************************************************************/
+package org.jboss.tools.jsf.model.impl;
+
+import org.jboss.tools.common.model.XModelObject;
+import org.jboss.tools.common.model.impl.CustomizedObjectImpl;
+import org.jboss.tools.common.model.util.XModelObjectLoaderUtil;
+
+/**
+ *
+ * @author Viacheslav Kabanovich
+ *
+ */
+public class OrderingObjectImpl extends CustomizedObjectImpl {
+ private static final long serialVersionUID = 1L;
+
+ public OrderingObjectImpl() {}
+
+ public String getPresentationString() {
+ XModelObject a = getChildByPath("After");
+ if(a != null) {
+ if(a.getChildren().length > 0) {
+ return "After " + a.getChildren()[0].getAttributeValue("name");
+ }
+ if("true".equals(a.getAttributeValue("others"))) {
+ return "After others";
+ }
+ }
+ XModelObject b = getChildByPath("Before");
+ if(b != null) {
+ if(b.getChildren().length > 0) {
+ return "Before " + b.getChildren()[0].getAttributeValue("name");
+ }
+ if("true".equals(b.getAttributeValue("others"))) {
+ return "Before others";
+ }
+ }
+ return "" + getModelEntity().getXMLSubPath();
+ }
+
+ public String name() {
+ return "" + getModelEntity().getXMLSubPath() +
get(XModelObjectLoaderUtil.ATTR_ID_NAME);
+ }
+
+}
Property changes on:
trunk/jsf/plugins/org.jboss.tools.jsf/src/org/jboss/tools/jsf/model/impl/OrderingObjectImpl.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain