[jboss-svn-commits] JBL Code SVN: r7621 - in labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client: . breditor common ruleeditor

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Wed Nov 15 12:44:04 EST 2006


Author: michael.neale at jboss.com
Date: 2006-11-15 12:43:28 -0500 (Wed, 15 Nov 2006)
New Revision: 7621

Modified:
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/Packages.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/breditor/BREditor.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/common/FormStylePopup.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/ruleeditor/ActionToolbar.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/ruleeditor/AssetCategoryEditor.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/ruleeditor/DefaultRuleContentWidget.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/ruleeditor/MetaDataWidget.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/ruleeditor/RuleViewer.java
Log:
JBRULES-561

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/Packages.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/Packages.java	2006-11-15 17:40:33 UTC (rev 7620)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/Packages.java	2006-11-15 17:43:28 UTC (rev 7621)
@@ -1,7 +1,5 @@
 package org.drools.brms.client;
 
-import org.drools.brms.client.breditor.BREditor;
-
 import com.google.gwt.user.client.ui.Image;
 import com.google.gwt.user.client.ui.VerticalPanel;
 
@@ -29,8 +27,7 @@
 
     public Packages() {
         VerticalPanel panel = new VerticalPanel();
-        panel.add( new BREditor() );
-        
+
         panel.setSpacing( 8 );
         initWidget( panel );
     }

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/breditor/BREditor.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/breditor/BREditor.java	2006-11-15 17:40:33 UTC (rev 7620)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/breditor/BREditor.java	2006-11-15 17:43:28 UTC (rev 7621)
@@ -3,6 +3,9 @@
 import java.util.ArrayList;
 import java.util.List;
 
+import org.drools.brms.client.rpc.MetaData;
+import org.drools.brms.client.rpc.RuleAsset;
+
 import com.google.gwt.user.client.ui.ClickListener;
 import com.google.gwt.user.client.ui.Composite;
 import com.google.gwt.user.client.ui.FlexTable;
@@ -43,8 +46,11 @@
     private Image editButton;
     private Image addRhsPopupButton;
     
+    private MetaData meta;
     
-    public BREditor() {
+    
+    public BREditor(RuleAsset asset) {
+        this.meta = asset.metaData;
         panel = new VerticalPanel();
         
         
@@ -82,6 +88,7 @@
                 switchModes(rhs, editMode);
                 showHideLineEditorWidgets( editMode );                
                 editMode = !editMode;
+                meta.dirty = true;
             }            
         });        
         
@@ -322,5 +329,7 @@
         lst.set(  targetIdx, source );
         lst.set( idx, target );        
     }
+
+
     
 }

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/common/FormStylePopup.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/common/FormStylePopup.java	2006-11-15 17:40:33 UTC (rev 7620)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/common/FormStylePopup.java	2006-11-15 17:43:28 UTC (rev 7621)
@@ -2,6 +2,7 @@
 
 import com.google.gwt.user.client.ui.Button;
 import com.google.gwt.user.client.ui.ClickListener;
+import com.google.gwt.user.client.ui.Image;
 import com.google.gwt.user.client.ui.PopupPanel;
 import com.google.gwt.user.client.ui.VerticalPanel;
 import com.google.gwt.user.client.ui.Widget;
@@ -14,32 +15,34 @@
  */
 public class FormStylePopup extends PopupPanel {
 
+    
     private FormStyleLayout form;
-    private VerticalPanel   vert;
 
     public FormStylePopup(String image,
                           String title) {
         super( true );
         form = new FormStyleLayout( image, title );
-        vert = new VerticalPanel();
         
-        vert.add( form );
+
         
-        Button close = new Button("Close");
-        
+        add( form );
+    }
+    
+    public void addAttribute(String label, Widget wid) {
+        form.addAttribute( label, wid );
+    }
+
+    public void show() {        
+        Image close = new Image("images/close.gif");
         close.addClickListener( new ClickListener() {
             public void onClick(Widget w) {
                 hide();                
             }            
         });
+        addAttribute("", close);
         
-        vert.add( close );
-        
-        add( vert );
+        super.show();
     }
     
-    public void addAttribute(String label, Widget wid) {
-        form.addAttribute( label, wid );
-    }
 
 }

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/ruleeditor/ActionToolbar.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/ruleeditor/ActionToolbar.java	2006-11-15 17:40:33 UTC (rev 7620)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/ruleeditor/ActionToolbar.java	2006-11-15 17:43:28 UTC (rev 7621)
@@ -18,6 +18,7 @@
 import com.google.gwt.user.client.ui.MenuBar;
 import com.google.gwt.user.client.ui.MenuItem;
 import com.google.gwt.user.client.ui.PopupPanel;
+import com.google.gwt.user.client.ui.TextArea;
 import com.google.gwt.user.client.ui.TextBox;
 import com.google.gwt.user.client.ui.Widget;
 
@@ -32,23 +33,20 @@
     private Command closeCommand;
     
     private MetaData      metaData;
+    private Command checkin;
     /**
      * TODO: 
-     *  * Maybe move current state to here from meta data?
-     *  * add check for dirty before closing?
      *  * need to somehow refresh on checkin? (or just close?)
      * 
      */
     public ActionToolbar(final MetaData meta, 
-                         final ClickListener checkin,
+                         final Command checkin,
                          final ClickListener changeState) {
 
         this.metaData = meta;
-        
+        this.checkin = checkin;
         String status = metaData.state;
 
-
-        
         Label state = new Label("Status: [" + status + "]   ");
         panel.add( state );
         
@@ -58,8 +56,16 @@
         
         Image save = new Image("images/save_edit.gif");
         save.setTitle( "Check in changes." );        
+        save.addClickListener( new ClickListener() {
+
+            public void onClick(Widget w) {
+                doCheckinConfirm();
+            }
+            
+        });
         
-        Image closeImg = new Image("images/remove_item.gif");
+        
+        Image closeImg = new Image("images/close.gif");
         closeImg.setTitle( "Close." );
         closeImg.addClickListener( new ClickListener() {
 
@@ -81,10 +87,36 @@
         initWidget( panel );
     }
     
+    /**
+     * Called when user wants to checkin.
+     */
+    protected void doCheckinConfirm() {
+        final FormStylePopup pop = new FormStylePopup("images/checkin.gif", "Check in a new version.");
+        TextArea comment = new TextArea();
+        Button save = new Button("Save");
+        pop.addAttribute( "Comment", comment );
+        pop.addAttribute( "", save);
+        
+        save.addClickListener( new ClickListener() {
+            public void onClick(Widget w) {
+                checkin.execute();
+                pop.hide();
+            }
+        });
+        
+        pop.setStyleName( "ks-popups-Popup" );
+        pop.setPopupPosition( 200, getAbsoluteTop() );
+        pop.show();        
+        
+    }
+
+    /**
+     * Called when user wants to close, but there is "dirtyness".
+     */
     protected void doCloseUnsavedWarning() {
         final FormStylePopup pop = new FormStylePopup("images/warning-large.png", "WARNING: Un-committed changes.");
         Button dis = new Button("Discard");
-        pop.addAttribute( "Are you sure you want to disgard changes?", dis );
+        pop.addAttribute( "Are you sure you want to discard changes?", dis );
         
         dis.addClickListener( new ClickListener() {
             public void onClick(Widget w) {
@@ -94,7 +126,8 @@
         });
         
         pop.setStyleName( "warning-Popup" );
-        pop.setPopupPosition( 100, 200 );
+        
+        pop.setPopupPosition( 200, getAbsoluteTop() );
         pop.show();
         
     }

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/ruleeditor/AssetCategoryEditor.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/ruleeditor/AssetCategoryEditor.java	2006-11-15 17:40:33 UTC (rev 7620)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/ruleeditor/AssetCategoryEditor.java	2006-11-15 17:43:28 UTC (rev 7621)
@@ -39,9 +39,9 @@
 
         box = new ListBox();
         
-        box.setVisibleItemCount( 3 );
+        box.setVisibleItemCount( 4 );
         box.setWidth( "100%" );
-        
+        box.setMultipleSelect( false );
         loadData( box );        
         panel.add( box );
         
@@ -49,8 +49,8 @@
             doActions();
         }
         
-        initWidget( panel );
-        
+        panel.setWidth( "100%" );
+        initWidget( panel );        
     }
 
     private void doActions() {
@@ -58,24 +58,20 @@
         Image add = new Image("images/new_item.gif");
         add.setTitle( "Add a new category." );
         
-        
         add.addClickListener( new ClickListener() {
             public void onClick(Widget w) {
                 doOKClick();
             }            
         });
         
-        Image remove = new Image("images/remove_item.gif");
+        Image remove = new Image("images/delete_obj.gif");
         remove.setTitle( "Remove the currently selected category." );
         remove.addClickListener( new ClickListener() {
-
             public void onClick(Widget w) {
                  if (box.getSelectedIndex() != -1) {
                      removeCategory(box.getItemText( box.getSelectedIndex()));
                  }
-                
             }
-            
         });
         
         

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/ruleeditor/DefaultRuleContentWidget.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/ruleeditor/DefaultRuleContentWidget.java	2006-11-15 17:40:33 UTC (rev 7620)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/ruleeditor/DefaultRuleContentWidget.java	2006-11-15 17:43:28 UTC (rev 7621)
@@ -1,5 +1,7 @@
 package org.drools.brms.client.ruleeditor;
 
+import org.drools.brms.client.rpc.MetaData;
+import org.drools.brms.client.rpc.RuleAsset;
 import org.drools.brms.client.rpc.TextData;
 
 import com.google.gwt.user.client.ui.ChangeListener;
@@ -15,8 +17,15 @@
 public class DefaultRuleContentWidget extends Composite {
 	
 	private TextArea text;
-	
-	public DefaultRuleContentWidget(final TextData data) {
+	final private TextData data;
+    final private MetaData meta;
+    final private RuleAsset asset;
+    
+	public DefaultRuleContentWidget(RuleAsset a) {
+        asset = a;
+        data = (TextData) asset.content;
+        
+        meta = asset.metaData;
 		text = new TextArea();
 		text.setWidth("100%");
 		text.setHeight("100%");
@@ -27,9 +36,11 @@
             public void onChange(Widget w) {
                 data.content = text.getText();
                 data.dirty = true;
+                meta.dirty = true;
             }
         });
         
 		initWidget(text);
 	}
+
 }

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/ruleeditor/MetaDataWidget.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/ruleeditor/MetaDataWidget.java	2006-11-15 17:40:33 UTC (rev 7620)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/ruleeditor/MetaDataWidget.java	2006-11-15 17:43:28 UTC (rev 7621)
@@ -3,6 +3,7 @@
 import org.drools.brms.client.common.FormStyleLayout;
 import org.drools.brms.client.rpc.MetaData;
 
+import com.google.gwt.user.client.rpc.IsSerializable;
 import com.google.gwt.user.client.ui.ChangeListener;
 import com.google.gwt.user.client.ui.Label;
 import com.google.gwt.user.client.ui.TextBox;
@@ -127,13 +128,6 @@
 
 
 
-
-    /**
-     * This is used if the data is dirty, ie change pending save.
-     */
-    public boolean isDirty() {
-        return data.dirty;
-    }
     
     /**
      * Return the data if it is to be saved.

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/ruleeditor/RuleViewer.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/ruleeditor/RuleViewer.java	2006-11-15 17:40:33 UTC (rev 7620)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/ruleeditor/RuleViewer.java	2006-11-15 17:43:28 UTC (rev 7621)
@@ -105,10 +105,10 @@
         
         //depending on the format, load the appropriate editor
         if (asset.metaData.format.equals( "DSL" )) {
-            BREditor ed = new BREditor();
+            BREditor ed = new BREditor(asset);
             layout.setWidget( 1, 0, ed );
         } else {
-            DefaultRuleContentWidget ed = new DefaultRuleContentWidget((TextData) asset.content);
+            DefaultRuleContentWidget ed = new DefaultRuleContentWidget(asset);
             layout.setWidget( 1, 0, ed );
         }
                 




More information about the jboss-svn-commits mailing list