[jboss-svn-commits] JBL Code SVN: r32021 - in labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client: rulelist and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Mar 10 12:53:11 EST 2010
Author: jervisliu
Date: 2010-03-10 12:53:10 -0500 (Wed, 10 Mar 2010)
New Revision: 32021
Added:
labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/DatePickerLabel.java
labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/DatePickerPopUp.java
labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/DatePickerTextBox.java
labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/GuvnorDatePicker.java
Modified:
labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/ConstraintValueEditor.java
labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/DSLSentenceWidget.java
labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/DatePicker.java
labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/rulelist/QueryWidget.java
Log:
Merged BRMS-125(dates not properly displayed) from trunk.
Merge log:
1. svn merge -r 26591:26858 https://svn.jboss.org/repos/labs/labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/ConstraintValueEditor.java
2. svn merge -r 26591:26858 https://svn.jboss.org/repos/labs/labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/DSLSentenceWidget.java
3. svn cp DatePicker.java DatePickerLabel.java(DatePickerLabel.java was copied from DatePicker.java at r26830), then
replaced DatePickerLabel.java's content with the content of DatePickerLabel r26858.
4. get DatePickerPopUp.java's content from r26858, svn add DatePickerPopUp.java
5. get DatePickerTextBox.java's content from r26858, svn add DatePickerTextBox.java
6. get GuvnorDatePicker.java's content from r26858, svn add GuvnorDatePicker.java
7. svn merge -r 26591:26858 https://svn.jboss.org/repos/labs/labs/jbossrules/trunk/drools-guvnor/src/main/java/org/drools/guvnor/client/rulelist/QueryWidget.java
8. wont compile after this merge. then did following:
replace DatePicker.java's content with r26861's content.
Modified: labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/ConstraintValueEditor.java
===================================================================
--- labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/ConstraintValueEditor.java 2010-03-10 17:07:11 UTC (rev 32020)
+++ labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/ConstraintValueEditor.java 2010-03-10 17:53:10 UTC (rev 32021)
@@ -193,7 +193,7 @@
} else if ( SuggestionCompletionEngine.TYPE_DATE.equals( this.fieldType ) ) {
- DatePicker datePicker = new DatePicker( constraint.value );
+ DatePickerLabel datePicker = new DatePickerLabel( constraint.value );
// Set the default time
constraint.value = datePicker.getDateString();
Modified: labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/DSLSentenceWidget.java
===================================================================
--- labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/DSLSentenceWidget.java 2010-03-10 17:07:11 UTC (rev 32020)
+++ labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/DSLSentenceWidget.java 2010-03-10 17:53:10 UTC (rev 32021)
@@ -494,7 +494,7 @@
}
}
- class DSLDateSelector extends DatePicker {
+ class DSLDateSelector extends DatePickerLabel {
public DSLDateSelector(String variableDef) {
super( variableDef.substring( 0,
Modified: labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/DatePicker.java
===================================================================
--- labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/DatePicker.java 2010-03-10 17:07:11 UTC (rev 32020)
+++ labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/DatePicker.java 2010-03-10 17:53:10 UTC (rev 32021)
@@ -7,249 +7,24 @@
import org.drools.guvnor.client.common.DirtyableComposite;
import org.drools.guvnor.client.common.ValueChanged;
import org.drools.guvnor.client.explorer.Preferences;
-import org.drools.guvnor.client.messages.Constants;
-import com.google.gwt.core.client.GWT;
import com.google.gwt.i18n.client.DateTimeFormat;
-import com.google.gwt.user.client.ui.Button;
-import com.google.gwt.user.client.ui.ChangeListener;
-import com.google.gwt.user.client.ui.ClickListener;
-import com.google.gwt.user.client.ui.FocusListener;
import com.google.gwt.user.client.ui.HorizontalPanel;
-import com.google.gwt.user.client.ui.Label;
-import com.google.gwt.user.client.ui.ListBox;
import com.google.gwt.user.client.ui.Panel;
-import com.google.gwt.user.client.ui.PopupPanel;
-import com.google.gwt.user.client.ui.SimplePanel;
import com.google.gwt.user.client.ui.TextBox;
-import com.google.gwt.user.client.ui.Widget;
-public class DatePicker extends DirtyableComposite {
+public abstract class DatePicker extends DirtyableComposite {
+ protected Panel panel = new HorizontalPanel();
+ protected TextBox textWidget = new TextBox();
- DatePickerPopUp datePickerPopUp = new DatePickerPopUp();
- Panel panel = new SimplePanel();
- TextBox textWidget = new TextBox();
- protected Label labelWidget = new Label();
-
// Format that the text box uses.
- protected String visualFormat = "";
+ protected String visualFormat = "";
// Format that the system uses.
- protected final static String defaultFormat = Preferences.getStringPref( "drools.dateformat" );
- protected DateTimeFormat formatter = null;
+ protected final static String defaultFormat = Preferences.getStringPref( "drools.dateformat" );
+ protected DateTimeFormat formatter = null;
- private List<ValueChanged> valueChangeds = new ArrayList<ValueChanged>();
+ protected List<ValueChanged> valueChangeds = new ArrayList<ValueChanged>();
- public DatePicker(String selectedDate) {
- this( selectedDate,
- defaultFormat );
- }
-
- public DatePicker(String selectedDate,
- String visualFormat) {
- this.visualFormat = visualFormat;
-
- if ( visualFormat == null || visualFormat.equals( "default" ) || visualFormat.equals( "" ) ) {
- visualFormat = defaultFormat;
- }
-
- formatter = DateTimeFormat.getFormat( visualFormat );
-
- labelWidget.setStyleName( "x-form-field" );
-
- labelWidget.addClickListener( new ClickListener() {
- public void onClick(Widget arg0) {
- panel.clear();
- panel.add( textWidget );
- datePickerPopUp.setPopupPosition( textWidget.getAbsoluteLeft(),
- textWidget.getAbsoluteTop() + 20 );
-
- datePickerPopUp.setDropdowns();
- datePickerPopUp.show();
- }
- } );
-
- // Check if there is a valid date set. If not, set this date.
- try {
- formatter.parse( selectedDate );
- } catch ( Exception e ) {
- selectedDate = formatter.format( new Date() );
- }
-
- if ( selectedDate != null && !selectedDate.equals( "" ) ) {
- textWidget.setText( selectedDate );
- labelWidget.setText( selectedDate );
- }
-
- textWidget.addFocusListener( new FocusListener() {
- public void onFocus(Widget arg0) {
- }
-
- public void onLostFocus(Widget arg0) {
- TextBox box = (TextBox) arg0;
- textWidget.setText( box.getText() );
- labelWidget.setText( box.getText() );
- valueChanged();
- makeDirty();
- panel.clear();
- panel.add( labelWidget );
- datePickerPopUp.hide();
- }
- } );
-
- panel.add( labelWidget );
- initWidget( panel );
- }
-
- class DatePickerPopUp extends PopupPanel {
- private Constants constants = ((Constants) GWT.create( Constants.class ));
-
- private ListBox years = new ListBox();
- private ListBox months = new ListBox();
- private ListBox dates = new ListBox();
-
- // private ListBox hours = new ListBox();
- // private ListBox minutes = new ListBox();
-
- public DatePickerPopUp() {
- HorizontalPanel horizontalPanel = new HorizontalPanel();
-
- // Add years
- // Take the current year and add 50 to each sides
- Date now = new Date();
- int year = now.getYear() + 1900 - 50;
- for ( int i = year; i < (year + 100); i++ ) {
- years.addItem( Integer.toString( i ) );
- }
- years.setSelectedIndex( 50 );
- horizontalPanel.add( years );
-
- // Add months
- months.addItem( constants.January() );
- months.addItem( constants.February() );
- months.addItem( constants.March() );
- months.addItem( constants.April() );
- months.addItem( constants.May() );
- months.addItem( constants.June() );
- months.addItem( constants.July() );
- months.addItem( constants.August() );
- months.addItem( constants.September() );
- months.addItem( constants.October() );
- months.addItem( constants.November() );
- months.addItem( constants.December() );
-
- months.addChangeListener( new ChangeListener() {
- public void onChange(Widget arg0) {
- fillDates();
- }
- } );
-
- horizontalPanel.add( months );
-
- // Add dates
- fillDates();
- horizontalPanel.add( dates );
-
- // // Hours
- // for ( int i = 0; i < 24; i++ ) {
- // hours.addItem( Integer.toString( i ) );
- // }
- // horizontalPanel.add( new Label( " - " ) );
- // horizontalPanel.add( hours );
- //
- // // Minutes
- // for ( int i = 0; i < 60; i++ ) {
- // minutes.addItem( Integer.toString( i ) );
- // }
- // horizontalPanel.add( new Label( ":" ) );
- // horizontalPanel.add( minutes );
-
- Button okButton = new Button( constants.OK() );
- okButton.addClickListener( new ClickListener() {
- public void onClick(Widget arg0) {
- // Set the date from the dropdowns
- Date date = formatter.parse( textWidget.getText() );
-
- // years
- date.setYear( Integer.parseInt( years.getItemText( years.getSelectedIndex() ) ) - 1900 );
- // months
- date.setMonth( months.getSelectedIndex() );
- // days
- date.setDate( dates.getSelectedIndex() + 1 );
-
- textWidget.setText( formatter.format( date ) );
- labelWidget.setText( textWidget.getText() );
-
- valueChanged();
- makeDirty();
- panel.clear();
- panel.add( labelWidget );
- datePickerPopUp.hide();
- }
- } );
- horizontalPanel.add( okButton );
-
- add( horizontalPanel );
- }
-
- /**
- * Sets the current year, month ect to dropdowns.
- */
- public void setDropdowns() {
- Date date = formatter.parse( textWidget.getText() );
-
- // Set year
- for ( int i = 0; i < years.getItemCount(); i++ ) {
- if ( years.getValue( i ).equals( (date.getYear() + 1900) + "" ) ) {
- years.setSelectedIndex( i );
- break;
- }
- }
- // month
- months.setSelectedIndex( date.getMonth() );
- // day
- dates.setSelectedIndex( date.getDate() - 1 );
- // // hours
- // hours.setSelectedIndex( date.getHours() );
- // // minutes
- // minutes.setSelectedIndex( date.getMinutes() );
- }
-
- private void fillDates() {
- setVisible( false );
-
- dates.clear();
-
- // Check month
- int days = daysInMonth( months.getSelectedIndex() + 1 );
-
- for ( int i = 1; i <= days; i++ ) {
- dates.addItem( Integer.toString( i ) );
- }
-
- setVisible( true );
- }
-
- private int daysInMonth(int month) {
- switch ( month ) {
- case 2 :
- // Can be 28 or 29, returns 29 just in case
- return 29;
- case 4 :
- case 6 :
- case 9 :
- case 11 :
- return 30;
- default :
- return 31;
- }
- }
- }
-
- // public void addChangeListener(ChangeListener changeListener) {
- // this.changeListener = changeListener;
- // a
- // }
-
public String getVisualFormat() {
return this.visualFormat;
}
@@ -260,7 +35,15 @@
return formatter.format( date );
}
- private void valueChanged() {
+ public Date getDate() {
+ if ( textWidget.getText() == null || "".equals( textWidget.getText() ) ) {
+ return null;
+ } else {
+ return this.formatter.parse( textWidget.getText() );
+ }
+ }
+
+ protected void valueChanged() {
for ( ValueChanged changed : valueChangeds ) {
changed.valueChanged( getDateString() );
}
@@ -273,4 +56,4 @@
public void removeValueChanged(ValueChanged listener) {
valueChangeds.remove( listener );
}
-}
+}
\ No newline at end of file
Added: labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/DatePickerLabel.java
===================================================================
--- labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/DatePickerLabel.java (rev 0)
+++ labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/DatePickerLabel.java 2010-03-10 17:53:10 UTC (rev 32021)
@@ -0,0 +1,107 @@
+package org.drools.guvnor.client.modeldriven.ui;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+import org.drools.guvnor.client.common.DirtyableComposite;
+import org.drools.guvnor.client.common.ValueChanged;
+import org.drools.guvnor.client.explorer.Preferences;
+
+import com.google.gwt.i18n.client.DateTimeFormat;
+import com.google.gwt.user.client.ui.ClickListener;
+import com.google.gwt.user.client.ui.FocusListener;
+import com.google.gwt.user.client.ui.Label;
+import com.google.gwt.user.client.ui.Panel;
+import com.google.gwt.user.client.ui.SimplePanel;
+import com.google.gwt.user.client.ui.TextBox;
+import com.google.gwt.user.client.ui.Widget;
+
+public class DatePickerLabel extends DatePicker {
+
+ DatePickerPopUp datePickerPopUp = new DatePickerPopUp( new ClickListener() {
+ public void onClick(Widget arg0) {
+ // Set the date from the dropdowns
+ Date date = formatter.parse( textWidget.getText() );
+
+ // years
+ date.setYear( Integer.parseInt( datePickerPopUp.years.getItemText( datePickerPopUp.years.getSelectedIndex() ) ) - 1900 );
+ // months
+ date.setMonth( datePickerPopUp.months.getSelectedIndex() );
+ // days
+ date.setDate( datePickerPopUp.dates.getSelectedIndex() + 1 );
+
+ textWidget.setText( formatter.format( date ) );
+ labelWidget.setText( textWidget.getText() );
+
+ valueChanged();
+ makeDirty();
+ panel.clear();
+ panel.add( labelWidget );
+ datePickerPopUp.hide();
+ }
+ } );
+
+ protected Label labelWidget = new Label();
+
+ public DatePickerLabel(String selectedDate) {
+ this( selectedDate,
+ defaultFormat );
+ }
+
+ public DatePickerLabel(String selectedDate,
+ String visualFormat) {
+ this.visualFormat = visualFormat;
+
+ if ( visualFormat == null || visualFormat.equals( "default" ) || visualFormat.equals( "" ) ) {
+ visualFormat = defaultFormat;
+ }
+
+ formatter = DateTimeFormat.getFormat( visualFormat );
+
+ labelWidget.setStyleName( "x-form-field" );
+
+ labelWidget.addClickListener( new ClickListener() {
+ public void onClick(Widget arg0) {
+ panel.clear();
+ panel.add( textWidget );
+ datePickerPopUp.setPopupPosition( textWidget.getAbsoluteLeft(),
+ textWidget.getAbsoluteTop() + 20 );
+
+ datePickerPopUp.setDropdowns( formatter.parse( textWidget.getText() ) );
+ datePickerPopUp.show();
+ }
+ } );
+
+ // Check if there is a valid date set. If not, set this date.
+ try {
+ formatter.parse( selectedDate );
+ } catch ( Exception e ) {
+ selectedDate = formatter.format( new Date() );
+ }
+
+ if ( selectedDate != null && !selectedDate.equals( "" ) ) {
+ textWidget.setText( selectedDate );
+ labelWidget.setText( selectedDate );
+ }
+
+ textWidget.addFocusListener( new FocusListener() {
+ public void onFocus(Widget arg0) {
+ }
+
+ public void onLostFocus(Widget arg0) {
+ TextBox box = (TextBox) arg0;
+ textWidget.setText( box.getText() );
+ labelWidget.setText( box.getText() );
+ valueChanged();
+ makeDirty();
+ panel.clear();
+ panel.add( labelWidget );
+ datePickerPopUp.hide();
+ }
+ } );
+
+ panel.add( labelWidget );
+ initWidget( panel );
+ }
+}
\ No newline at end of file
Property changes on: labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/DatePickerLabel.java
___________________________________________________________________
Name: svn:keywords
+ Rev Date
Name: svn:eol-style
+ native
Added: labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/DatePickerPopUp.java
===================================================================
--- labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/DatePickerPopUp.java (rev 0)
+++ labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/DatePickerPopUp.java 2010-03-10 17:53:10 UTC (rev 32021)
@@ -0,0 +1,146 @@
+package org.drools.guvnor.client.modeldriven.ui;
+
+import java.util.Date;
+
+import org.drools.guvnor.client.messages.Constants;
+
+import com.google.gwt.core.client.GWT;
+import com.google.gwt.user.client.ui.Button;
+import com.google.gwt.user.client.ui.ChangeListener;
+import com.google.gwt.user.client.ui.ClickListener;
+import com.google.gwt.user.client.ui.HorizontalPanel;
+import com.google.gwt.user.client.ui.ListBox;
+import com.google.gwt.user.client.ui.PopupPanel;
+import com.google.gwt.user.client.ui.Widget;
+
+/**
+ *
+ * @author Toni Rikkola
+ *
+ */
+public class DatePickerPopUp extends PopupPanel {
+ private Constants constants = ((Constants) GWT.create( Constants.class ));
+
+ protected ListBox years = new ListBox();
+ protected ListBox months = new ListBox();
+ protected ListBox dates = new ListBox();
+
+ // private ListBox hours = new ListBox();
+ // private ListBox minutes = new ListBox();
+
+ public DatePickerPopUp(ClickListener okClickListener) {
+ HorizontalPanel horizontalPanel = new HorizontalPanel();
+
+ // Add years
+ // Take the current year and add 50 to each sides
+ Date now = new Date();
+ int year = now.getYear() + 1900 - 50;
+ for ( int i = year; i < (year + 100); i++ ) {
+ years.addItem( Integer.toString( i ) );
+ }
+ years.setSelectedIndex( 50 );
+ horizontalPanel.add( years );
+
+ // Add months
+ months.addItem( constants.January() );
+ months.addItem( constants.February() );
+ months.addItem( constants.March() );
+ months.addItem( constants.April() );
+ months.addItem( constants.May() );
+ months.addItem( constants.June() );
+ months.addItem( constants.July() );
+ months.addItem( constants.August() );
+ months.addItem( constants.September() );
+ months.addItem( constants.October() );
+ months.addItem( constants.November() );
+ months.addItem( constants.December() );
+
+ months.addChangeListener( new ChangeListener() {
+ public void onChange(Widget arg0) {
+ fillDates();
+ }
+ } );
+
+ horizontalPanel.add( months );
+
+ // Add dates
+ fillDates();
+ horizontalPanel.add( dates );
+
+ // // Hours
+ // for ( int i = 0; i < 24; i++ ) {
+ // hours.addItem( Integer.toString( i ) );
+ // }
+ // horizontalPanel.add( new Label( " - " ) );
+ // horizontalPanel.add( hours );
+ //
+ // // Minutes
+ // for ( int i = 0; i < 60; i++ ) {
+ // minutes.addItem( Integer.toString( i ) );
+ // }
+ // horizontalPanel.add( new Label( ":" ) );
+ // horizontalPanel.add( minutes );
+
+ Button okButton = new Button( constants.OK() );
+ okButton.addClickListener( okClickListener );
+ horizontalPanel.add( okButton );
+
+ add( horizontalPanel );
+ }
+
+ /**
+ * Sets the current year, month ect to dropdowns.
+ */
+ public void setDropdowns(Date date) {
+ // Set year
+ years.clear();
+ int year = date.getYear() + 1900 - 50;
+ for ( int i = 0; i < 100; i++ ) {
+ years.addItem( Integer.toString( year ) );
+ if ( year == (date.getYear() + 1900) ) {
+ years.setSelectedIndex( i );
+ }
+ year++;
+ }
+
+ // month
+ months.setSelectedIndex( date.getMonth() );
+ // day
+ dates.setSelectedIndex( date.getDate() - 1 );
+ // // hours
+ // hours.setSelectedIndex( date.getHours() );
+ // // minutes
+ // minutes.setSelectedIndex( date.getMinutes() );
+ }
+
+ private void fillDates() {
+ setVisible( false );
+
+ dates.clear();
+
+ // Check month
+ int days = daysInMonth( months.getSelectedIndex() + 1 );
+
+ for ( int i = 1; i <= days; i++ ) {
+ dates.addItem( Integer.toString( i ) );
+ }
+
+ setVisible( true );
+ }
+
+ private int daysInMonth(int month) {
+ switch ( month ) {
+ case 2 :
+ // Can be 28 or 29, returns 29 just in case
+ return 29;
+ case 4 :
+ case 6 :
+ case 9 :
+ case 11 :
+ return 30;
+ default :
+ return 31;
+ }
+ }
+
+}
Property changes on: labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/DatePickerPopUp.java
___________________________________________________________________
Name: svn:keywords
+ Rev Date
Name: svn:eol-style
+ native
Added: labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/DatePickerTextBox.java
===================================================================
--- labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/DatePickerTextBox.java (rev 0)
+++ labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/DatePickerTextBox.java 2010-03-10 17:53:10 UTC (rev 32021)
@@ -0,0 +1,98 @@
+package org.drools.guvnor.client.modeldriven.ui;
+
+import java.util.Date;
+
+import org.drools.guvnor.client.common.ImageButton;
+import org.drools.guvnor.client.common.ValueChanged;
+
+import com.google.gwt.i18n.client.DateTimeFormat;
+import com.google.gwt.user.client.ui.Button;
+import com.google.gwt.user.client.ui.ClickListener;
+import com.google.gwt.user.client.ui.FocusListener;
+import com.google.gwt.user.client.ui.TextBox;
+import com.google.gwt.user.client.ui.Widget;
+
+public class DatePickerTextBox extends DatePicker {
+
+ DatePickerPopUp datePickerPopUp = new DatePickerPopUp( new ClickListener() {
+ public void onClick(Widget arg0) {
+ // Set the date from the dropdowns
+ Date date = formatter.parse( textWidget.getText() );
+
+ // years
+ date.setYear( Integer.parseInt( datePickerPopUp.years.getItemText( datePickerPopUp.years.getSelectedIndex() ) ) - 1900 );
+ // months
+ date.setMonth( datePickerPopUp.months.getSelectedIndex() );
+ // days
+ date.setDate( datePickerPopUp.dates.getSelectedIndex() + 1 );
+
+ textWidget.setText( formatter.format( date ) );
+
+ valueChanged();
+ makeDirty();
+ datePickerPopUp.hide();
+ }
+ } );
+ ImageButton select = new ImageButton("images/edit_tiny.gif");
+
+ public DatePickerTextBox(String selectedDate) {
+ this( selectedDate,
+ defaultFormat );
+ }
+
+ public DatePickerTextBox(String selectedDate,
+ String visualFormat) {
+ this.visualFormat = visualFormat;
+
+ if ( visualFormat == null || visualFormat.equals( "default" ) || visualFormat.equals( "" ) ) {
+ visualFormat = defaultFormat;
+ }
+
+ formatter = DateTimeFormat.getFormat( visualFormat );
+
+ select.addClickListener( new ClickListener() {
+ public void onClick(Widget arg0) {
+ datePickerPopUp.setPopupPosition( textWidget.getAbsoluteLeft(),
+ textWidget.getAbsoluteTop() + 20 );
+
+ if ( textWidget.getText() != null && "".equals( textWidget.getText() ) ) {
+ textWidget.setText( formatter.format( new Date() ) );
+ }
+
+ datePickerPopUp.setDropdowns( formatter.parse( textWidget.getText() ) );
+ datePickerPopUp.show();
+ }
+ } );
+
+
+ if ( selectedDate != null && !selectedDate.equals( "" ) ) {
+ textWidget.setText( selectedDate );
+
+ // Check if there is a valid date set. If not, set this date.
+ try {
+ formatter.parse( selectedDate );
+ } catch ( Exception e ) {
+ selectedDate = null;
+ }
+ }
+
+ textWidget.addFocusListener( new FocusListener() {
+ public void onFocus(Widget arg0) {
+ }
+
+ public void onLostFocus(Widget arg0) {
+ TextBox box = (TextBox) arg0;
+ textWidget.setText( box.getText() );
+ valueChanged();
+ makeDirty();
+ datePickerPopUp.hide();
+ }
+ } );
+
+ panel.add( textWidget );
+ panel.add( select );
+ initWidget( panel );
+ }
+
+
+}
Property changes on: labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/DatePickerTextBox.java
___________________________________________________________________
Name: svn:keywords
+ Rev Date
Name: svn:eol-style
+ native
Added: labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/GuvnorDatePicker.java
===================================================================
--- labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/GuvnorDatePicker.java (rev 0)
+++ labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/GuvnorDatePicker.java 2010-03-10 17:53:10 UTC (rev 32021)
@@ -0,0 +1,22 @@
+package org.drools.guvnor.client.modeldriven.ui;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+import org.drools.guvnor.client.common.ValueChanged;
+import org.drools.guvnor.client.explorer.Preferences;
+
+import com.google.gwt.i18n.client.DateTimeFormat;
+import com.google.gwt.user.client.ui.ClickListener;
+import com.google.gwt.user.client.ui.FocusListener;
+import com.google.gwt.user.client.ui.Label;
+import com.google.gwt.user.client.ui.Panel;
+import com.google.gwt.user.client.ui.SimplePanel;
+import com.google.gwt.user.client.ui.TextBox;
+import com.google.gwt.user.client.ui.Widget;
+
+class GuvnorDatePicker {
+
+
+}
Property changes on: labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/modeldriven/ui/GuvnorDatePicker.java
___________________________________________________________________
Name: svn:keywords
+ Rev Date
Name: svn:eol-style
+ native
Modified: labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/rulelist/QueryWidget.java
===================================================================
--- labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/rulelist/QueryWidget.java 2010-03-10 17:07:11 UTC (rev 32020)
+++ labs/jbossrules/soa_branches/BRMS-5.0.1/drools-guvnor/src/main/java/org/drools/guvnor/client/rulelist/QueryWidget.java 2010-03-10 17:53:10 UTC (rev 32021)
@@ -10,6 +10,8 @@
import org.drools.guvnor.client.rpc.MetaDataQuery;
import org.drools.guvnor.client.rpc.RepositoryServiceFactory;
import org.drools.guvnor.client.messages.Constants;
+import org.drools.guvnor.client.modeldriven.ui.DatePickerLabel;
+import org.drools.guvnor.client.modeldriven.ui.DatePickerTextBox;
import com.google.gwt.user.client.Window;
import com.google.gwt.user.client.ui.*;
@@ -19,7 +21,6 @@
public class QueryWidget extends Composite {
- private static final String DATE_PICKER_FORMAT = "d-M-Y H:m:s"; //NON-NLS
private VerticalPanel layout;
private EditItemEvent openItem;
private Constants constants = ((Constants) GWT.create(Constants.class));
@@ -77,13 +78,13 @@
HorizontalPanel created = new HorizontalPanel();
created.add(new SmallLabel(constants.AfterColon()));
- final DateField createdAfter = new DateField(constants.AfterColon(), DATE_PICKER_FORMAT);
+ final DatePickerTextBox createdAfter = new DatePickerTextBox( "" );
created.add(createdAfter);
created.add(new SmallLabel(" ")); //NON-NLS
created.add(new SmallLabel(constants.BeforeColon()));
- final DateField createdBefore = new DateField(constants.Before(), DATE_PICKER_FORMAT);
+ final DatePickerTextBox createdBefore = new DatePickerTextBox( "" );
created.add(createdBefore);
fm.addAttribute(constants.DateCreated1(), created);
@@ -92,13 +93,13 @@
HorizontalPanel lastMod = new HorizontalPanel();
lastMod.add(new SmallLabel(constants.AfterColon()));
- final DateField lastModAfter = new DateField(constants.AfterColon(), DATE_PICKER_FORMAT);
+ final DatePickerTextBox lastModAfter = new DatePickerTextBox( "" );
lastMod.add(lastModAfter);
lastMod.add(new SmallLabel(" ")); //NON-NLS
lastMod.add(new SmallLabel(constants.BeforeColon()));
- final DateField lastModBefore = new DateField(constants.BeforeColon(), DATE_PICKER_FORMAT);
+ final DatePickerTextBox lastModBefore = new DatePickerTextBox( "" );
lastMod.add(lastModBefore);
fm.addAttribute(constants.LastModified1(), lastMod);
@@ -120,8 +121,8 @@
mdq[i] = (MetaDataQuery) atts.get(name);
i++;
}
- RepositoryServiceFactory.getService().queryMetaData(mdq, createdAfter.getValue(), createdBefore.getValue(),
- lastModAfter.getValue(), lastModBefore.getValue(), false, startRow, numberOfRows, cb);
+ RepositoryServiceFactory.getService().queryMetaData(mdq, createdAfter.getDate(), createdBefore.getDate(),
+ lastModAfter.getDate(), lastModBefore.getDate(), false, startRow, numberOfRows, cb);
}
});
resultsP.add(grid);
More information about the jboss-svn-commits
mailing list