You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by hl...@apache.org on 2005/11/11 23:35:42 UTC

svn commit: r332659 - in /jakarta/tapestry/trunk: ./ framework/src/java/org/apache/tapestry/form/

Author: hlship
Date: Fri Nov 11 14:35:35 2005
New Revision: 332659

URL: http://svn.apache.org/viewcvs?rev=332659&view=rev
Log:
TAPESTRY-669,TAPESTRY-233,TAPESTRY-690,TAPESTRY-228: Fix a number of bugs in the DatePicker component's JavaScript

Added:
    jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.properties
Modified:
    jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.java
    jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.js
    jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.jwc
    jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.script
    jakarta/tapestry/trunk/status.xml

Modified: jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.java
URL: http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.java?rev=332659&r1=332658&r2=332659&view=diff
==============================================================================
--- jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.java (original)
+++ jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.java Fri Nov 11 14:35:35 2005
@@ -59,8 +59,6 @@
 
     public abstract IAsset getIcon();
 
-    private IScript _script;
-
     private static final String SYM_NAME = "name";
 
     private static final String SYM_FORMNAME = "formName";
@@ -81,6 +79,8 @@
 
     private static final String SYM_INCL_WEEK = "includeWeek";
 
+    private static final String SYM_CLEAR_BUTTON_LABEL = "clearButtonLabel";
+
     private static final String SYM_VALUE = "value";
 
     private static final String SYM_BUTTONONCLICKHANDLER = "buttonOnclickHandler";
@@ -90,25 +90,11 @@
      * 
      * @since 4.0
      */
-    public abstract IScriptSource getScriptSource();
+    public abstract IScript getScript();
 
     /**
-     * @see org.apache.tapestry.AbstractComponent#finishLoad()
-     */
-    protected void finishLoad()
-    {
-        super.finishLoad();
-
-        IScriptSource source = getScriptSource();
-
-        Resource location = getSpecification().getSpecificationLocation().getRelativeResource(
-                "DatePicker.script");
-
-        _script = source.getScript(location);
-    }
-
-    /**
-     * @see org.apache.tapestry.form.AbstractFormComponent#renderFormComponent(org.apache.tapestry.IMarkupWriter, org.apache.tapestry.IRequestCycle)
+     * @see org.apache.tapestry.form.AbstractFormComponent#renderFormComponent(org.apache.tapestry.IMarkupWriter,
+     *      org.apache.tapestry.IRequestCycle)
      */
     protected void renderFormComponent(IMarkupWriter writer, IRequestCycle cycle)
     {
@@ -123,9 +109,9 @@
         Calendar cal = Calendar.getInstance(locale);
 
         String name = getName();
-        
+
         String value = getTranslatedFieldSupport().format(this, getValue());
-        
+
         Map symbols = new HashMap();
 
         symbols.put(SYM_NAME, name);
@@ -138,10 +124,11 @@
         symbols.put(SYM_SHORT_WEEKDAYNAMES, makeStringList(dfs.getShortWeekdays(), 1, 8));
         symbols.put(SYM_FIRSTDAYINWEEK, new Integer(cal.getFirstDayOfWeek() - 1));
         symbols.put(SYM_MINDAYSINFIRSTWEEK, new Integer(cal.getMinimalDaysInFirstWeek()));
+        symbols.put(SYM_CLEAR_BUTTON_LABEL, getMessages().getMessage("clear"));
         symbols.put(SYM_FORMNAME, getForm().getName());
         symbols.put(SYM_VALUE, getValue());
 
-        _script.execute(cycle, pageRenderSupport, symbols);
+        getScript().execute(cycle, pageRenderSupport, symbols);
 
         renderDelegatePrefix(writer, cycle);
 
@@ -184,18 +171,19 @@
     }
 
     /**
-     * @see org.apache.tapestry.form.AbstractFormComponent#rewindFormComponent(org.apache.tapestry.IMarkupWriter, org.apache.tapestry.IRequestCycle)
+     * @see org.apache.tapestry.form.AbstractFormComponent#rewindFormComponent(org.apache.tapestry.IMarkupWriter,
+     *      org.apache.tapestry.IRequestCycle)
      */
     protected void rewindFormComponent(IMarkupWriter writer, IRequestCycle cycle)
     {
         String value = cycle.getParameter(getName());
-        
+
         try
         {
             Date date = (Date) getTranslatedFieldSupport().parse(this, value);
-            
+
             getValidatableFieldSupport().validate(this, writer, cycle, date);
-            
+
             setValue(date);
         }
         catch (ValidatorException e)

Modified: jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.js
URL: http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.js?rev=332659&r1=332658&r2=332659&view=diff
==============================================================================
Binary files - no diff available.

Modified: jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.jwc
URL: http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.jwc?rev=332659&r1=332658&r2=332659&view=diff
==============================================================================
--- jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.jwc (original)
+++ jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.jwc Fri Nov 11 14:35:35 2005
@@ -33,7 +33,7 @@
   		
   <asset name="defaultIcon" path="DatePickerIcon.png"/>
        
-  <inject property="scriptSource" object="infrastructure:scriptSource"/>
+  <inject property="script" type="script" object="DatePicker.script"/>
   <inject property="translatedFieldSupport" object="service:tapestry.form.TranslatedFieldSupport"/>
   <inject property="validatableFieldSupport" object="service:tapestry.form.ValidatableFieldSupport"/>
     

Added: jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.properties
URL: http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.properties?rev=332659&view=auto
==============================================================================
--- jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.properties (added)
+++ jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.properties Fri Nov 11 14:35:35 2005
@@ -0,0 +1,15 @@
+# Copyright 2005 The Apache Software Foundation
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+clear=Clear
\ No newline at end of file

Modified: jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.script
URL: http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.script?rev=332659&r1=332658&r2=332659&view=diff
==============================================================================
--- jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.script (original)
+++ jakarta/tapestry/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.script Fri Nov 11 14:35:35 2005
@@ -33,6 +33,7 @@
 <input-symbol key="minimalDaysInFirstWeek" required="yes"/>
 <input-symbol key="format" required="yes"/>
 <input-symbol key="includeWeek" required="yes"/>
+<input-symbol key="clearButtonLabel" required="yes"/>
 <input-symbol key="value" required="no"/>
 
 <let key="calendarObject" unique="yes">
@@ -47,26 +48,18 @@
 var ${calendarObject};
 </body>
 
-<initialization>
-	
+<initialization>	
 <if expression="value == null">
 ${calendarObject} = new Calendar();
 </if>
 <if expression="value != null">
 ${calendarObject} = new Calendar(${value.time});
-</if>
-		
-${calendarObject}.setMonthNames(new Array(${monthNames}));
-${calendarObject}.setShortMonthNames(new Array(${shortMonthNames}));
-${calendarObject}.setWeekDayNames(new Array(${weekDayNames}));
-${calendarObject}.setShortWeekDayNames(new Array(${shortWeekDayNames}));
-${calendarObject}.setFormat("${format}");
-${calendarObject}.setFirstDayOfWeek(${firstDayInWeek});
-${calendarObject}.setMinimalDaysInFirstWeek(${minimalDaysInFirstWeek});
-${calendarObject}.setIncludeWeek(${includeWeek});
-
-${calendarObject}.create();
-
+</if>	
+${calendarObject}.initialize([${monthNames}],
+  [${shortMonthNames}],
+  [${weekDayNames}],
+  [${shortWeekDayNames}],
+  "${format}", ${firstDayInWeek}, ${includeWeek}, ${minimalDaysInFirstWeek}, "${clearButtonLabel}");	
 ${calendarObject}.onchange = function() {
   var field = document.${formName}.${name};
   var value = ${calendarObject}.formatDate();
@@ -75,7 +68,6 @@
     if (field.onchange) field.onchange();
   }
 }
-
 </initialization>
 </script>
 

Modified: jakarta/tapestry/trunk/status.xml
URL: http://svn.apache.org/viewcvs/jakarta/tapestry/trunk/status.xml?rev=332659&r1=332658&r2=332659&view=diff
==============================================================================
--- jakarta/tapestry/trunk/status.xml (original)
+++ jakarta/tapestry/trunk/status.xml Fri Nov 11 14:35:35 2005
@@ -57,6 +57,7 @@
       <action type="fix" dev="HLS" fixes-bug="TAPESTRY-742">LinkSubmit renders overly verbose JavaScript</action>
       <action type="fix" dev="HLS" fixes-bug="TAPESTRY-620">Expose the current IRequestCycle as an injectable service</action>
       <action type="fix" dev="HLS" fixes-bug="TAPESTRY-517">Using a FieldLabel component after the decorated form component causes the FieldLabel's id attribute to be wrong</action>
+      <action type="fix" dev="HLS" fixes-bug="TAPESTRY-669,TAPESTRY-233,TAPESTRY-690,TAPESTRY-228">Fix a number of bugs in the DatePicker component's JavaScript</action>
     </release>
     <release version="4.0-beta-12" date="Oct 30 2005">
       <action type="fix" dev="HLS" fixes-bug="TAPESTRY-718">Asset injection makes assets appear as null inside finishLoad()</action>



---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-dev-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-dev-help@jakarta.apache.org