[jboss-svn-commits] JBL Code SVN: r31192 - in labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban: drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/brl and 6 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Fri Jan 22 09:10:10 EST 2010


Author: eaa
Date: 2010-01-22 09:10:09 -0500 (Fri, 22 Jan 2010)
New Revision: 31192

Modified:
   labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/ModelField.java
   labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/brl/ExpressionFormLine.java
   labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/server/util/BRDRLPersistence.java
   labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/server/util/BRXMLPersistence.java
   labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/messages/Constants.java
   labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/messages/Constants.properties
   labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/HumanReadable.java
   labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/CompositeFactPatternWidget.java
   labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/RuleModeller.java
   labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/factPattern/PopupCreator.java
   labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/rpc/RuleAsset.java
Log:
Guided Editor:
	FROM support: added basic FROM support.

Modified: labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/ModelField.java
===================================================================
--- labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/ModelField.java	2010-01-22 14:00:31 UTC (rev 31191)
+++ labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/ModelField.java	2010-01-22 14:10:09 UTC (rev 31192)
@@ -1,10 +1,11 @@
 package org.drools.guvnor.client.modeldriven;
 
+import java.io.Serializable;
 import org.drools.guvnor.client.modeldriven.brl.PortableObject;
 
 public class ModelField implements PortableObject {
 
-    public static enum FIELD_CLASS_TYPE{
+    public static enum FIELD_CLASS_TYPE implements PortableObject{
         REGULAR_CLASS,
         TYPE_DECLARATION_CLASS
     }

Modified: labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/brl/ExpressionFormLine.java
===================================================================
--- labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/brl/ExpressionFormLine.java	2010-01-22 14:00:31 UTC (rev 31191)
+++ labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/client/modeldriven/brl/ExpressionFormLine.java	2010-01-22 14:10:09 UTC (rev 31192)
@@ -8,5 +8,9 @@
  *
  */
 public class ExpressionFormLine implements IAction, IPattern {
-	public String text;
+
+    public String text;
+
+    public ExpressionFormLine() {
+    }
 }

Modified: labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/server/util/BRDRLPersistence.java
===================================================================
--- labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/server/util/BRDRLPersistence.java	2010-01-22 14:00:31 UTC (rev 31191)
+++ labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/server/util/BRDRLPersistence.java	2010-01-22 14:10:09 UTC (rev 31192)
@@ -184,6 +184,27 @@
 			}
 		}
 
+		public void visitFromCompositeFactPattern(FromCompositeFactPattern pattern) {
+			buf.append("\t\t");
+			if (isDSLEnhanced) {
+				// adding passthrough markup
+				buf.append(">");
+			}
+			if (FromCompositeFactPattern.COMPOSITE_TYPE_FROM.equals(pattern.type)) {
+				renderSubPattern(pattern, 0);
+                                buf.append(" FROM ( ");
+                                renderExpression(pattern.getExpression());
+                                buf.append(") \n");
+
+			} else if (FromCompositeFactPattern.COMPOSITE_TYPE_FROM_ACCUMULATE
+					.equals(pattern.type)) {
+				throw new IllegalArgumentException("FROM ACCUMULATE is not supported yet.");
+			} else if (FromCompositeFactPattern.COMPOSITE_TYPE_FROM_COLLECT
+					.equals(pattern.type)) {
+				throw new IllegalArgumentException("FROM COLLECT is not supported yet.");
+			}
+		}
+
 		private void renderCompositeFOL(CompositeFactPattern pattern) {
 			buf.append(pattern.type);
 			if (pattern.patterns != null && pattern.patterns.length > 1) {
@@ -208,6 +229,10 @@
 			this.generateFactPattern(pattern.patterns[subIndex]);
 		}
 
+                private void renderExpression(ExpressionFormLine expression){
+                    buf.append(expression.text);
+                }
+
 		public void visitDSLSentence(final DSLSentence sentence) {
 			buf.append("\t\t");
 			buf.append(sentence.toString());

Modified: labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/server/util/BRXMLPersistence.java
===================================================================
--- labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/server/util/BRXMLPersistence.java	2010-01-22 14:00:31 UTC (rev 31191)
+++ labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-compiler/src/main/java/org/drools/guvnor/server/util/BRXMLPersistence.java	2010-01-22 14:10:09 UTC (rev 31192)
@@ -38,6 +38,8 @@
                        DSLSentence.class );
         this.xt.alias( "compositePattern",
                        CompositeFactPattern.class );
+        this.xt.alias( "fromCompositePattern",
+                       FromCompositeFactPattern.class );
         this.xt.alias( "metadata",
                        RuleMetadata.class );
         this.xt.alias( "attribute",

Modified: labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/messages/Constants.java
===================================================================
--- labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/messages/Constants.java	2010-01-22 14:00:31 UTC (rev 31191)
+++ labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/messages/Constants.java	2010-01-22 14:10:09 UTC (rev 31192)
@@ -1432,6 +1432,8 @@
 
     String AdvancedOptionsColon();
 
+    String AddFromConditionColon();
+
     String AddAnItemToACollection();
 
     String InsertANewFact();
@@ -1934,6 +1936,10 @@
     String IncomingChanges();
 
     String From();
+
+    String FromAccumulate();
+
+    String FromCollect();
     
     String URLDocumentionDescription();
 

Modified: labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/messages/Constants.properties
===================================================================
--- labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/messages/Constants.properties	2010-01-22 14:00:31 UTC (rev 31191)
+++ labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/messages/Constants.properties	2010-01-22 14:10:09 UTC (rev 31192)
@@ -617,6 +617,7 @@
 AddSubFieldConstraint=Add sub-field constraint
 MultipleConstraintsTip1=You can specify constraints that span multiple fields (and more). The results of all these constraints can be combined with a 'and' or an 'or' logically. You can also have other multiple field constraints nested inside these restrictions.
 AdvancedOptionsColon=Advanced options:
+AddFromConditionColon=Add From condition:
 AddANewFormulaStyleExpression=Add a new formula style expression
 VariableName=Variable name
 Add=Add
@@ -920,6 +921,8 @@
 RecentlyEdited=Recently Edited
 IncomingChanges=Incoming changes
 From=From
+FromAccumulate=From Accumulate
+FromCollect=From Collect
 URLDocumentionDescription=Use this url to download package documentation PDF.
 URLForDocumention=URL for package documentation:
 CanNotMoveColumnsFromOneTypeGroupToAnother=Can not move columns from one type group to another

Modified: labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/HumanReadable.java
===================================================================
--- labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/HumanReadable.java	2010-01-22 14:00:31 UTC (rev 31191)
+++ labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/HumanReadable.java	2010-01-22 14:10:09 UTC (rev 31192)
@@ -23,6 +23,7 @@
 import java.util.Map;
 
 import com.google.gwt.core.client.GWT;
+import org.drools.guvnor.client.modeldriven.brl.FromCompositeFactPattern;
 
 /**
  * This contains some simple mappings between operators, conditional elements and the human readable
@@ -39,6 +40,7 @@
     public static Map ceDisplayMap = new HashMap();
     public static Map actionDisplayMap = new HashMap();
     public static final String[] CONDITIONAL_ELEMENTS = new String[] {"not", "exists", "or"};
+    public static final String[] FROM_CONDITIONAL_ELEMENTS = new String[] {"from","from accumulate","from collect"};
 
     private static Constants constants;
 
@@ -79,6 +81,10 @@
         ceDisplayMap.put( "exists", constants.ThereExists());
         ceDisplayMap.put( "or", constants.AnyOf1());
 
+        ceDisplayMap.put( "from", constants.From());
+        ceDisplayMap.put( "from accumulate", constants.FromAccumulate());
+        ceDisplayMap.put( "from collect", constants.FromCollect());
+
         actionDisplayMap.put( "assert", constants.Insert());
         actionDisplayMap.put( "assertLogical", constants.LogicallyInsert());
         actionDisplayMap.put( "retract", constants.Retract());

Modified: labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/CompositeFactPatternWidget.java
===================================================================
--- labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/CompositeFactPatternWidget.java	2010-01-22 14:00:31 UTC (rev 31191)
+++ labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/CompositeFactPatternWidget.java	2010-01-22 14:10:09 UTC (rev 31192)
@@ -41,11 +41,11 @@
  */
 public class CompositeFactPatternWidget extends DirtyableComposite {
 
-    private final SuggestionCompletionEngine completions;
-    private CompositeFactPattern             pattern;
-    private DirtyableFlexTable                             layout;
-    private RuleModeller                     modeller;
-    private Constants constants = ((Constants) GWT.create(Constants.class));
+    protected final SuggestionCompletionEngine completions;
+    protected CompositeFactPattern             pattern;
+    protected DirtyableFlexTable                             layout;
+    protected RuleModeller                     modeller;
+    protected Constants constants = ((Constants) GWT.create(Constants.class));
 
     public CompositeFactPatternWidget(RuleModeller modeller,
                                       CompositeFactPattern pattern) {
@@ -60,7 +60,7 @@
         initWidget( layout );
     }
 
-    private void doLayout() {
+    protected void doLayout() {
         this.layout.setWidget( 0,
                                0,
                                getCompositeLabel() );
@@ -84,7 +84,7 @@
         }
     }
 
-    private Widget getCompositeLabel() {
+    protected Widget getCompositeLabel() {
 
         ClickListener click =  new ClickListener() {
             public void onClick(Widget w) {
@@ -133,6 +133,4 @@
         return layout.hasDirty();
     }
 
-
-
 }
\ No newline at end of file

Modified: labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/RuleModeller.java
===================================================================
--- labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/RuleModeller.java	2010-01-22 14:00:31 UTC (rev 31191)
+++ labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/RuleModeller.java	2010-01-22 14:10:09 UTC (rev 31192)
@@ -413,6 +413,21 @@
             });
         }
 
+        String fces[]  = HumanReadable.FROM_CONDITIONAL_ELEMENTS;
+
+        choices.addItem("..................");
+        for ( int i = 0; i < fces.length; i++ ) {
+            final String ce = fces[i];
+            String key = "FCE" + ce;
+            choices.addItem( HumanReadable.getCEDisplayName( ce ) + " ...", key );
+            cmds.put(key, new Command() {
+                public void execute() {
+                    addNewFCE(ce);
+                    popup.hide();
+                }
+            });
+        }
+
         if (ExplorerLayoutManager.shouldShow(Capabilities.SHOW_PACKAGE_VIEW)) {
             choices.addItem("..................");
             choices.addItem(constants.FreeFormDrl(), "FF");
@@ -737,6 +752,11 @@
         refreshWidget();
     }
 
+    protected void addNewFCE(String s) {
+        this.model.addLhsItem( new FromCompositeFactPattern(s) );
+        refreshWidget();
+    }
+
     /**
      * Adds a fact to the model, and then refreshes the display.
      */
@@ -761,7 +781,11 @@
                               w ) );
                 vert.add( spacerWidget() );
             } else if (pattern instanceof CompositeFactPattern) {
-                w = new CompositeFactPatternWidget(this, (CompositeFactPattern) pattern) ;
+                if (pattern instanceof FromCompositeFactPattern){
+                    w = new FromCompositeFactPatternWidget(this, (FromCompositeFactPattern) pattern) ;
+                }else{
+                    w = new CompositeFactPatternWidget(this, (CompositeFactPattern) pattern) ;
+                }
                 vert.add( wrapLHSWidget( model, i, w ));
                 vert.add( spacerWidget() );
             } else if (pattern instanceof DSLSentence) {

Modified: labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/factPattern/PopupCreator.java
===================================================================
--- labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/factPattern/PopupCreator.java	2010-01-22 14:00:31 UTC (rev 31191)
+++ labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/factPattern/PopupCreator.java	2010-01-22 14:10:09 UTC (rev 31192)
@@ -24,11 +24,11 @@
 import com.gwtext.client.util.Format;
 
 public class PopupCreator {
-    
-    private FactPattern                pattern;
+
+    private FactPattern pattern;
     private SuggestionCompletionEngine completions;
-    private RuleModeller               modeller;
-    private boolean                    bindable;
+    private RuleModeller modeller;
+    private boolean bindable;
     private Constants constants = ((Constants) GWT.create(Constants.class));
 
     /**
@@ -92,19 +92,20 @@
      */
     public void showBindFieldPopup(final Widget w, final SingleFieldConstraint con, String[] fields, final PopupCreator popupCreator) {
 
-        
+
         final FormStylePopup popup = new FormStylePopup();
         popup.setWidth(500);
         final HorizontalPanel vn = new HorizontalPanel();
         final TextBox varName = new TextBox();
         final Button ok = new Button(constants.Set());
-        vn.add( varName );
-        vn.add( ok );
+        vn.add(varName);
+        vn.add(ok);
 
-        ok.addClickListener( new ClickListener() {
+        ok.addClickListener(new ClickListener() {
+
             public void onClick(Widget w) {
                 String var = varName.getText();
-                if (modeller.isVariableNameUsed( var )) {
+                if (modeller.isVariableNameUsed(var)) {
                     Window.alert(Format.format(constants.TheVariableName0IsAlreadyTaken(), var));
                     return;
                 }
@@ -112,12 +113,13 @@
                 modeller.refreshWidget();
                 popup.hide();
             }
-        } );
-        popup.addAttribute(Format.format(constants.BindTheFieldCalled0ToAVariable(), con.fieldName), vn );
+        });
+        popup.addAttribute(Format.format(constants.BindTheFieldCalled0ToAVariable(), con.fieldName), vn);
         if (fields != null) {
             Button sub = new Button(constants.ShowSubFields());
             popup.addAttribute(Format.format(constants.ApplyAConstraintToASubFieldOf0(), con.fieldName), sub);
             sub.addClickListener(new ClickListener() {
+
                 public void onClick(Widget sender) {
                     popup.hide();
                     popupCreator.showPatternPopup(w, con.fieldType, con);
@@ -127,44 +129,46 @@
 
         popup.show();
     }
-    
+
     /**
      * This shows a popup for adding fields to a composite
      */
     public void showPatternPopupForComposite(Widget w, final CompositeFieldConstraint composite) {
-        final FormStylePopup popup = new FormStylePopup( "images/newex_wiz.gif", //NON-NLS
+        final FormStylePopup popup = new FormStylePopup("images/newex_wiz.gif", //NON-NLS
                 constants.AddFieldsToThisConstraint());
 
         final ListBox box = new ListBox();
-        box.addItem( "..." );
-        String[] fields = this.completions.getFieldCompletions( this.pattern.factType );
-        for ( int i = 0; i < fields.length; i++ ) {
-            box.addItem( fields[i] );
+        box.addItem("...");
+        String[] fields = this.completions.getFieldCompletions(this.pattern.factType);
+        for (int i = 0; i < fields.length; i++) {
+            box.addItem(fields[i]);
         }
 
-        box.setSelectedIndex( 0 );
+        box.setSelectedIndex(0);
 
-        box.addChangeListener( new ChangeListener() {
+        box.addChangeListener(new ChangeListener() {
+
             public void onChange(Widget w) {
-                composite.addConstraint( new SingleFieldConstraint( box.getItemText( box.getSelectedIndex() ) ) );
+                composite.addConstraint(new SingleFieldConstraint(box.getItemText(box.getSelectedIndex())));
                 modeller.refreshWidget();
                 popup.hide();
             }
-        } );
-        popup.addAttribute(constants.AddARestrictionOnAField(), box );
+        });
+        popup.addAttribute(constants.AddARestrictionOnAField(), box);
 
 
         final ListBox composites = new ListBox();
         composites.addItem("..."); //NON-NLS
-        composites.addItem(constants.AllOfAnd(), CompositeFieldConstraint.COMPOSITE_TYPE_AND );
-        composites.addItem(constants.AnyOfOr(), CompositeFieldConstraint.COMPOSITE_TYPE_OR );
-        composites.setSelectedIndex( 0 );
+        composites.addItem(constants.AllOfAnd(), CompositeFieldConstraint.COMPOSITE_TYPE_AND);
+        composites.addItem(constants.AnyOfOr(), CompositeFieldConstraint.COMPOSITE_TYPE_OR);
+        composites.setSelectedIndex(0);
 
-        composites.addChangeListener( new ChangeListener() {
+        composites.addChangeListener(new ChangeListener() {
+
             public void onChange(Widget w) {
                 CompositeFieldConstraint comp = new CompositeFieldConstraint();
-                comp.compositeJunctionType = composites.getValue( composites.getSelectedIndex() );
-                composite.addConstraint( comp );
+                comp.compositeJunctionType = composites.getValue(composites.getSelectedIndex());
+                composite.addConstraint(comp);
                 modeller.refreshWidget();
                 popup.hide();
             }
@@ -173,9 +177,9 @@
         InfoPopup infoComp = new InfoPopup(constants.MultipleFieldConstraints(), constants.MultipleConstraintsTip());
 
         HorizontalPanel horiz = new HorizontalPanel();
-        horiz.add( composites );
-        horiz.add( infoComp );
-        popup.addAttribute(constants.MultipleFieldConstraint(), horiz );
+        horiz.add(composites);
+        horiz.add(infoComp);
+        popup.addAttribute(constants.MultipleFieldConstraint(), horiz);
 
         popup.show();
 
@@ -187,42 +191,44 @@
     public void showPatternPopup(Widget w, final String factType, final FieldConstraint con) {
 
         String title = (con == null) ? Format.format(constants.ModifyConstraintsFor0(), factType) : constants.AddSubFieldConstraint();
-        final FormStylePopup popup = new FormStylePopup( "images/newex_wiz.gif",                                           //NON-NLS
-                                                          title );
+        final FormStylePopup popup = new FormStylePopup("images/newex_wiz.gif", //NON-NLS
+                title);
 
         final ListBox box = new ListBox();
-        box.addItem( "..." );
-        String[] fields = this.completions.getFieldCompletions( factType );
-        for ( int i = 0; i < fields.length; i++ ) {
-            box.addItem( fields[i] );
+        box.addItem("...");
+        String[] fields = this.completions.getFieldCompletions(factType);
+        for (int i = 0; i < fields.length; i++) {
+            box.addItem(fields[i]);
         }
 
-        box.setSelectedIndex( 0 );
+        box.setSelectedIndex(0);
 
-        box.addChangeListener( new ChangeListener() {
+        box.addChangeListener(new ChangeListener() {
+
             public void onChange(Widget w) {
-                String fieldName = box.getItemText( box.getSelectedIndex() );
+                String fieldName = box.getItemText(box.getSelectedIndex());
                 String qualifiedName = factType + "." + fieldName;
                 String fieldType = (String) completions.getFieldType(qualifiedName);
-                pattern.addConstraint( new SingleFieldConstraint( fieldName, fieldType, con ) );
+                pattern.addConstraint(new SingleFieldConstraint(fieldName, fieldType, con));
                 modeller.refreshWidget();
                 popup.hide();
             }
-        } );
-        popup.addAttribute(constants.AddARestrictionOnAField(), box );
+        });
+        popup.addAttribute(constants.AddARestrictionOnAField(), box);
 
 
         final ListBox composites = new ListBox();
         composites.addItem("...");
-        composites.addItem(constants.AllOfAnd(), CompositeFieldConstraint.COMPOSITE_TYPE_AND );
-        composites.addItem(constants.AnyOfOr(), CompositeFieldConstraint.COMPOSITE_TYPE_OR );
-        composites.setSelectedIndex( 0 );
+        composites.addItem(constants.AllOfAnd(), CompositeFieldConstraint.COMPOSITE_TYPE_AND);
+        composites.addItem(constants.AnyOfOr(), CompositeFieldConstraint.COMPOSITE_TYPE_OR);
+        composites.setSelectedIndex(0);
 
-        composites.addChangeListener( new ChangeListener() {
+        composites.addChangeListener(new ChangeListener() {
+
             public void onChange(Widget w) {
                 CompositeFieldConstraint comp = new CompositeFieldConstraint();
-                comp.compositeJunctionType = composites.getValue( composites.getSelectedIndex() );
-                pattern.addConstraint( comp );
+                comp.compositeJunctionType = composites.getValue(composites.getSelectedIndex());
+                pattern.addConstraint(comp);
                 modeller.refreshWidget();
                 popup.hide();
             }
@@ -232,34 +238,35 @@
 
         HorizontalPanel horiz = new HorizontalPanel();
 
-        horiz.add( composites );
-        horiz.add( infoComp );
+        horiz.add(composites);
+        horiz.add(infoComp);
         if (con == null) {
-            popup.addAttribute(constants.MultipleFieldConstraint(), horiz );
+            popup.addAttribute(constants.MultipleFieldConstraint(), horiz);
         }
 
 
         //popup.addRow( new HTML("<hr/>") );
         if (con == null) {
-            popup.addRow( new SmallLabel("<i>" + constants.AdvancedOptionsColon() + "</i>") ); //NON-NLS
+            popup.addRow(new SmallLabel("<i>" + constants.AdvancedOptionsColon() + "</i>")); //NON-NLS
             final Button predicate = new Button(constants.NewFormula());
-            predicate.addClickListener( new ClickListener() {
+            predicate.addClickListener(new ClickListener() {
+
                 public void onClick(Widget w) {
                     SingleFieldConstraint con = new SingleFieldConstraint();
                     con.constraintValueType = SingleFieldConstraint.TYPE_PREDICATE;
-                    pattern.addConstraint( con );
+                    pattern.addConstraint(con);
                     modeller.refreshWidget();
                     popup.hide();
                 }
-            } );
-            popup.addAttribute(constants.AddANewFormulaStyleExpression(), predicate );
+            });
+            popup.addAttribute(constants.AddANewFormulaStyleExpression(), predicate);
 
-            doBindingEditor( popup );
+            doBindingEditor(popup);
         }
 
         popup.show();
     }
-    
+
     /**
      * This adds in (optionally) the editor for changing the bound variable name.
      * If its a bindable pattern, it will show the editor,
@@ -267,23 +274,24 @@
      * not be editable.
      */
     private void doBindingEditor(final FormStylePopup popup) {
-        if ( bindable && !(modeller.getModel().isBoundFactUsed( pattern.boundName )) ) {
+        if (bindable && !(modeller.getModel().isBoundFactUsed(pattern.boundName))) {
             HorizontalPanel varName = new HorizontalPanel();
             final TextBox varTxt = new TextBox();
             if (pattern.boundName == null) {
                 varTxt.setText("");
-            }else {
-                varTxt.setText( pattern.boundName );
+            } else {
+                varTxt.setText(pattern.boundName);
             }
 
-            varTxt.setVisibleLength( 6 );
-            varName.add( varTxt );
+            varTxt.setVisibleLength(6);
+            varName.add(varTxt);
 
-            Button bindVar = new Button( constants.Set() );
-            bindVar.addClickListener( new ClickListener() {
+            Button bindVar = new Button(constants.Set());
+            bindVar.addClickListener(new ClickListener() {
+
                 public void onClick(Widget w) {
                     String var = varTxt.getText();
-                    if (modeller.isVariableNameUsed( var )) {
+                    if (modeller.isVariableNameUsed(var)) {
                         Window.alert(Format.format(constants.TheVariableName0IsAlreadyTaken(), var));
                         return;
                     }
@@ -291,10 +299,10 @@
                     modeller.refreshWidget();
                     popup.hide();
                 }
-            } );
+            });
 
-            varName.add( bindVar );
-            popup.addAttribute(constants.VariableName(), varName );
+            varName.add(bindVar);
+            popup.addAttribute(constants.VariableName(), varName);
 
         }
     }

Modified: labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/rpc/RuleAsset.java
===================================================================
--- labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/rpc/RuleAsset.java	2010-01-22 14:00:31 UTC (rev 31191)
+++ labs/jbossrules/branches/guvnor_expressionEditor2_baunax_esteban/drools-guvnor/src/main/java/org/drools/guvnor/client/rpc/RuleAsset.java	2010-01-22 14:10:09 UTC (rev 31192)
@@ -31,7 +31,7 @@
  */
 public class RuleAsset
     implements
-    Serializable {
+    Serializable, IsSerializable {
     
     public MetaData metaData;
     public PortableObject content;



More information about the jboss-svn-commits mailing list