details:   /erp/devel/pi/rev/8f494397e400
changeset: 9123:8f494397e400
user:      Gorka Ion Damián <gorkaion.damian <at> openbravo.com>
date:      Tue Dec 14 14:09:37 2010 +0100
summary:   Retrive the CAN_MAXIMIZE property from the superclass if it exists.

details:   /erp/devel/pi/rev/543120570dec
changeset: 9124:543120570dec
user:      Gorka Ion Damián <gorkaion.damian <at> openbravo.com>
date:      Tue Dec 14 14:10:28 2010 +0100
summary:   Add LongDomainType case to save its value as Numeric.

details:   /erp/devel/pi/rev/63908817afee
changeset: 9125:63908817afee
user:      Gorka Ion Damián <gorkaion.damian <at> openbravo.com>
date:      Tue Dec 14 14:11:26 2010 +0100
summary:   Set widget height based on the RowsNumber parameter.

details:   /erp/devel/pi/rev/ad4fb64a6f27
changeset: 9126:ad4fb64a6f27
user:      Gorka Ion Damián <gorkaion.damian <at> openbravo.com>
date:      Tue Dec 14 14:12:02 2010 +0100
summary:   Check that exists a query defined to prevent a NPE.

details:   /erp/devel/pi/rev/81d93d29ae90
changeset: 9127:81d93d29ae90
user:      Gorka Ion Damián <gorkaion.damian <at> openbravo.com>
date:      Tue Dec 14 14:12:48 2010 +0100
summary:   Fixed issue with the datasource and force reloading of the data 
after it's set.

diffstat:

 
modules/org.openbravo.client.application/src/org/openbravo/client/application/ParametersActionHandler.java
 |   4 +-
 
modules/org.openbravo.client.myob/src/org/openbravo/client/myob/WidgetProvider.java
                        |   6 +-
 
modules/org.openbravo.client.querylist/src/org/openbravo/client/querylist/QueryListUtils.java
              |  62 +++++----
 
modules/org.openbravo.client.querylist/src/org/openbravo/client/querylist/QueryListWidgetProvider.java
     |  33 ++--
 
modules/org.openbravo.client.querylist/web/org.openbravo.client.querylist/js/ob-querylist-widget.js
        |   3 +-
 5 files changed, 60 insertions(+), 48 deletions(-)

diffs (197 lines):

diff -r d136f72b2a64 -r 81d93d29ae90 
modules/org.openbravo.client.application/src/org/openbravo/client/application/ParametersActionHandler.java
--- 
a/modules/org.openbravo.client.application/src/org/openbravo/client/application/ParametersActionHandler.java
        Tue Dec 14 13:56:33 2010 +0100
+++ 
b/modules/org.openbravo.client.application/src/org/openbravo/client/application/ParametersActionHandler.java
        Tue Dec 14 14:12:48 2010 +0100
@@ -32,6 +32,7 @@
 import org.openbravo.base.model.domaintype.BigDecimalDomainType;
 import org.openbravo.base.model.domaintype.DateDomainType;
 import org.openbravo.base.model.domaintype.DomainType;
+import org.openbravo.base.model.domaintype.LongDomainType;
 import org.openbravo.base.model.domaintype.StringDomainType;
 import org.openbravo.base.provider.OBProvider;
 import org.openbravo.base.structure.BaseOBObject;
@@ -161,7 +162,8 @@
       } else if (domainType.getClass().equals(DateDomainType.class)) {
         Date date = xmlDateFormat.parse(stringValue);
         parameterValue.setValueDate(date);
-      } else if 
(domainType.getClass().getSuperclass().equals(BigDecimalDomainType.class)) {
+      } else if 
(domainType.getClass().getSuperclass().equals(BigDecimalDomainType.class)
+          || 
domainType.getClass().getSuperclass().equals(LongDomainType.class)) {
         parameterValue.setValueNumber(new BigDecimal(stringValue));
       } else { // default
         parameterValue.setValueString(stringValue);
diff -r d136f72b2a64 -r 81d93d29ae90 
modules/org.openbravo.client.myob/src/org/openbravo/client/myob/WidgetProvider.java
--- 
a/modules/org.openbravo.client.myob/src/org/openbravo/client/myob/WidgetProvider.java
       Tue Dec 14 13:56:33 2010 +0100
+++ 
b/modules/org.openbravo.client.myob/src/org/openbravo/client/myob/WidgetProvider.java
       Tue Dec 14 14:12:48 2010 +0100
@@ -96,7 +96,11 @@
           .getClientSideWidgetClassName());
       jsonObject.put(TITLE, MyOBUtils.getWidgetTitle(widgetClass));
       jsonObject.put(HEIGHT, widgetClass.getHeight());
-      jsonObject.put(CAN_MAXIMIZE, widgetClass.isCanMaximize());
+      if (widgetClass.getWidgetSuperclass() != null) {
+        jsonObject.put(CAN_MAXIMIZE, 
widgetClass.getWidgetSuperclass().isCanMaximize());
+      } else {
+        jsonObject.put(CAN_MAXIMIZE, widgetClass.isCanMaximize());
+      }
       final JSONObject defaultParameters = new JSONObject();
       final List<JSONObject> fieldDefinitions = new ArrayList<JSONObject>();
       for (Parameter parameter : 
widgetClass.getOBUIAPPParameterEMObkmoWidgetClassIDList()) {
diff -r d136f72b2a64 -r 81d93d29ae90 
modules/org.openbravo.client.querylist/src/org/openbravo/client/querylist/QueryListUtils.java
--- 
a/modules/org.openbravo.client.querylist/src/org/openbravo/client/querylist/QueryListUtils.java
     Tue Dec 14 13:56:33 2010 +0100
+++ 
b/modules/org.openbravo.client.querylist/src/org/openbravo/client/querylist/QueryListUtils.java
     Tue Dec 14 14:12:48 2010 +0100
@@ -39,35 +39,37 @@
   public static String getWidgetClassFields(WidgetClass widgetClass, IncludeIn 
includeIn) {
     try {
       final List<JSONObject> jsonFields = new ArrayList<JSONObject>();
-      for (OBCQL_QueryColumn column : QueryListUtils.getColumns(widgetClass
-          .getOBCQLWidgetQueryList().get(0), includeIn)) {
-        final JSONObject field = new JSONObject();
-        field.put("name", column.getName());
-        final Reference reference;
-        if (column.getReferenceSearchKey() != null) {
-          reference = column.getReferenceSearchKey();
-        } else {
-          reference = column.getReference();
+      if (!widgetClass.getOBCQLWidgetQueryList().isEmpty()) {
+        for (OBCQL_QueryColumn column : QueryListUtils.getColumns(widgetClass
+            .getOBCQLWidgetQueryList().get(0), includeIn)) {
+          final JSONObject field = new JSONObject();
+          field.put("name", column.getName());
+          final Reference reference;
+          if (column.getReferenceSearchKey() != null) {
+            reference = column.getReferenceSearchKey();
+          } else {
+            reference = column.getReference();
+          }
+          final UIDefinition uiDefinition = 
UIDefinitionController.getInstance().getUIDefinition(
+              reference);
+          field.put("type", uiDefinition.getName());
+          try {
+            final String fieldProperties = 
uiDefinition.getFieldProperties(null);
+            if (fieldProperties != null && fieldProperties.trim().length() > 
0) {
+              final JSONObject fieldPropertiesObject = new 
JSONObject(fieldProperties);
+              field.put("fieldProperties", fieldPropertiesObject);
+            }
+          } catch (NullPointerException e) {
+            // handle non-careful implementors of ui definitions
+            log.error("Error when processing column: " + column, e);
+            // ignore this field properties for now
+          }
+
+          field.put("title", getColumnLabel(column));
+
+          field.put("width", column.getWidth());
+          jsonFields.add(field);
         }
-        final UIDefinition uiDefinition = 
UIDefinitionController.getInstance().getUIDefinition(
-            reference);
-        field.put("type", uiDefinition.getName());
-        try {
-          final String fieldProperties = uiDefinition.getFieldProperties(null);
-          if (fieldProperties != null && fieldProperties.trim().length() > 0) {
-            final JSONObject fieldPropertiesObject = new 
JSONObject(fieldProperties);
-            field.put("fieldProperties", fieldPropertiesObject);
-          }
-        } catch (NullPointerException e) {
-          // handle non-careful implementors of ui definitions
-          log.error("Error when processing column: " + column, e);
-          // ignore this field properties for now
-        }
-
-        field.put("title", getColumnLabel(column));
-
-        field.put("width", column.getWidth());
-        jsonFields.add(field);
       }
       final JSONArray fields = new JSONArray(jsonFields);
       return fields.toString();
@@ -81,8 +83,8 @@
     OBCriteria<OBCQL_QueryColumn> obcColumns = 
OBDal.getInstance().createCriteria(
         OBCQL_QueryColumn.class);
     obcColumns.add(Expression.eq(OBCQL_QueryColumn.PROPERTY_WIDGETQUERY, 
query));
-    obcColumns.add(Expression.in(OBCQL_QueryColumn.PROPERTY_INCLUDEIN,
-        includeIn.getIncludedValues()));
+    obcColumns.add(Expression.in(OBCQL_QueryColumn.PROPERTY_INCLUDEIN, 
includeIn
+        .getIncludedValues()));
     obcColumns.addOrderBy(OBCQL_QueryColumn.PROPERTY_SEQUENCENUMBER, true);
     return obcColumns.list();
   }
diff -r d136f72b2a64 -r 81d93d29ae90 
modules/org.openbravo.client.querylist/src/org/openbravo/client/querylist/QueryListWidgetProvider.java
--- 
a/modules/org.openbravo.client.querylist/src/org/openbravo/client/querylist/QueryListWidgetProvider.java
    Tue Dec 14 13:56:33 2010 +0100
+++ 
b/modules/org.openbravo.client.querylist/src/org/openbravo/client/querylist/QueryListWidgetProvider.java
    Tue Dec 14 14:12:48 2010 +0100
@@ -22,6 +22,7 @@
 import org.codehaus.jettison.json.JSONObject;
 import org.openbravo.base.exception.OBException;
 import org.openbravo.client.application.Parameter;
+import org.openbravo.client.application.ParameterValue;
 import org.openbravo.client.kernel.KernelConstants;
 import org.openbravo.client.myob.WidgetInstance;
 import org.openbravo.client.myob.WidgetProvider;
@@ -35,6 +36,9 @@
 
   private static String GRID_PROPERTIES_REFERENCE = 
"B36DF126DF5F4077A37F1E5B963AA636";
   private static final Logger log = 
Logger.getLogger(QueryListWidgetProvider.class);
+  private static final String HEIGHT = "height";
+  private static final Long ROW_HEIGHT = 23L;
+  private static final Long STATIC_HEIGHT = 80L;
 
   @Override
   public String generate() {
@@ -65,24 +69,23 @@
         + gridProperties + "});";
   }
 
-  @Override
-  public JSONObject getWidgetClassDefinition() {
-    try {
-      final JSONObject jsonObject = super.getWidgetClassDefinition();
-      final JSONObject parameters = new JSONObject();
-      jsonObject.put(WidgetProvider.PARAMETERS, parameters);
-      return jsonObject;
-    } catch (Exception e) {
-      throw new OBException(e);
-    }
-  }
-
   public JSONObject getWidgetInstanceDefinition(WidgetInstance widgetInstance) 
{
     try {
-      final JSONObject jsonObject = new JSONObject();
-      addDefaultWidgetProperties(jsonObject, widgetInstance);
+      final JSONObject jsonObject = 
super.getWidgetInstanceDefinition(widgetInstance);
       jsonObject.put("widgetInstanceId", widgetInstance.getId());
-      final JSONObject parameters = 
jsonObject.getJSONObject(WidgetProvider.PARAMETERS);
+
+      Long height = widgetInstance.getWidgetClass().getHeight();
+
+      for (ParameterValue value : widgetInstance
+          .getOBUIAPPParameterValueEMObkmoWidgetInstanceIDList()) {
+        if ("RowsNumber".equals(value.getParameter().getDBColumnName())) {
+          height = value.getValueNumber().longValue() * ROW_HEIGHT;
+          height += STATIC_HEIGHT;
+        }
+      }
+
+      jsonObject.put(HEIGHT, height);
+
       return jsonObject;
     } catch (Exception e) {
       throw new OBException(e);
diff -r d136f72b2a64 -r 81d93d29ae90 
modules/org.openbravo.client.querylist/web/org.openbravo.client.querylist/js/ob-querylist-widget.js
--- 
a/modules/org.openbravo.client.querylist/web/org.openbravo.client.querylist/js/ob-querylist-widget.js
       Tue Dec 14 13:56:33 2010 +0100
+++ 
b/modules/org.openbravo.client.querylist/web/org.openbravo.client.querylist/js/ob-querylist-widget.js
       Tue Dec 14 14:12:48 2010 +0100
@@ -74,7 +74,7 @@
   //autoFitWidthApproach: 'title',
   
   initWidget: function(){
-    this.setDataSource(OB.Datasource.get('DD17275427E94026AD721067C3C91C18', 
this));
+    OB.Datasource.get('DD17275427E94026AD721067C3C91C18', this);
     return this.Super('initWidget', arguments);
   },
   
@@ -82,6 +82,7 @@
     if (ds) {
       ds.fields = this.widget.fields;
       this.dataSource = ds;
+      this.filterData();
     }
   },
   

------------------------------------------------------------------------------
Lotusphere 2011
Register now for Lotusphere 2011 and learn how
to connect the dots, take your collaborative environment
to the next level, and enter the era of Social Business.
http://p.sf.net/sfu/lotusphere-d2d
_______________________________________________
Openbravo-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openbravo-commits

Reply via email to