[jboss-svn-commits] JBL Code SVN: r6745 - in labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client: . decisiontable
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Oct 11 09:36:22 EDT 2006
Author: michael.neale at jboss.com
Date: 2006-10-11 09:36:19 -0400 (Wed, 11 Oct 2006)
New Revision: 6745
Added:
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/decisiontable/EditableDTGrid.java
Modified:
labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/RuleBases.java
Log:
start of decision tables for the web
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-11 13:36:15 UTC (rev 6744)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/RuleBases.java 2006-10-11 13:36:19 UTC (rev 6745)
@@ -15,18 +15,10 @@
*/
package org.drools.brms.client;
-import com.google.gwt.user.client.ui.Button;
-import com.google.gwt.user.client.ui.ClickListener;
-import com.google.gwt.user.client.ui.HorizontalPanel;
-import com.google.gwt.user.client.ui.HTML;
+import org.drools.brms.client.decisiontable.EditableDTGrid;
+
import com.google.gwt.user.client.ui.Image;
-import com.google.gwt.user.client.ui.KeyboardListenerAdapter;
-import com.google.gwt.user.client.ui.PasswordTextBox;
-import com.google.gwt.user.client.ui.TextArea;
-import com.google.gwt.user.client.ui.TextBox;
-import com.google.gwt.user.client.ui.TextBoxBase;
import com.google.gwt.user.client.ui.VerticalPanel;
-import com.google.gwt.user.client.ui.Widget;
/**
* Demonstrates the various text widgets.
@@ -48,58 +40,15 @@
};
}
- private PasswordTextBox fPasswordText = new PasswordTextBox();
- private TextArea fTextArea = new TextArea();
- private TextBox fTextBox = new TextBox();
public RuleBases() {
VerticalPanel panel = new VerticalPanel();
panel.setSpacing(8);
- panel.add(new HTML("Normal text box:"));
- panel.add(createTextThing(fTextBox));
- panel.add(new HTML("Password text box:"));
- panel.add(createTextThing(fPasswordText));
- panel.add(new HTML("Text area:"));
- panel.add(createTextThing(fTextArea));
- setWidget(panel);
+ panel.add( new EditableDTGrid() );
+ initWidget(panel);
}
public void onShow() {
}
- private Widget createTextThing(final TextBoxBase textBox) {
- HorizontalPanel p = new HorizontalPanel();
- p.setSpacing(4);
-
- p.add(textBox);
-
- final HTML echo = new HTML();
- p.add(new Button("select all", new ClickListener() {
- public void onClick(Widget sender) {
- textBox.selectAll();
- textBox.setFocus(true);
- updateText(textBox, echo);
- }
- }));
-
- p.add(echo);
- textBox.addKeyboardListener(new KeyboardListenerAdapter() {
- public void onKeyUp(Widget sender, char keyCode, int modifiers) {
- updateText(textBox, echo);
- }
- });
-
- textBox.addClickListener(new ClickListener() {
- public void onClick(Widget sender) {
- updateText(textBox, echo);
- }
- });
-
- return p;
- }
-
- private void updateText(TextBoxBase text, HTML echo) {
- echo.setHTML("Text: " + text.getText() + "<br>" + "Selection: "
- + text.getCursorPos() + ", " + text.getSelectionLength());
- }
}
Added: 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-11 13:36:15 UTC (rev 6744)
+++ labs/jbossrules/trunk/drools-jbrms/src/main/java/org/drools/brms/client/decisiontable/EditableDTGrid.java 2006-10-11 13:36:19 UTC (rev 6745)
@@ -0,0 +1,76 @@
+package org.drools.brms.client.decisiontable;
+
+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.Image;
+import com.google.gwt.user.client.ui.TextBox;
+import com.google.gwt.user.client.ui.Widget;
+
+public class EditableDTGrid extends Composite {
+
+ private Grid table = new Grid();
+
+ public EditableDTGrid() {
+
+ //for if I switch to a Grid
+ table.resizeColumns( numCols() + 1 );
+ table.resizeRows( numRows() );
+
+ for ( int row = 0; row < numRows(); row++ ) {
+ int column = 0;
+ for ( ; column < numCols(); column++ ) {
+ table.setText( row,
+ column,
+ "boo " + column );
+ }
+ 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 );
+
+ }
+
+ initWidget( table );
+
+ }
+
+
+ private void editRow(int row) {
+ for (int column = 0; column < numCols(); column++) {
+ String text = table.getText( row, column );
+ Widget w = table.getWidget( row, column );
+ if (w == null) {
+ TextBox box = new TextBox();
+ box.setText( text );
+ box.setStyleName( "dsl-field-TextBox" );
+ box.setVisibleLength( 3 );
+
+ table.setWidget( row, column, box );
+
+ } else {
+ table.setText( row, column, ((TextBox ) w).getText());
+ }
+ }
+
+
+ }
+
+ private int numCols() {
+ return 12;
+ }
+
+ private int numRows() {
+ return 70;
+ }
+
+}
More information about the jboss-svn-commits
mailing list