[jboss-svn-commits] JBL Code SVN: r31266 - labs/jbossrules/branches/guvnor_expressionEditor3_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Jan 27 14:50:51 EST 2010
Author: eaa
Date: 2010-01-27 14:50:51 -0500 (Wed, 27 Jan 2010)
New Revision: 31266
Modified:
labs/jbossrules/branches/guvnor_expressionEditor3_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/ConstraintValueEditor.java
Log:
Guided Editor:
Field Constraint now support expression builder on right side
Modified: labs/jbossrules/branches/guvnor_expressionEditor3_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/ConstraintValueEditor.java
===================================================================
--- labs/jbossrules/branches/guvnor_expressionEditor3_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/ConstraintValueEditor.java 2010-01-27 19:10:42 UTC (rev 31265)
+++ labs/jbossrules/branches/guvnor_expressionEditor3_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/ConstraintValueEditor.java 2010-01-27 19:50:51 UTC (rev 31266)
@@ -43,6 +43,7 @@
import com.google.gwt.user.client.ui.SimplePanel;
import com.google.gwt.user.client.ui.TextBox;
import com.google.gwt.user.client.ui.Widget;
+import org.drools.guvnor.client.modeldriven.brl.ExpressionFormLine;
/**
* This is an editor for constraint values.
@@ -60,6 +61,7 @@
private final ISingleFieldConstraint constraint;
private final Panel panel;
private final RuleModel model;
+ private final RuleModeller modeller;
private final boolean numericValue;
private DropDownData dropDownData;
private Constants constants = ((Constants) GWT.create( Constants.class ));
@@ -93,6 +95,7 @@
}
this.model = modeller.getModel();
+ this.modeller = modeller;
panel = new SimplePanel();
refreshEditor();
@@ -143,6 +146,9 @@
case SingleFieldConstraint.TYPE_RET_VALUE :
panel.add( returnValueEditor() );
break;
+ case SingleFieldConstraint.TYPE_EXPR_BUILDER :
+ panel.add( expressionEditor() );
+ break;
case SingleFieldConstraint.TYPE_VARIABLE :
panel.add( variableEditor() );
break;
@@ -209,6 +215,17 @@
return ed;
}
+ private Widget expressionEditor() {
+ if (!(this.constraint instanceof SingleFieldConstraint)){
+ throw new IllegalArgumentException("Expected SingleFieldConstraint, but "+constraint.getClass().getName()+" found.");
+ }
+ ExpressionBuilder builder = new ExpressionBuilder(this.modeller, ((SingleFieldConstraint)this.constraint).getExpression());
+ String msg = constants.ExpressionEditor();
+ Widget ed = widgets( new HTML("="),
+ builder );
+ return ed;
+ }
+
/**
* Show a list of possibilities for the value type.
*/
@@ -283,6 +300,20 @@
new InfoPopup( constants.AFormula(),
constants.FormulaExpressionTip() ) ) );
+ Button expression = new Button( constants.ExpressionEditor() );
+ expression.addClickListener( new ClickListener() {
+ public void onClick(Widget w) {
+ con.constraintValueType = SingleFieldConstraint.TYPE_EXPR_BUILDER;
+ doTypeChosen( form );
+ }
+ } );
+
+ form.addAttribute( constants.ExpressionEditor() + ":",
+ widgets( expression,
+ new InfoPopup( constants.ExpressionEditor(),
+ constants.ExpressionEditor() ) ) );
+
+
form.show();
}
More information about the jboss-svn-commits
mailing list