You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ofbiz.apache.org by ad...@apache.org on 2013/05/30 20:48:28 UTC

svn commit: r1487966 - in /ofbiz/trunk/framework/widget: dtd/widget-screen.xsd src/org/ofbiz/widget/html/HtmlScreenRenderer.java src/org/ofbiz/widget/screen/MacroScreenRenderer.java src/org/ofbiz/widget/screen/ModelScreenWidget.java

Author: adrianc
Date: Thu May 30 18:48:28 2013
New Revision: 1487966

URL: http://svn.apache.org/r1487966
Log:
Small fix for screen widget <container> element - allow expressions in the auto-update-interval attribute.

Modified:
    ofbiz/trunk/framework/widget/dtd/widget-screen.xsd
    ofbiz/trunk/framework/widget/src/org/ofbiz/widget/html/HtmlScreenRenderer.java
    ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/MacroScreenRenderer.java
    ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/ModelScreenWidget.java

Modified: ofbiz/trunk/framework/widget/dtd/widget-screen.xsd
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/dtd/widget-screen.xsd?rev=1487966&r1=1487965&r2=1487966&view=diff
==============================================================================
--- ofbiz/trunk/framework/widget/dtd/widget-screen.xsd (original)
+++ ofbiz/trunk/framework/widget/dtd/widget-screen.xsd Thu May 30 18:48:28 2013
@@ -728,7 +728,7 @@ under the License.
                         Some widget rendering environments support asynchronous updates.</xs:documentation>
                 </xs:annotation>
             </xs:attribute>
-            <xs:attribute type="xs:integer" name="auto-update-interval">
+            <xs:attribute type="xs:string" name="auto-update-interval">
                 <xs:annotation>
                     <xs:documentation>The auto-update interval, in seconds.</xs:documentation>
                 </xs:annotation>

Modified: ofbiz/trunk/framework/widget/src/org/ofbiz/widget/html/HtmlScreenRenderer.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/html/HtmlScreenRenderer.java?rev=1487966&r1=1487965&r2=1487966&view=diff
==============================================================================
--- ofbiz/trunk/framework/widget/src/org/ofbiz/widget/html/HtmlScreenRenderer.java (original)
+++ ofbiz/trunk/framework/widget/src/org/ofbiz/widget/html/HtmlScreenRenderer.java Thu May 30 18:48:28 2013
@@ -111,7 +111,7 @@ public class HtmlScreenRenderer extends 
             writer.append("', '");
             writer.append(rh.makeLink(request, response, autoUpdateTarget));
             writer.append("', '");
-            writer.append("', '").append(container.getAutoUpdateInterval()).append("');</script>");
+            writer.append("', '").append(container.getAutoUpdateInterval(context)).append("');</script>");
             appendWhitespace(writer);
         }
         writer.append("<div");

Modified: ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/MacroScreenRenderer.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/MacroScreenRenderer.java?rev=1487966&r1=1487965&r2=1487966&view=diff
==============================================================================
--- ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/MacroScreenRenderer.java (original)
+++ ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/MacroScreenRenderer.java Thu May 30 18:48:28 2013
@@ -194,7 +194,7 @@ public class MacroScreenRenderer impleme
         parameters.put("id", containerId);
         parameters.put("style", container.getStyle(context));
         parameters.put("autoUpdateLink", autoUpdateLink);
-        parameters.put("autoUpdateInterval", container.getAutoUpdateInterval());
+        parameters.put("autoUpdateInterval", container.getAutoUpdateInterval(context));
         executeMacro(writer, "renderContainerBegin", parameters);
     }
 

Modified: ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/ModelScreenWidget.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/ModelScreenWidget.java?rev=1487966&r1=1487965&r2=1487966&view=diff
==============================================================================
--- ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/ModelScreenWidget.java (original)
+++ ofbiz/trunk/framework/widget/src/org/ofbiz/widget/screen/ModelScreenWidget.java Thu May 30 18:48:28 2013
@@ -308,7 +308,7 @@ public abstract class ModelScreenWidget 
         protected FlexibleStringExpander idExdr;
         protected FlexibleStringExpander styleExdr;
         protected FlexibleStringExpander autoUpdateTargetExdr;
-        protected String autoUpdateInterval = "2";
+        protected FlexibleStringExpander autoUpdateInterval;
         protected List<ModelScreenWidget> subWidgets;
 
         public Container(ModelScreen modelScreen, Element containerElement) {
@@ -316,10 +316,11 @@ public abstract class ModelScreenWidget 
             this.idExdr = FlexibleStringExpander.getInstance(containerElement.getAttribute("id"));
             this.styleExdr = FlexibleStringExpander.getInstance(containerElement.getAttribute("style"));
             this.autoUpdateTargetExdr = FlexibleStringExpander.getInstance(containerElement.getAttribute("auto-update-target"));
-            if (containerElement.hasAttribute("auto-update-interval")) {
-                this.autoUpdateInterval = containerElement.getAttribute("auto-update-interval");
+            String autoUpdateInterval = containerElement.getAttribute("auto-update-interval");
+            if (autoUpdateInterval.isEmpty()) {
+                autoUpdateInterval = "2";
             }
-
+            this.autoUpdateInterval = FlexibleStringExpander.getInstance(autoUpdateInterval);
             // read sub-widgets
             List<? extends Element> subElementList = UtilXml.childElementList(containerElement);
             this.subWidgets = ModelScreenWidget.readSubWidgets(this.modelScreen, subElementList);
@@ -353,8 +354,15 @@ public abstract class ModelScreenWidget 
             return this.autoUpdateTargetExdr.expandString(context);
         }
 
+        /**
+         * @deprecated Use the version that takes a context parameter.
+         */
         public String getAutoUpdateInterval() {
-            return this.autoUpdateInterval;
+            return this.autoUpdateInterval.getOriginal();
+        }
+
+        public String getAutoUpdateInterval(Map<String, Object> context) {
+            return this.autoUpdateInterval.expandString(context);
         }
 
         @Override