[jboss-svn-commits] JBL Code SVN: r6757 - in labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms: client client/decisiontable public public/images

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Thu Oct 12 10:32:05 EDT 2006


Author: michael.neale at jboss.com
Date: 2006-10-12 10:31:18 -0400 (Thu, 12 Oct 2006)
New Revision: 6757

Added:
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/public/images/decision_table.gif
Modified:
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/RuleBases.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/decisiontable/EditableDTGrid.java
   labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/public/JBRMS.css
Log:
more goodness, ajax love

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/RuleBases.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/RuleBases.java	2006-10-12 13:39:29 UTC (rev 6756)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/RuleBases.java	2006-10-12 14:31:18 UTC (rev 6757)
@@ -44,7 +44,7 @@
   public RuleBases() {
     VerticalPanel panel = new VerticalPanel();
     panel.setSpacing(8);
-    panel.add( new EditableDTGrid() );
+    panel.add( new EditableDTGrid("Pricing rules") );
     initWidget(panel);
   }
 

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/decisiontable/EditableDTGrid.java
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/decisiontable/EditableDTGrid.java	2006-10-12 13:39:29 UTC (rev 6756)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/decisiontable/EditableDTGrid.java	2006-10-12 14:31:18 UTC (rev 6757)
@@ -3,71 +3,96 @@
 import com.google.gwt.user.client.ui.ClickListener;
 import com.google.gwt.user.client.ui.Composite;
 import com.google.gwt.user.client.ui.FlexTable;
-import com.google.gwt.user.client.ui.Grid;
+import com.google.gwt.user.client.ui.HorizontalPanel;
 import com.google.gwt.user.client.ui.Image;
 import com.google.gwt.user.client.ui.Label;
-import com.google.gwt.user.client.ui.SourcesTableEvents;
-import com.google.gwt.user.client.ui.TableListener;
 import com.google.gwt.user.client.ui.TextBox;
+import com.google.gwt.user.client.ui.VerticalPanel;
 import com.google.gwt.user.client.ui.Widget;
+import com.google.gwt.user.client.ui.FlexTable.FlexCellFormatter;
 
+/**
+ * The decision table viewer and editor.
+ * @author Michael Neale
+ * @author Stephen Williams
+ *
+ */
 public class EditableDTGrid extends Composite {
 
+    private static final int START_DATA_ROW = 1;
     private FlexTable table = new FlexTable();
 
-    public EditableDTGrid() {
+    public EditableDTGrid(String dtName) {
 
-        //for if I switch to a Grid
+//for if I switch to a Grid
 //        table.resizeColumns( numCols() + 1 );
 //        table.resizeRows( numRows() );
 
+        VerticalPanel vert = new VerticalPanel();
+        
+        Label title = new Label(dtName);
+        title.setStyleName( "dt-editor-Title" );
+        
+        HorizontalPanel header = new HorizontalPanel();
+        header.add( new Image("images/decision_table.gif") );
+        header.add( title );
+        
+        vert.add( header );
+        
+        vert.add( table );
+        
+        FlexCellFormatter cellFormatter = table.getFlexCellFormatter();
+        
         table.setStyleName( "dt-editor-Grid" );
+
+        //set up the header
+        populateHeader( cellFormatter );
         
-        for ( int row = 0; row < numRows(); row++ ) {
+        //and the data follows
+        populateDataGrid( cellFormatter );
+        
+        //and this is how you span things, FYI
+        //table.getFlexCellFormatter().setColSpan( 2, 3, 4 );
+
+        
+        
+        initWidget( vert );
+
+    }
+
+
+    private void populateHeader(FlexCellFormatter cellFormatter) {
+        for (int col = 0; col < numCols(); col++) {
+            table.setText( 0, col, "some header " + col );
+            cellFormatter.setStyleName( 0, col, "dt-editor-DescriptionCell" );
+        }
+    }
+
+
+    private void populateDataGrid(FlexCellFormatter cellFormatter) {
+        for ( int i = 0; i < numRows(); i++ ) {
             int column = 0;
+            int row = i + START_DATA_ROW;
             for ( ; column < numCols(); column++ ) {
                 table.setText( row,
                                column,
                                "boo " + column );
-                table.getFlexCellFormatter().setStyleName( row, column, "dt-editor-Cell" );
+                cellFormatter.setStyleName( row, column, "dt-editor-Cell" );
             }
             
             final int currentRow = row;
             Image editButton = new Image("images/edit.gif");
             editButton.addClickListener( new ClickListener() {
-
                 public void onClick(Widget w) {
                     editRow(currentRow);
                     
                 }
-
-                
-            }) ;          
+            });   
+            
+            
             table.setWidget( row, column, editButton );
             
-
-            
         }
-        
-        //the click listener
-        table.addTableListener( new TableListener() {
-
-            public void onCellClicked(SourcesTableEvents events,
-                                      int row,
-                                      int column) {
-                System.out.println("cell clicked, row = " + row);
-                System.out.println("cell clicked, col = " + column);                
-            }
-            
-        });
-        
-        //and this is how you span things
-        //table.getFlexCellFormatter().setColSpan( 2, 3, 4 );
-
-        
-        
-        initWidget( table );
-
     }
     
     

Modified: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/public/JBRMS.css
===================================================================
--- labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/public/JBRMS.css	2006-10-12 13:39:29 UTC (rev 6756)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/public/JBRMS.css	2006-10-12 14:31:18 UTC (rev 6757)
@@ -262,11 +262,22 @@
 }
 
 .dt-editor-Cell {
-  background-color: #FDFCDC;
+  background-color: white;
   border: 1px solid #87B3FF; 
   font-size: smaller;
+  padding: 2px;
 }
 
+.dt-editor-DescriptionCell {
+  background-color: #FDFCDC;
+  font-size: smaller;
+  padding: 3px;
+}
+
+.dt-editor-Title {
+  font-size: larger;
+}
+
 .dsl-field-TextBox {
   border: 1px solid #87B3FF;
   padding: 0px;	

Added: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/public/images/decision_table.gif
===================================================================
(Binary files differ)


Property changes on: labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/public/images/decision_table.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream




More information about the jboss-svn-commits mailing list