|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.wicket.behavior.AbstractBehavior
org.apache.wicket.extensions.yui.calendar.DatePicker
public class DatePicker
Pops up a YUI calendar component so that the user can select a date. On selection, the date is
set in the component it is coupled to, after which the popup is closed again. This behavior can
only be used with components that either implement AbstractTextComponent.ITextFormatProvider or that use
DateConverter configured with an instance of SimpleDateFormat (like Wicket's
default configuration has).
To use, simply add a new instance to your component, which would typically a TextField, like
DateTextField.
The CalendarNavigator can be configured by overriding configure(Map) and setting the
property or by returning true for enableMonthYearSelection().
http://developer.yahoo.com/yui/calendar/,
Serialized Form| Field Summary | |
|---|---|
static java.text.DateFormat |
FORMAT_DATE
Format to be used when configuring YUI calendar. |
static java.text.DateFormat |
FORMAT_PAGEDATE
For specifying which page (month/year) to show in the calendar, use this format for the date. |
| Constructor Summary | |
|---|---|
DatePicker()
Construct. |
|
| Method Summary | |
|---|---|
protected boolean |
alignWithIcon()
Whether to position the date picker relative to the trigger icon. |
protected void |
appendToInit(java.lang.String markupId,
java.lang.String javascriptId,
java.lang.String javascriptWidgetId,
java.lang.StringBuffer b)
Deprecated. this method is never called since a while, and it seems that getAdditionalJavascript() is good enough of a replacement. To be removed
in 1.4 and up. |
void |
bind(Component component)
|
protected void |
configure(java.util.Map widgetProperties)
Gives overriding classes the option of adding (or even changing/ removing) configuration properties for the javascript widget. |
protected void |
configureWidgetProperties(java.util.Map widgetProperties)
Deprecated. Please use configure(Map) instead. |
protected boolean |
enableMonthYearSelection()
Indicates whether plain text is rendered or two select boxes are used to allow direct selection of month and year. |
protected java.lang.String[] |
filterEmpty(java.lang.String[] array)
Filter all empty elements (workaround for DateFormatSymbols returning arrays with
empty elements). |
protected java.lang.String |
getAdditionalJavascript()
Override this method to further customize the YUI Calendar with additional Javascript code. |
protected java.lang.String |
getComponentMarkupId()
Gets the id of the component that the calendar widget will get attached to. |
protected java.lang.String |
getDatePattern()
Gets the date pattern to use for putting selected values in the coupled component. |
protected java.lang.String |
getEscapedComponentMarkupId()
Gets the escaped DOM id that the calendar widget will get attached to. |
protected java.lang.String |
getIconId()
Gets the id of the icon that triggers the popup. |
protected java.lang.String |
getIconStyle()
Gets the style of the icon that triggers the popup. |
protected java.lang.CharSequence |
getIconUrl()
Gets the url for the popup button. |
protected java.util.Locale |
getLocale()
Gets the locale that should be used to configure this widget. |
protected boolean |
hideOnSelect()
Indicates whether the calendar should be hidden after a date was selected. |
boolean |
isEnabled(Component component)
|
protected void |
localize(java.util.Map widgetProperties)
Configure the localized strings for the datepicker widget. |
protected boolean |
notifyComponentOnDateSelected()
Whether to notify the associated component when a date is selected. |
void |
onRendered(Component component)
|
void |
renderHead(IHeaderResponse response)
|
protected boolean |
renderOnLoad()
Indicates whether the calendar should be rendered after it has been loaded. |
protected java.lang.String[] |
substring(java.lang.String[] array,
int len)
Makes a copy of the provided array and for each element copy the substring 0..len to the new array |
| Methods inherited from class org.apache.wicket.behavior.AbstractBehavior |
|---|
afterRender, beforeRender, cleanup, detach, detachModel, exception, getStatelessHint, isTemporary, onComponentTag, onException, rendered |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final java.text.DateFormat FORMAT_DATE
public static final java.text.DateFormat FORMAT_PAGEDATE
| Constructor Detail |
|---|
public DatePicker()
| Method Detail |
|---|
public void bind(Component component)
bind in interface IBehaviorbind in class AbstractBehaviorAbstractBehavior.bind(org.apache.wicket.Component)public void onRendered(Component component)
onRendered in class AbstractBehaviorAbstractBehavior.onRendered(org.apache.wicket.Component)public void renderHead(IHeaderResponse response)
renderHead in interface IHeaderContributorrenderHead in class AbstractBehaviorIHeaderContributor.renderHead(org.apache.wicket.markup.html.IHeaderResponse)protected boolean alignWithIcon()
protected void appendToInit(java.lang.String markupId,
java.lang.String javascriptId,
java.lang.String javascriptWidgetId,
java.lang.StringBuffer b)
getAdditionalJavascript() is good enough of a replacement. To be removed
in 1.4 and up.
markupId - The markup id of the calendar componentjavascriptId - the non-name spaced javascript id of the widgetjavascriptWidgetId - the name space id of the widgetb - the buffer to append the script toprotected void configure(java.util.Map widgetProperties)
super#setWidgetProperties(Properties) first. If you don't call that, be aware that you will
have to call localize(Map) manually if you like localized strings to be added.
widgetProperties - the current widget propertiesprotected final void configureWidgetProperties(java.util.Map widgetProperties)
configure(Map) instead.
protected final java.lang.String[] filterEmpty(java.lang.String[] array)
DateFormatSymbols returning arrays with
empty elements).
array - array to filter
protected final java.lang.String getComponentMarkupId()
protected java.lang.String getDatePattern()
protected final java.lang.String getEscapedComponentMarkupId()
protected final java.lang.String getIconId()
protected java.lang.String getIconStyle()
protected java.lang.CharSequence getIconUrl()
protected java.util.Locale getLocale()
protected void localize(java.util.Map widgetProperties)
DateFormatSymbols and some slight string manupilation to get the strings for months
and week days. Also, the first week day is set according to the Locale returned by
getLocale(). It should work well for most locales.
This method is called from configureWidgetProperties(Map) and can be overridden if
you want to customize setting up the localized strings but are happy with the rest of
configureWidgetProperties(Map)'s behavior. Note that you can call (overridable)
method getLocale() to get the locale that should be used for setting up the widget.
See YUI Calendar's German and Japanese examples for more info.
widgetProperties - the current widget propertiesprotected boolean notifyComponentOnDateSelected()
AjaxEventBehavior to that component to get a call back to the server. The
default is true.
protected final java.lang.String[] substring(java.lang.String[] array,
int len)
array - array to copy fromlen - size of substring for each element to copy
protected boolean enableMonthYearSelection()
true if select boxes should be rendered to allow month and year
selection.false to render just plain text.protected boolean hideOnSelect()
true (default) if the calendar should be hidden after the date selection false if the calendar should remain visible after the date selection.protected boolean renderOnLoad()
true if the calendar should be rendered after it has been loaded.false (default) if it's initially hidden.protected java.lang.String getAdditionalJavascript()
${calendar} in
your code.
protected String getAdditionalJavascript()
{
return "${calendar}.addRenderer(\"10/3\", ${calendar}.renderCellStyleHighlight1);";
}
public boolean isEnabled(Component component)
isEnabled in interface IBehaviorisEnabled in class AbstractBehaviorAbstractBehavior.isEnabled(org.apache.wicket.Component)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||