[jboss-svn-commits] JBL Code SVN: r23508 - in labs/jbossrules/trunk: drools-compiler/src/main/java/org/drools/guvnor/server/util and 3 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Sat Oct 18 13:46:54 EDT 2008
Author: tirelli
Date: 2008-10-18 13:46:54 -0400 (Sat, 18 Oct 2008)
New Revision: 23508
Added:
labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/dt/MetadataCol.java
Modified:
labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/dt/GuidedDecisionTable.java
labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/guvnor/server/util/GuidedDTDRLPersistence.java
labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/guvnor/server/util/GuidedDTXMLPersistence.java
labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/guvnor/server/util/GuidedDTDRLPersistenceTest.java
labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/guvnor/server/util/GuidedDTXMLPersistenceTest.java
labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/decisiontable/GuidedDecisionTableWidget.java
labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/RuleAttributeWidget.java
labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/RuleModeller.java
Log:
JBRULES-1806 Metadata in Guvnor DT, more cleanup and tests
Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/dt/GuidedDecisionTable.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/dt/GuidedDecisionTable.java 2008-10-18 17:10:06 UTC (rev 23507)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/dt/GuidedDecisionTable.java 2008-10-18 17:46:54 UTC (rev 23508)
@@ -25,6 +25,8 @@
*/
public String tableName;
+ public List<MetadataCol> metadataCols = new ArrayList<MetadataCol>();
+
public List<AttributeCol> attributeCols = new ArrayList<AttributeCol>();
public List<ConditionCol> conditionCols = new ArrayList<ConditionCol>();
Added: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/dt/MetadataCol.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/dt/MetadataCol.java (rev 0)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/dt/MetadataCol.java 2008-10-18 17:46:54 UTC (rev 23508)
@@ -0,0 +1,13 @@
+package org.drools.guvnor.client.modeldriven.dt;
+
+
+/**
+ * This is a rule metadata - eg @foo(bar) etc.
+ * @author Michael Rhoden
+ *
+ */
+public class MetadataCol extends DTColumnConfig {
+
+ public String attr;
+
+}
Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/guvnor/server/util/GuidedDTDRLPersistence.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/guvnor/server/util/GuidedDTDRLPersistence.java 2008-10-18 17:10:06 UTC (rev 23507)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/guvnor/server/util/GuidedDTDRLPersistence.java 2008-10-18 17:46:54 UTC (rev 23508)
@@ -12,6 +12,7 @@
import org.drools.guvnor.client.modeldriven.brl.IPattern;
import org.drools.guvnor.client.modeldriven.brl.ISingleFieldConstraint;
import org.drools.guvnor.client.modeldriven.brl.RuleAttribute;
+import org.drools.guvnor.client.modeldriven.brl.RuleMetadata;
import org.drools.guvnor.client.modeldriven.brl.RuleModel;
import org.drools.guvnor.client.modeldriven.brl.SingleFieldConstraint;
import org.drools.guvnor.client.modeldriven.dt.ActionCol;
@@ -21,6 +22,7 @@
import org.drools.guvnor.client.modeldriven.dt.AttributeCol;
import org.drools.guvnor.client.modeldriven.dt.ConditionCol;
import org.drools.guvnor.client.modeldriven.dt.GuidedDecisionTable;
+import org.drools.guvnor.client.modeldriven.dt.MetadataCol;
/**
* This takes care of converting GuidedDT object to DRL (via the RuleModel).
@@ -45,9 +47,10 @@
RuleModel rm = new RuleModel();
rm.name = getName(dt.tableName, num);
- doAttribs(dt.attributeCols, row, rm);
- doConditions(dt.attributeCols.size(), dt.conditionCols, row, rm);
- doActions(dt.attributeCols.size() + dt.conditionCols.size(), dt.actionCols, row, rm);
+ doMetadata(dt.metadataCols, row, rm);
+ doAttribs(dt.metadataCols.size(), dt.attributeCols, row, rm);
+ doConditions(dt.metadataCols.size() + dt.attributeCols.size(), dt.conditionCols, row, rm);
+ doActions(dt.metadataCols.size() +dt.attributeCols.size() + dt.conditionCols.size(), dt.actionCols, row, rm);
sb.append("#from row number: " + (i + 1) + "\n");
String rule = BRDRLPersistence.getInstance().marshal(rm);
@@ -119,13 +122,13 @@
return null;
}
- void doConditions(int numOfAttributes, List<ConditionCol> conditionCols, String[] row, RuleModel rm) {
+ void doConditions(int numOfAttributesAndMeta, List<ConditionCol> conditionCols, String[] row, RuleModel rm) {
List<FactPattern> patterns = new ArrayList<FactPattern>();
for (int i = 0; i < conditionCols.size(); i++) {
ConditionCol c = (ConditionCol) conditionCols.get(i);
- String cell = row[i + 2 + numOfAttributes];
+ String cell = row[i + 2 + numOfAttributesAndMeta];
if (validCell(cell)) {
//get or create the pattern it belongs too
@@ -188,11 +191,11 @@
return null;
}
- void doAttribs(List<AttributeCol> attributeCols, String[] row, RuleModel rm) {
+ void doAttribs(int numOfMeta, List<AttributeCol> attributeCols, String[] row, RuleModel rm) {
List<RuleAttribute> attribs = new ArrayList<RuleAttribute>();
for (int j = 0; j < attributeCols.size(); j++) {
AttributeCol at = attributeCols.get(j);
- String cell = row[j + 2];
+ String cell = row[j + 2 + numOfMeta];
if (validCell(cell)) {
attribs.add(new RuleAttribute(at.attr, cell));
}
@@ -201,6 +204,20 @@
rm.attributes = attribs.toArray(new RuleAttribute[attribs.size()]);
}
}
+
+ void doMetadata(List<MetadataCol> metadataCols, String[] row, RuleModel rm) {
+ List<RuleMetadata> metadataList = new ArrayList<RuleMetadata>();
+ for (int j = 0; j < metadataCols.size(); j++) {
+ MetadataCol meta = metadataCols.get(j);
+ String cell = row[j + 2];
+ if (validCell(cell)) {
+ metadataList.add(new RuleMetadata(meta.attr, cell));
+ }
+ }
+ if (metadataList.size() > 0) {
+ rm.metadataList = metadataList.toArray(new RuleMetadata[metadataList.size()]);
+ }
+ }
String getName(String tableName, String num) {
return "Row " + num + " " + tableName;
Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/guvnor/server/util/GuidedDTXMLPersistence.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/guvnor/server/util/GuidedDTXMLPersistence.java 2008-10-18 17:10:06 UTC (rev 23507)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/guvnor/server/util/GuidedDTXMLPersistence.java 2008-10-18 17:46:54 UTC (rev 23508)
@@ -6,6 +6,7 @@
import org.drools.guvnor.client.modeldriven.dt.AttributeCol;
import org.drools.guvnor.client.modeldriven.dt.ConditionCol;
import org.drools.guvnor.client.modeldriven.dt.GuidedDecisionTable;
+import org.drools.guvnor.client.modeldriven.dt.MetadataCol;
import com.thoughtworks.xstream.XStream;
import com.thoughtworks.xstream.io.xml.DomDriver;
@@ -18,6 +19,7 @@
private GuidedDTXMLPersistence() {
xt = new XStream(new DomDriver());
xt.alias("decision-table", GuidedDecisionTable.class);
+ xt.alias("metadata-column", MetadataCol.class);
xt.alias("attribute-column", AttributeCol.class);
xt.alias("condition-column", ConditionCol.class);
xt.alias("set-field-col", ActionSetFieldCol.class);
Modified: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/guvnor/server/util/GuidedDTDRLPersistenceTest.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/guvnor/server/util/GuidedDTDRLPersistenceTest.java 2008-10-18 17:10:06 UTC (rev 23507)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/guvnor/server/util/GuidedDTDRLPersistenceTest.java 2008-10-18 17:46:54 UTC (rev 23508)
@@ -12,6 +12,7 @@
import org.drools.guvnor.client.modeldriven.brl.FactPattern;
import org.drools.guvnor.client.modeldriven.brl.ISingleFieldConstraint;
import org.drools.guvnor.client.modeldriven.brl.RuleAttribute;
+import org.drools.guvnor.client.modeldriven.brl.RuleMetadata;
import org.drools.guvnor.client.modeldriven.brl.RuleModel;
import org.drools.guvnor.client.modeldriven.brl.SingleFieldConstraint;
import org.drools.guvnor.client.modeldriven.dt.ActionCol;
@@ -21,8 +22,7 @@
import org.drools.guvnor.client.modeldriven.dt.AttributeCol;
import org.drools.guvnor.client.modeldriven.dt.ConditionCol;
import org.drools.guvnor.client.modeldriven.dt.GuidedDecisionTable;
-import org.drools.guvnor.server.util.BRDRLPersistence;
-import org.drools.guvnor.server.util.GuidedDTDRLPersistence;
+import org.drools.guvnor.client.modeldriven.dt.MetadataCol;
public class GuidedDTDRLPersistenceTest extends TestCase {
@@ -133,7 +133,7 @@
List<AttributeCol> attributeCols = new ArrayList<AttributeCol>();
RuleModel rm = new RuleModel();
RuleAttribute[] orig = rm.attributes;
- p.doAttribs(attributeCols, row, rm);
+ p.doAttribs(0,attributeCols, row, rm);
assertSame(orig, rm.attributes);
@@ -144,14 +144,14 @@
attributeCols.add(col1);
attributeCols.add(col2);
- p.doAttribs(attributeCols, row, rm);
+ p.doAttribs(0, attributeCols, row, rm);
assertEquals(1, rm.attributes.length);
assertEquals("salience", rm.attributes[0].attributeName);
assertEquals("a", rm.attributes[0].value);
row = new String[] {"1", "desc", "a", "b"};
- p.doAttribs(attributeCols, row, rm);
+ p.doAttribs(0, attributeCols, row, rm);
assertEquals(2, rm.attributes.length);
assertEquals("salience", rm.attributes[0].attributeName);
assertEquals("a", rm.attributes[0].value);
@@ -160,6 +160,43 @@
}
+ public void testMetaData() {
+ GuidedDTDRLPersistence p = new GuidedDTDRLPersistence();
+ String[] row = new String[] {"1", "desc", "bar", ""};
+
+ List<MetadataCol> metadataCols = new ArrayList<MetadataCol>();
+ RuleModel rm = new RuleModel();
+ RuleMetadata[] orig = rm.metadataList;
+// RuleAttribute[] orig = rm.attributes;
+ p.doMetadata(metadataCols, row, rm);
+// p.doAttribs(0,metadataCols, row, rm);
+
+ assertSame(orig, rm.metadataList);
+
+ MetadataCol col1 = new MetadataCol();
+ col1.attr = "foo";
+ MetadataCol col2 = new MetadataCol();
+ col2.attr = "foo2";
+ metadataCols.add(col1);
+ metadataCols.add(col2);
+
+ p.doMetadata(metadataCols, row, rm);
+// p.doAttribs(0, metadataCols, row, rm);
+
+ assertEquals(1, rm.metadataList.length);
+ assertEquals("foo", rm.metadataList[0].attributeName);
+ assertEquals("bar", rm.metadataList[0].value);
+
+ row = new String[] {"1", "desc", "bar1", "bar2"};
+ p.doMetadata(metadataCols, row, rm);
+ assertEquals(2, rm.metadataList.length);
+ assertEquals("foo", rm.metadataList[0].attributeName);
+ assertEquals("bar1", rm.metadataList[0].value);
+ assertEquals("foo2", rm.metadataList[1].attributeName);
+ assertEquals("bar2", rm.metadataList[1].value);
+
+ }
+
public void testLHS() {
GuidedDTDRLPersistence p = new GuidedDTDRLPersistence();
String[] row = new String[] {"1", "desc", "a", "mike", "33 + 1", "age > 6", "stilton"};
Modified: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/guvnor/server/util/GuidedDTXMLPersistenceTest.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/guvnor/server/util/GuidedDTXMLPersistenceTest.java 2008-10-18 17:10:06 UTC (rev 23507)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/guvnor/server/util/GuidedDTXMLPersistenceTest.java 2008-10-18 17:46:54 UTC (rev 23508)
@@ -1,20 +1,21 @@
package org.drools.guvnor.server.util;
+import junit.framework.TestCase;
+
import org.drools.guvnor.client.modeldriven.dt.ActionInsertFactCol;
import org.drools.guvnor.client.modeldriven.dt.ActionSetFieldCol;
import org.drools.guvnor.client.modeldriven.dt.AttributeCol;
import org.drools.guvnor.client.modeldriven.dt.ConditionCol;
import org.drools.guvnor.client.modeldriven.dt.GuidedDecisionTable;
-import org.drools.guvnor.server.util.GuidedDTXMLPersistence;
+import org.drools.guvnor.client.modeldriven.dt.MetadataCol;
-import junit.framework.TestCase;
-
public class GuidedDTXMLPersistenceTest extends TestCase {
public void testRoundTrip() {
GuidedDecisionTable dt = new GuidedDecisionTable();
dt.actionCols.add(new ActionInsertFactCol());
dt.actionCols.add(new ActionSetFieldCol());
+ dt.metadataCols.add(new MetadataCol());
dt.attributeCols.add(new AttributeCol());
dt.conditionCols.add(new ConditionCol());
dt.data = new String[][] {
@@ -33,6 +34,7 @@
assertNotNull(dt_);
assertEquals(42, dt_.descriptionWidth);
assertEquals("blah", dt_.tableName);
+ assertEquals(1, dt_.metadataCols.size());
assertEquals(1, dt_.attributeCols.size());
assertEquals(2, dt_.actionCols.size());
assertEquals(1, dt_.conditionCols.size());
Modified: labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/decisiontable/GuidedDecisionTableWidget.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/decisiontable/GuidedDecisionTableWidget.java 2008-10-18 17:10:06 UTC (rev 23507)
+++ labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/decisiontable/GuidedDecisionTableWidget.java 2008-10-18 17:46:54 UTC (rev 23508)
@@ -1,5 +1,6 @@
package org.drools.guvnor.client.decisiontable;
+import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
@@ -12,8 +13,6 @@
import org.drools.guvnor.client.common.SmallLabel;
import org.drools.guvnor.client.modeldriven.SuggestionCompletionEngine;
import org.drools.guvnor.client.modeldriven.brl.ISingleFieldConstraint;
-import org.drools.guvnor.client.modeldriven.brl.RuleAttribute;
-import org.drools.guvnor.client.modeldriven.brl.RuleMetadata;
import org.drools.guvnor.client.modeldriven.dt.ActionCol;
import org.drools.guvnor.client.modeldriven.dt.ActionInsertFactCol;
import org.drools.guvnor.client.modeldriven.dt.ActionSetFieldCol;
@@ -21,12 +20,13 @@
import org.drools.guvnor.client.modeldriven.dt.ConditionCol;
import org.drools.guvnor.client.modeldriven.dt.DTColumnConfig;
import org.drools.guvnor.client.modeldriven.dt.GuidedDecisionTable;
+import org.drools.guvnor.client.modeldriven.dt.MetadataCol;
import org.drools.guvnor.client.modeldriven.ui.ActionValueEditor;
import org.drools.guvnor.client.modeldriven.ui.RuleAttributeWidget;
import org.drools.guvnor.client.packages.SuggestionCompletionCache;
import org.drools.guvnor.client.rpc.RuleAsset;
+import org.drools.guvnor.client.ruleeditor.RuleViewer;
import org.drools.guvnor.client.ruleeditor.SaveEventListener;
-import org.drools.guvnor.client.ruleeditor.RuleViewer;
import com.google.gwt.user.client.Command;
import com.google.gwt.user.client.ui.Button;
@@ -153,6 +153,16 @@
final ListBox list = new ListBox();
list.addItem("Description", "desc");
+ if(dt.metadataCols == null){
+ dt.metadataCols = new ArrayList<MetadataCol>();
+ }
+ for (Iterator iterator = dt.metadataCols.iterator(); iterator.hasNext();) {
+ MetadataCol c = (MetadataCol) iterator.next();
+ list.addItem(c.attr, c.attr);
+ if (c.attr.equals(dt.groupField)) {
+ list.setSelectedIndex(list.getItemCount() - 1);
+ }
+ }
for (Iterator iterator = dt.attributeCols.iterator(); iterator.hasNext();) {
AttributeCol c = (AttributeCol) iterator.next();
list.addItem(c.attr, c.attr);
@@ -287,7 +297,7 @@
private void newActionAdded() {
//want to add in a blank row into the data
- scrapeData(dt.attributeCols.size() + dt.conditionCols.size() + dt.actionCols.size() + 1);
+ scrapeData(dt.metadataCols.size() + dt.attributeCols.size() + dt.conditionCols.size() + dt.actionCols.size() + 1);
refreshGrid();
refreshActionsWidget();
@@ -349,7 +359,7 @@
GuidedDTColumnConfig dialog = new GuidedDTColumnConfig(getSCE(), dt, new Command() {
public void execute() {
//want to add in a blank row into the data
- scrapeData(dt.attributeCols.size() + dt.conditionCols.size() + 1);
+ scrapeData(dt.metadataCols.size() + dt.attributeCols.size() + dt.conditionCols.size() + 1);
refreshGrid();
refreshConditionsWidget();
}
@@ -406,9 +416,31 @@
private void refreshAttributeWidget() {
this.attributeConfigWidget.clear();
attributeConfigWidget.add(newAttr());
+ if(dt.metadataCols.size() > 0){
+ HorizontalPanel hp = new HorizontalPanel();
+ hp.add(new HTML(" "));
+ hp.add(new SmallLabel("Metadata: "));
+ attributeConfigWidget.add(hp);
+ }
+ for (int i = 0; i < dt.metadataCols.size(); i++) {
+ MetadataCol at = (MetadataCol) dt.metadataCols.get(i);
+ HorizontalPanel hp = new HorizontalPanel();
+ hp.add(new HTML(" "));
+ hp.add(removeMeta(at));
+ hp.add(new SmallLabel(at.attr));
+ attributeConfigWidget.add(hp);
+ }
+ if(dt.attributeCols.size() > 0){
+ HorizontalPanel hp = new HorizontalPanel();
+ hp.add(new HTML(" "));
+ hp.add(new SmallLabel("Attributes: "));
+ attributeConfigWidget.add(hp);
+ }
+
for (int i = 0; i < dt.attributeCols.size(); i++) {
AttributeCol at = (AttributeCol) dt.attributeCols.get(i);
HorizontalPanel hp = new HorizontalPanel();
+ hp.add(new HTML(" "));
hp.add(removeAttr(at));
hp.add(new SmallLabel(at.attr));
attributeConfigWidget.add(hp);
@@ -435,7 +467,7 @@
attr.attr = list.getItemText(list.getSelectedIndex());
dt.attributeCols.add(attr);
- scrapeData(dt.attributeCols.size() + 1);
+ scrapeData(dt.metadataCols.size() + dt.attributeCols.size() + 1);
refreshGrid();
refreshAttributeWidget();
pop.hide();
@@ -467,10 +499,13 @@
addbutton.addClickListener( new ClickListener() {
public void onClick(Widget w) {
-
-// model.addMetadata( new RuleMetadata(box.getText(), "") );
-// refreshWidget();
- pop.hide();
+ MetadataCol met = new MetadataCol();
+ met.attr = box.getText();
+ dt.metadataCols.add(met);
+ scrapeData(dt.metadataCols.size() + 1);
+ refreshGrid();
+ refreshAttributeWidget();
+ pop.hide();
}
});
DirtyableHorizontalPane horiz = new DirtyableHorizontalPane();
@@ -524,6 +559,21 @@
return del;
}
+ private Widget removeMeta(final MetadataCol md) {
+ Image del = new ImageButton("images/delete_item_small.gif", "Remove this metadata", new ClickListener() {
+ public void onClick(Widget w) {
+ if (com.google.gwt.user.client.Window.confirm("Are you sure you want to delete the column for " + md.attr + " - all data in that column will be removed?")) {
+ dt.metadataCols.remove(md);
+ removeField(md.attr);
+ scrapeData(-1);
+ refreshGrid();
+ refreshAttributeWidget();
+ }
+ }
+ });
+
+ return del;
+ }
/**
* Here we read the record data from the grid into the data in the model.
* if we have an insertCol - then a new empty column of data will be added in that
@@ -603,7 +653,7 @@
private GridPanel doGrid() {
- fds = new FieldDef[dt.attributeCols.size() + dt.actionCols.size() + dt.conditionCols.size() + 2]; //its +2 as we have counter and description data
+ fds = new FieldDef[dt.metadataCols.size() + dt.attributeCols.size() + dt.actionCols.size() + dt.conditionCols.size() + 2]; //its +2 as we have counter and description data
colMap = new HashMap();
@@ -639,7 +689,25 @@
}
};
colCount++;
+
+ //now to metadata
+ for (int i = 0; i < dt.metadataCols.size(); i++) {
+ final MetadataCol attr = (MetadataCol) dt.metadataCols.get(i);
+ fds[colCount] = new StringFieldDef(attr.attr);
+ cols[colCount] = new ColumnConfig() {
+ {
+ setHeader(attr.attr);
+ setDataIndex(attr.attr);
+ setSortable(true);
+ if (attr.width != -1) {
+ setWidth(attr.width);
+ }
+ }
+ };
+ colMap.put(attr.attr, attr);
+ colCount++;
+ }
//now to attributes
for (int i = 0; i < dt.attributeCols.size(); i++) {
Modified: labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/RuleAttributeWidget.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/RuleAttributeWidget.java 2008-10-18 17:10:06 UTC (rev 23507)
+++ labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/RuleAttributeWidget.java 2008-10-18 17:46:54 UTC (rev 23508)
@@ -20,6 +20,7 @@
import org.drools.guvnor.client.common.DirtyableComposite;
import org.drools.guvnor.client.common.DirtyableHorizontalPane;
import org.drools.guvnor.client.common.FormStyleLayout;
+import org.drools.guvnor.client.common.SmallLabel;
import org.drools.guvnor.client.modeldriven.brl.RuleAttribute;
import org.drools.guvnor.client.modeldriven.brl.RuleMetadata;
import org.drools.guvnor.client.modeldriven.brl.RuleModel;
@@ -28,6 +29,8 @@
import com.google.gwt.user.client.ui.ChangeListener;
import com.google.gwt.user.client.ui.CheckBox;
import com.google.gwt.user.client.ui.ClickListener;
+import com.google.gwt.user.client.ui.HTML;
+import com.google.gwt.user.client.ui.HorizontalPanel;
import com.google.gwt.user.client.ui.Image;
import com.google.gwt.user.client.ui.KeyboardListener;
import com.google.gwt.user.client.ui.ListBox;
@@ -54,11 +57,25 @@
layout = new FormStyleLayout();
//Adding metadata here, seems redundant to add a new widget for metadata. Model does handle meta data separate.
RuleMetadata[] meta = model.metadataList;
+ if(meta.length > 0){
+ HorizontalPanel hp = new HorizontalPanel();
+ //hp.add(new HTML(" "));
+ hp.add(new SmallLabel("Metadata: "));
+ //attributeConfigWidget.add(hp);
+ layout.addRow(hp);
+ }
for ( int i = 0; i < meta.length; i++ ) {
RuleMetadata rmd = meta[i];
layout.addAttribute( rmd.attributeName, getEditorWidget(rmd, i));
}
RuleAttribute[] attrs = model.attributes;
+ if(attrs.length > 0){
+ HorizontalPanel hp = new HorizontalPanel();
+ //hp.add(new HTML(" "));
+ hp.add(new SmallLabel("Attributes: "));
+ //attributeConfigWidget.add(hp);
+ layout.addRow(hp);
+ }
for ( int i = 0; i < attrs.length; i++ ) {
RuleAttribute at = attrs[i];
layout.addAttribute( at.attributeName, getEditorWidget(at, i));
Modified: labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/RuleModeller.java
===================================================================
--- labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/RuleModeller.java 2008-10-18 17:10:06 UTC (rev 23507)
+++ labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/RuleModeller.java 2008-10-18 17:46:54 UTC (rev 23508)
@@ -141,6 +141,7 @@
layout.setWidget( 4, 0, new SmallLabel("(options)") );
layout.setWidget( 4, 2, getAddAttribute() );
layout.setWidget( 5, 1, new RuleAttributeWidget(this, this.model) );
+
}
public void refreshWidget() {
More information about the jboss-svn-commits
mailing list