[jboss-svn-commits] JBL Code SVN: r12297 - labs/jbossrules/trunk/drools-eclipse/drools-guided-editor-plugin/src/org/drools/eclipse/rulebuilder/ui.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Sat Jun 2 02:05:49 EDT 2007


Author: arhan
Date: 2007-06-02 02:05:48 -0400 (Sat, 02 Jun 2007)
New Revision: 12297

Added:
   labs/jbossrules/trunk/drools-eclipse/drools-guided-editor-plugin/src/org/drools/eclipse/rulebuilder/ui/RuleAttributeWidget.java
   labs/jbossrules/trunk/drools-eclipse/drools-guided-editor-plugin/src/org/drools/eclipse/rulebuilder/ui/RuleAttributesDialog.java
Modified:
   labs/jbossrules/trunk/drools-eclipse/drools-guided-editor-plugin/src/org/drools/eclipse/rulebuilder/ui/AddNewConditionDialog.java
   labs/jbossrules/trunk/drools-eclipse/drools-guided-editor-plugin/src/org/drools/eclipse/rulebuilder/ui/RuleModeller.java
   labs/jbossrules/trunk/drools-eclipse/drools-guided-editor-plugin/src/org/drools/eclipse/rulebuilder/ui/Widget.java
Log:


Modified: labs/jbossrules/trunk/drools-eclipse/drools-guided-editor-plugin/src/org/drools/eclipse/rulebuilder/ui/AddNewConditionDialog.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/drools-guided-editor-plugin/src/org/drools/eclipse/rulebuilder/ui/AddNewConditionDialog.java	2007-06-02 01:08:55 UTC (rev 12296)
+++ labs/jbossrules/trunk/drools-eclipse/drools-guided-editor-plugin/src/org/drools/eclipse/rulebuilder/ui/AddNewConditionDialog.java	2007-06-02 06:05:48 UTC (rev 12297)
@@ -58,22 +58,10 @@
         }
         factsCombo.select( 0 );
 
-        dialog.addDisposeListener( new DisposeListener() {
-
-            public void widgetDisposed(DisposeEvent e) {
-                System.out.println( "DISPOSED " + e );
-                Thread.dumpStack();
-            }
-
-        } );
-
         factsCombo.addListener( SWT.Selection,
                                 new Listener() {
                                     public void handleEvent(Event event) {
-
-                                        System.out.println( "HERE6666! event " + event );
-
-                                        if ( factsCombo.getSelectionIndex() == 0 ) {
+                                    	if ( factsCombo.getSelectionIndex() == 0 ) {
                                             return;
                                         }
                                         modeller.getModel().addLhsItem( new FactPattern( factsCombo.getText() ) );

Added: labs/jbossrules/trunk/drools-eclipse/drools-guided-editor-plugin/src/org/drools/eclipse/rulebuilder/ui/RuleAttributeWidget.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/drools-guided-editor-plugin/src/org/drools/eclipse/rulebuilder/ui/RuleAttributeWidget.java	                        (rev 0)
+++ labs/jbossrules/trunk/drools-eclipse/drools-guided-editor-plugin/src/org/drools/eclipse/rulebuilder/ui/RuleAttributeWidget.java	2007-06-02 06:05:48 UTC (rev 12297)
@@ -0,0 +1,84 @@
+package org.drools.eclipse.rulebuilder.ui;
+
+import org.drools.brms.client.modeldriven.brxml.RuleAttribute;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.MessageBox;
+import org.eclipse.swt.widgets.Text;
+import org.eclipse.ui.forms.events.HyperlinkEvent;
+import org.eclipse.ui.forms.events.IHyperlinkListener;
+import org.eclipse.ui.forms.widgets.FormToolkit;
+import org.eclipse.ui.forms.widgets.ImageHyperlink;
+
+public class RuleAttributeWidget extends Widget {
+
+	public RuleAttributeWidget(FormToolkit toolkit, Composite parent,
+			RuleModeller modeller) {
+		super(parent, toolkit, modeller, 0);
+
+		GridLayout l = new GridLayout();
+		l.numColumns = 4;
+		l.marginBottom = 0;
+		l.marginHeight = 0;
+		l.marginLeft = 0;
+		l.marginRight = 0;
+		l.marginTop = 0;
+		l.marginWidth = 0;
+		l.verticalSpacing = 0;
+		parent.setLayout(l);
+
+		create();
+	}
+
+	private void create() {
+
+		RuleAttribute[] attrs = modeller.getModel().attributes;
+		for (int i = 0; i < attrs.length; i++) {
+			RuleAttribute at = attrs[i];
+			addAttribute(at);
+		}
+
+	}
+
+	private void addAttribute(RuleAttribute at) {
+		toolkit.createLabel(parent, at.attributeName); 
+		
+		if (at.attributeName.equals( "enabled" ) 
+                || at.attributeName.equals( "auto-focus" )
+                || at.attributeName.equals( "lock-on-active" )) {
+			final Button chekbox = toolkit.createButton(parent, "", SWT.CHECK);
+		}else{
+			final Text box = toolkit.createText(parent, "");
+		}
+		
+		addDeleteLink();
+
+	}
+
+	private void addDeleteLink() {
+		ImageHyperlink delLink = addImage(parent, "icons/delete_item_small.gif");
+		delLink.setToolTipText("Remove this fieldconstraint");
+		delLink.addHyperlinkListener(new IHyperlinkListener() {
+			public void linkActivated(HyperlinkEvent e) {
+				MessageBox dialog = new MessageBox(Display.getCurrent()
+						.getActiveShell(), SWT.YES | SWT.NO | SWT.ICON_WARNING);
+				dialog.setMessage("Remove this item?");
+				dialog.setText("Remove this item?");
+				if (dialog.open() == SWT.YES) {
+					//TODO: delete relevant attribute
+				}
+			}
+
+			public void linkEntered(HyperlinkEvent e) {
+			}
+
+			public void linkExited(HyperlinkEvent e) {
+			}
+		});
+
+	}
+
+}

Added: labs/jbossrules/trunk/drools-eclipse/drools-guided-editor-plugin/src/org/drools/eclipse/rulebuilder/ui/RuleAttributesDialog.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/drools-guided-editor-plugin/src/org/drools/eclipse/rulebuilder/ui/RuleAttributesDialog.java	                        (rev 0)
+++ labs/jbossrules/trunk/drools-eclipse/drools-guided-editor-plugin/src/org/drools/eclipse/rulebuilder/ui/RuleAttributesDialog.java	2007-06-02 06:05:48 UTC (rev 12297)
@@ -0,0 +1,20 @@
+package org.drools.eclipse.rulebuilder.ui;
+
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.ui.forms.widgets.FormToolkit;
+
+public class RuleAttributesDialog extends RuleDialog {
+
+	private final FormToolkit toolkit;
+
+    private RuleModeller      modeller;
+	
+	public RuleAttributesDialog(Shell parent, FormToolkit toolkit, RuleModeller modeller) {
+		super(parent, "Add new option to the rule", "Pick the value from combo and confirm the selection."); // TODO: set title and hint
+		
+		this.toolkit = toolkit;
+		this.modeller = modeller;
+	}
+	
+
+}

Modified: labs/jbossrules/trunk/drools-eclipse/drools-guided-editor-plugin/src/org/drools/eclipse/rulebuilder/ui/RuleModeller.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/drools-guided-editor-plugin/src/org/drools/eclipse/rulebuilder/ui/RuleModeller.java	2007-06-02 01:08:55 UTC (rev 12296)
+++ labs/jbossrules/trunk/drools-eclipse/drools-guided-editor-plugin/src/org/drools/eclipse/rulebuilder/ui/RuleModeller.java	2007-06-02 06:05:48 UTC (rev 12297)
@@ -44,6 +44,8 @@
     private Composite          ifComposite;
 
     private Composite          thenComposite;
+    
+    private Composite          optionsComposite;
 
     private final ScrolledForm form;
 
@@ -92,6 +94,8 @@
                                                           toolkit,
                                                           this );
 
+        Window optionsPopup = new RuleAttributesDialog(shell, toolkit, this);
+        
         Section ifSection = createMainSection( form,
                                                toolkit,
                                                "IF",
@@ -100,7 +104,11 @@
                                                  toolkit,
                                                  "THEN",
                                                  actionPopup );
-
+        Section optionsSection = createMainSection( form,
+                                                    toolkit,
+                                                    "(options)",
+                                                    optionsPopup );
+        
         ColumnLayout layout = new ColumnLayout();
         layout.minNumColumns = 1;
         layout.maxNumColumns = 1;
@@ -108,11 +116,14 @@
 
         ((Composite) (ifSection.getClient())).setLayout( layout );
         ((Composite) (thenSection.getClient())).setLayout( layout );
+        ((Composite) (optionsSection.getClient())).setLayout( layout );
         ifSection.setLayout( layout );
         thenSection.setLayout( layout );
+        optionsSection.setLayout( layout );
 
         ifComposite = (Composite) ifSection.getClient();
         thenComposite = (Composite) thenSection.getClient();
+        optionsComposite = (Composite) optionsSection.getClient();
 
     }
 
@@ -129,7 +140,6 @@
     }
 
     private void clearComposite(Composite composite) {
-        System.out.println( "clear composite" );
         if ( composite != null ) {
             Control[] c = composite.getChildren();
             for ( int i = 0; i < c.length; i++ ) {
@@ -157,12 +167,24 @@
         redrawLhs();
         reloadCommon();
     }
+    
+    public void reloadOptions() {
+        clearComposite( optionsComposite );
+        redrawOptions();
+        reloadCommon();
+    }
 
     public void reloadWidgets() {
         reloadLhs();
         reloadRhs();
+        reloadOptions();
     }
 
+    private void redrawOptions(){
+    	//TODO
+    }
+    
+    
     private void redrawRhs() {
         for ( int i = 0; i < model.rhs.length; i++ ) {
             IAction action = model.rhs[i];
@@ -184,13 +206,9 @@
     }
 
     private void redrawLhs() {
-
-        System.out.println( "redrawing lhs part..." );
         for ( int i = 0; i < model.lhs.length; i++ ) {
             IPattern pattern = model.lhs[i];
 
-            System.out.println( "pattern = " + pattern );
-
             if ( pattern instanceof FactPattern ) {
                 addFactPatternWidget( i,
                                       (FactPattern) pattern );
@@ -293,8 +311,7 @@
         l1Sect.setActiveToggleColor( toolkit.getHyperlinkGroup().getActiveForeground() );
         l1Sect.setToggleColor( toolkit.getColors().getColor( FormColors.SEPARATOR ) );
         l1Sect.setText( title );
-        createAddToolItem( l1Sect,
-                           popup );
+        createAddToolItem( l1Sect, popup );
         Composite comp = toolkit.createComposite( l1Sect );
         l1Sect.setClient( comp );
         return l1Sect;
@@ -322,8 +339,12 @@
     public void refresh() {
         ifComposite.layout();
         ifComposite.redraw();
+        
         thenComposite.layout();
         thenComposite.redraw();
+        
+        optionsComposite.layout();
+        optionsComposite.redraw();
     }
 
 }

Modified: labs/jbossrules/trunk/drools-eclipse/drools-guided-editor-plugin/src/org/drools/eclipse/rulebuilder/ui/Widget.java
===================================================================
--- labs/jbossrules/trunk/drools-eclipse/drools-guided-editor-plugin/src/org/drools/eclipse/rulebuilder/ui/Widget.java	2007-06-02 01:08:55 UTC (rev 12296)
+++ labs/jbossrules/trunk/drools-eclipse/drools-guided-editor-plugin/src/org/drools/eclipse/rulebuilder/ui/Widget.java	2007-06-02 06:05:48 UTC (rev 12297)
@@ -17,7 +17,7 @@
 
     final protected FormToolkit toolkit;
 
-    final private RuleModeller  modeller;
+    final protected RuleModeller  modeller;
 
     final protected int         index;
 




More information about the jboss-svn-commits mailing list