Author: gseitz
Date: Tue Oct  2 12:40:21 2007
New Revision: 581362

URL: http://svn.apache.org/viewvc?rev=581362&view=rev
Log:
WICKET-1031: add facilities to execute javascript code to further customize the 
YUI Calendar

Modified:
    
wicket/trunk/jdk-1.4/wicket-datetime/src/main/java/org/apache/wicket/extensions/yui/calendar/DatePicker.java
    
wicket/trunk/jdk-1.4/wicket-datetime/src/main/java/org/apache/wicket/extensions/yui/calendar/DatePicker.js

Modified: 
wicket/trunk/jdk-1.4/wicket-datetime/src/main/java/org/apache/wicket/extensions/yui/calendar/DatePicker.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket-datetime/src/main/java/org/apache/wicket/extensions/yui/calendar/DatePicker.java?rev=581362&r1=581361&r2=581362&view=diff
==============================================================================
--- 
wicket/trunk/jdk-1.4/wicket-datetime/src/main/java/org/apache/wicket/extensions/yui/calendar/DatePicker.java
 (original)
+++ 
wicket/trunk/jdk-1.4/wicket-datetime/src/main/java/org/apache/wicket/extensions/yui/calendar/DatePicker.java
 Tue Oct  2 12:40:21 2007
@@ -189,7 +189,12 @@
                                new JavascriptResourceReference(YuiLib.class, 
"")));
                variables.put("enableMonthYearSelection", 
Boolean.valueOf(enableMonthYearSelection()));
                variables.put("hideOnSelect", Boolean.valueOf(hideOnSelect()));
-
+               String script = getAdditionalJavascript();
+               if (script != null)
+               {
+                       variables.put("additionalJavascript", 
script.replace("${calendar}", "YAHOO.wicket."
+                                       + widgetId + "DpJs"));
+               }
                // print out the initialization properties
                Properties p = new Properties();
                configure(p);
@@ -615,5 +620,29 @@
        protected boolean renderOnLoad()
        {
                return false;
+       }
+
+       /**
+        * Override this method to further customize the YUI Calendar with
+        * additional Javascript code. The code returned by this method is 
executed
+        * right after the Calendar has been constructed and initialized. To 
refer
+        * to the actual Calendar DOM object, use <code>${calendar}</code> in 
your
+        * code.<br/>See <a href="http://developer.yahoo.com/yui/calendar/";>the
+        * widget's documentation</a> for more information about the YUI 
Calendar.<br/>
+        * Example:
+        * 
+        * <pre>
+        * protected String getAdditionalJavascript()
+        * {
+        *      return &quot;${calendar}.addRenderer(&quot;10/3&quot;, 
${calendar}.renderCellStyleHighlight1);&quot;;
+        * }
+        * </pre>
+        * 
+        * @return a String containing additional Javascript code
+        * 
+        */
+       protected String getAdditionalJavascript()
+       {
+               return "";
        }
 }

Modified: 
wicket/trunk/jdk-1.4/wicket-datetime/src/main/java/org/apache/wicket/extensions/yui/calendar/DatePicker.js
URL: 
http://svn.apache.org/viewvc/wicket/trunk/jdk-1.4/wicket-datetime/src/main/java/org/apache/wicket/extensions/yui/calendar/DatePicker.js?rev=581362&r1=581361&r2=581362&view=diff
==============================================================================
--- 
wicket/trunk/jdk-1.4/wicket-datetime/src/main/java/org/apache/wicket/extensions/yui/calendar/DatePicker.js
 (original)
+++ 
wicket/trunk/jdk-1.4/wicket-datetime/src/main/java/org/apache/wicket/extensions/yui/calendar/DatePicker.js
 Tue Oct  2 12:40:21 2007
@@ -60,6 +60,7 @@
                                fireChangeEvent: ${fireChangeEvent},
                                hideOnSelect: ${hideOnSelect}
                        });
+       ${additionalJavascript}
 }
 
 check${widgetId}Loader();


Reply via email to