[jbosstools-commits] JBoss Tools SVN: r6415 - trunk/common/plugins/org.jboss.tools.common.model.ui/src/org/jboss/tools/common/model/ui/forms.
jbosstools-commits at lists.jboss.org
jbosstools-commits at lists.jboss.org
Tue Feb 19 06:12:48 EST 2008
Author: scabanovich
Date: 2008-02-19 06:12:48 -0500 (Tue, 19 Feb 2008)
New Revision: 6415
Modified:
trunk/common/plugins/org.jboss.tools.common.model.ui/src/org/jboss/tools/common/model/ui/forms/FormLayoutDataUtil.java
trunk/common/plugins/org.jboss.tools.common.model.ui/src/org/jboss/tools/common/model/ui/forms/ModelFormLayoutData.java
Log:
JBIDE-1670
Modified: trunk/common/plugins/org.jboss.tools.common.model.ui/src/org/jboss/tools/common/model/ui/forms/FormLayoutDataUtil.java
===================================================================
--- trunk/common/plugins/org.jboss.tools.common.model.ui/src/org/jboss/tools/common/model/ui/forms/FormLayoutDataUtil.java 2008-02-18 18:38:55 UTC (rev 6414)
+++ trunk/common/plugins/org.jboss.tools.common.model.ui/src/org/jboss/tools/common/model/ui/forms/FormLayoutDataUtil.java 2008-02-19 11:12:48 UTC (rev 6415)
@@ -47,7 +47,7 @@
public static IFormAttributeData[] createFormAttributeData(String entityName, String categoryName) {
XModelEntity entity = PreferenceModelUtilities.getPreferenceModel().getMetaData().getEntity(entityName);
if(entity == null) return new IFormAttributeData[0];
- List list = new ArrayList();
+ List<IFormAttributeData> list = new ArrayList<IFormAttributeData>();
XAttribute[] as = entity.getAttributes();
for (int i = 0; i < as.length; i++) {
if(!as[i].isVisible()) continue;
@@ -65,19 +65,19 @@
}
}
}
- return (IFormAttributeData[])list.toArray(new IFormAttributeData[0]);
+ return list.toArray(new IFormAttributeData[0]);
}
public static String[] getChildEntitiesWithAttribute(String entityName, String attributeName) {
XModelEntity entity = PreferenceModelUtilities.getPreferenceModel().getMetaData().getEntity(entityName);
if(entity == null) return new String[0];
- List list = new ArrayList();
+ List<String> list = new ArrayList<String>();
XChild[] cs = entity.getChildren();
for (int i = 0; i < cs.length; i++) {
XModelEntity c = entity.getMetaModel().getEntity(cs[i].getName());
if(c != null && c.getAttribute(attributeName) != null) list.add(c.getName());
}
- return (String[])list.toArray(new String[0]);
+ return list.toArray(new String[0]);
}
public static FormData createAllChildrenFormData(String name, String entityName, String childName, String attributeName, String createAction) {
Modified: trunk/common/plugins/org.jboss.tools.common.model.ui/src/org/jboss/tools/common/model/ui/forms/ModelFormLayoutData.java
===================================================================
--- trunk/common/plugins/org.jboss.tools.common.model.ui/src/org/jboss/tools/common/model/ui/forms/ModelFormLayoutData.java 2008-02-18 18:38:55 UTC (rev 6414)
+++ trunk/common/plugins/org.jboss.tools.common.model.ui/src/org/jboss/tools/common/model/ui/forms/ModelFormLayoutData.java 2008-02-19 11:12:48 UTC (rev 6415)
@@ -19,6 +19,14 @@
public class ModelFormLayoutData implements IFormLayoutData {
public static String EMPTY_DESCRIPTION = "";
+
+ public static IFormData TAG_LIST = new FormData(
+ "Tags",
+ "", //"Description
+ new FormAttributeData[]{new FormAttributeData("tag", 100)},
+ new String[]{"AnyElement"},
+ FormLayoutDataUtil.createDefaultFormActionData("CreateActions.CreateTag")
+ );
private final static IFormData[] FORM_LAYOUT_DEFINITIONS =
new IFormData[] {
@@ -32,13 +40,7 @@
"", //"Description, description, description",
new FormAttributeData[]{new FormAttributeData("text", InfoLayoutDataFactory.getInstance())}
),
- new FormData(
- "Tags",
- "", //"Description
- new FormAttributeData[]{new FormAttributeData("tag", 100)},
- new String[]{"AnyElement"},
- FormLayoutDataUtil.createDefaultFormActionData("CreateActions.CreateTag")
- )
+ TAG_LIST
}
),
};
@@ -69,23 +71,49 @@
}
return data;
}
-
- private IFormData generateDefaultFormData(XModelEntity entity) {
+
+ /**
+ * Returns form data that has field editors for attributes
+ * with property category=general
+ * @param entity
+ * @return
+ */
+ public static IFormData createGeneralFormData(XModelEntity entity) {
String entityName = entity.getName();
XAttribute attr = entity.getAttribute("element type");
String kind = attr == null ? entity.getXMLSubPath() : attr.getDefaultValue();
String label = WizardKeys.toDisplayName(kind);
- FormData g = new FormData(
- label,
- EMPTY_DESCRIPTION,
- FormLayoutDataUtil.createGeneralFormAttributeData(entityName)
- );
+ IFormAttributeData[] attrData = FormLayoutDataUtil.createGeneralFormAttributeData(entityName);
+ if(attrData.length == 0) return null;
+ FormData g = new FormData(label, EMPTY_DESCRIPTION, attrData);
+ return g;
+ }
+
+ /**
+ * Returns form data that has field editors for attributes
+ * with property category=advanced
+ * @param entity
+ * @return
+ */
+ public static IFormData createAdvancedFormData(String entityName) {
+ IFormAttributeData[] attrData = FormLayoutDataUtil.createAdvancedFormAttributeData(entityName);
+ if(attrData.length == 0) return null;
FormData a = new FormData(
"Advanced",
EMPTY_DESCRIPTION,
FormLayoutDataUtil.createAdvancedFormAttributeData(entityName)
);
- IFormData[] ds = {g, a};
+ return a;
+ }
+
+ private IFormData generateDefaultFormData(XModelEntity entity) {
+ String entityName = entity.getName();
+ List<IFormData> list = new ArrayList<IFormData>();
+ IFormData g = createGeneralFormData(entity);
+ if(g != null) list.add(g);
+ IFormData a = createAdvancedFormData(entityName);
+ if(a != null) list.add(a);
+ IFormData[] ds = list.toArray(new IFormData[0]);
IFormData data = new FormData(entityName, new String[]{null}, ds);
return data;
}
More information about the jbosstools-commits
mailing list