[jboss-svn-commits] JBL Code SVN: r25974 - labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/rulebuilder/ui.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Mon Apr 6 09:12:02 EDT 2009


Author: ahtik
Date: 2009-04-06 09:12:02 -0400 (Mon, 06 Apr 2009)
New Revision: 25974

Modified:
   labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/rulebuilder/ui/ActionInsertFreeFormLineWidget.java
   labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/rulebuilder/ui/AddNewConditionDialog.java
   labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/rulebuilder/ui/FactPatternWidget.java
   labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/rulebuilder/ui/RuleModeller.java
Log:
JBRULES-2032: Added Free form DRL support also to LHS

Modified: labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/rulebuilder/ui/ActionInsertFreeFormLineWidget.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/rulebuilder/ui/ActionInsertFreeFormLineWidget.java	2009-04-06 12:03:01 UTC (rev 25973)
+++ labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/rulebuilder/ui/ActionInsertFreeFormLineWidget.java	2009-04-06 13:12:02 UTC (rev 25974)
@@ -20,18 +20,21 @@
 
 public class ActionInsertFreeFormLineWidget extends Widget {
 
-    private FreeFormLine action;
+    private FreeFormLine  action;
+    private final boolean rhs;
 
     public ActionInsertFreeFormLineWidget(FormToolkit toolkit,
                                           Composite comp,
                                           RuleModeller ruleModeller,
                                           final FreeFormLine action,
-                                          int i) {
+                                          int i,
+                                          boolean rhs) {
 
         super( comp,
                toolkit,
                ruleModeller,
                i );
+        this.rhs = rhs;
 
         GridLayout l = new GridLayout();
         l.numColumns = 2;
@@ -76,9 +79,15 @@
                 dialog.setMessage( "Remove this item?" );
                 dialog.setText( "Remove this item?" );
                 if ( dialog.open() == SWT.YES ) {
-                    getModeller().getModel().removeRhsItem( row );
-                    getModeller().setDirty( true );
-                    getModeller().reloadRhs();
+                    if ( rhs ) {
+                        getModeller().getModel().removeRhsItem( row );
+                        getModeller().setDirty( true );
+                        getModeller().reloadRhs();
+                    } else {
+                        getModeller().getModel().removeLhsItem( row );
+                        getModeller().setDirty( true );
+                        getModeller().reloadLhs();
+                    }
                 }
             }
 

Modified: labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/rulebuilder/ui/AddNewConditionDialog.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/rulebuilder/ui/AddNewConditionDialog.java	2009-04-06 12:03:01 UTC (rev 25973)
+++ labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/rulebuilder/ui/AddNewConditionDialog.java	2009-04-06 13:12:02 UTC (rev 25974)
@@ -4,9 +4,13 @@
 import org.drools.guvnor.client.modeldriven.brl.CompositeFactPattern;
 import org.drools.guvnor.client.modeldriven.brl.DSLSentence;
 import org.drools.guvnor.client.modeldriven.brl.FactPattern;
+import org.drools.guvnor.client.modeldriven.brl.FreeFormLine;
 import org.drools.guvnor.client.modeldriven.brl.IPattern;
 import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
 import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
 import org.eclipse.swt.widgets.Combo;
 import org.eclipse.swt.widgets.Composite;
 import org.eclipse.swt.widgets.Control;
@@ -50,9 +54,32 @@
 
         addDSLSentences( composite );
 
+        addFreeFormLine( composite );
+
         return composite;
     }
 
+    private void addFreeFormLine(Composite composite) {
+        createLabel( composite,
+                     "Free form action" );
+
+        Button b = new Button( composite,
+                               SWT.NONE );
+        b.setText( "Add free form drl" );
+        b.addSelectionListener( new SelectionListener() {
+
+            public void widgetDefaultSelected(SelectionEvent e) {
+            }
+
+            public void widgetSelected(SelectionEvent e) {
+                modeller.getModel().addLhsItem( new FreeFormLine() );
+                modeller.setDirty( true );
+                modeller.reloadLhs();
+                close();
+            }
+        } );
+    }
+
     private void addFacts(Composite composite) {
         createLabel( composite,
                      "Fact" );

Modified: labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/rulebuilder/ui/FactPatternWidget.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/rulebuilder/ui/FactPatternWidget.java	2009-04-06 12:03:01 UTC (rev 25973)
+++ labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/rulebuilder/ui/FactPatternWidget.java	2009-04-06 13:12:02 UTC (rev 25974)
@@ -554,7 +554,6 @@
 
     private boolean hasChildren(int row) {
         SingleFieldConstraint con = (SingleFieldConstraint) pattern.getFieldConstraints()[row];
-        System.out.println(con.fieldName);
         FieldConstraint[] fc = pattern.getFieldConstraints();
         for ( int i = row; i < fc.length; i++ ) {
             SingleFieldConstraint f = (SingleFieldConstraint) fc[i];

Modified: labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/rulebuilder/ui/RuleModeller.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/rulebuilder/ui/RuleModeller.java	2009-04-06 12:03:01 UTC (rev 25973)
+++ labs/jbossrules/trunk/drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/rulebuilder/ui/RuleModeller.java	2009-04-06 13:12:02 UTC (rev 25974)
@@ -221,21 +221,29 @@
                 addRHSDSLSentenceWidget( i,
                                          (DSLSentence) action );
             } else if ( action instanceof FreeFormLine ) {
-                addRHSDSLFreeFormLine( (FreeFormLine) action,
-                                       i );
+                addFreeFormLine( (FreeFormLine) action,
+                                 i,
+                                 true );
             }
 
         }
     }
 
-    private void addRHSDSLFreeFormLine(FreeFormLine action,
-                                       int i) {
-        Composite comp = toolkit.createComposite( thenComposite );
+    private void addFreeFormLine(FreeFormLine action,
+                                 int i,
+                                 boolean rhs) {
+        Composite comp = null;
+        if ( rhs ) {
+            comp = toolkit.createComposite( thenComposite );
+        } else {
+            comp = toolkit.createComposite( ifComposite );
+        }
         new ActionInsertFreeFormLineWidget( toolkit,
                                             comp,
                                             this,
                                             (FreeFormLine) action,
-                                            i );
+                                            i,
+                                            rhs );
     }
 
     private void addActionInsertFactWidget(IAction action,
@@ -261,8 +269,10 @@
                                                (CompositeFactPattern) pattern );
             } else if ( pattern instanceof DSLSentence ) {
                 // skip for now
-            } else {
-                // dont' care
+            } else if ( pattern instanceof FreeFormLine ) {
+                addFreeFormLine( (FreeFormLine) pattern,
+                                 i,
+                                 false );
             }
         }
 




More information about the jboss-svn-commits mailing list