org.apache.wicket.markup.html.form
Class DropDownChoice<T>
java.lang.Object
org.apache.wicket.Component
org.apache.wicket.MarkupContainer
org.apache.wicket.markup.html.WebMarkupContainer
org.apache.wicket.markup.html.form.LabeledWebMarkupContainer
org.apache.wicket.markup.html.form.FormComponent<T>
org.apache.wicket.markup.html.form.AbstractChoice<T,T>
org.apache.wicket.markup.html.form.AbstractSingleSelectChoice<T>
org.apache.wicket.markup.html.form.DropDownChoice<T>
- Type Parameters:
T
- The model object type
- All Implemented Interfaces:
- Serializable, IClusterable, IConverterLocator, IRequestListener, IFormModelUpdateListener, IFormVisitorParticipant, ILabelProvider<String>, IOnChangeListener
- Direct Known Subclasses:
- ListChoice
public class DropDownChoice<T>
- extends AbstractSingleSelectChoice<T>
- implements IOnChangeListener
A choice implemented as a dropdown menu/list.
Java:
List SITES = Arrays.asList(new String[] { "The Server Side", "Java Lobby", "Java.Net" });
// Add a dropdown choice component that uses Input's 'site' property to designate the
// current selection, and that uses the SITES list for the available options.
// Note that when the selection is null, Wicket will lookup a localized string to
// represent this null with key: "id + '.null'". In this case, this is 'site.null'
// which can be found in DropDownChoicePage.properties
form.add(new DropDownChoice("site", SITES));
HTML:
<select wicket:id="site">
<option>site 1</option>
<option>site 2</option>
</select>
You can can extend this class and override method wantOnSelectionChangedNotifications() to force
server roundtrips on each selection change.
- Author:
- Jonathan Locke, Eelco Hillenius, Johan Compagner
- See Also:
- Serialized Form
Fields inherited from class org.apache.wicket.Component |
ENABLE, FLAG_CONFIGURED, FLAG_INITIALIZED, FLAG_REMOVING_FROM_HIERARCHY, FLAG_RESERVED1, FLAG_RESERVED2, FLAG_RESERVED3, FLAG_RESERVED4, FLAG_RESERVED5, FLAG_RESERVED6, FLAG_RESERVED7, FLAG_RESERVED8, PARENT_PATH, PATH_SEPARATOR, RENDER |
Constructor Summary |
DropDownChoice(String id)
|
DropDownChoice(String id,
IModel<? extends List<? extends T>> choices)
|
DropDownChoice(String id,
IModel<? extends List<? extends T>> choices,
IChoiceRenderer<? super T> renderer)
|
DropDownChoice(String id,
IModel<T> model,
IModel<? extends List<? extends T>> choices)
|
DropDownChoice(String id,
IModel<T> model,
IModel<? extends List<? extends T>> choices,
IChoiceRenderer<? super T> renderer)
|
DropDownChoice(String id,
IModel<T> model,
List<? extends T> choices)
|
DropDownChoice(String id,
IModel<T> model,
List<? extends T> data,
IChoiceRenderer<? super T> renderer)
|
DropDownChoice(String id,
List<? extends T> choices)
|
DropDownChoice(String id,
List<? extends T> data,
IChoiceRenderer<? super T> renderer)
|
Method Summary |
protected boolean |
getStatelessHint()
Returns whether the component can be stateless. |
protected void |
onComponentTag(ComponentTag tag)
Processes the component tag. |
void |
onSelectionChanged()
Called when a selection changes. |
protected void |
onSelectionChanged(T newSelection)
Template method that can be overridden by clients that implement IOnChangeListener to be
notified by onChange events of a select element. |
protected boolean |
wantOnSelectionChangedNotifications()
Whether this component's onSelectionChanged event handler should be called using javascript
window.location if the selection changes. |
Methods inherited from class org.apache.wicket.markup.html.form.AbstractChoice |
appendOptionHtml, detachModel, escapeOptionHtml, getChoiceRenderer, getChoices, isDisabled, localizeDisplayValues, onComponentTagBody, setChoiceRenderer, setChoices, setChoices, supportsPersistence |
Methods inherited from class org.apache.wicket.markup.html.form.FormComponent |
add, add, checkRequired, clearInput, convertInput, error, getConvertedInput, getDefaultLabel, getDefaultLabel, getForm, getInput, getInputAsArray, getInputName, getModel, getModelObject, getRawInput, getType, getValidatorKeyPrefix, getValidators, getValue, hasRawInput, inputAsInt, inputAsInt, inputAsIntArray, inputChanged, internalOnModelChanged, invalid, isInputNullable, isMultiPart, isPersistent, isRequired, isValid, newValidatable, onDetach, onDisabled, onInvalid, onValid, processChildren, processInput, setConvertedInput, setLabel, setModel, setModelObject, setModelValue, setModelValue, setPersistent, setRequired, setType, shouldTrimInput, trim, updateModel, valid, validate, validateRequired, validateValidators, visitComponentsPostOrder, visitFormComponentsPostOrder |
Methods inherited from class org.apache.wicket.MarkupContainer |
add, addOrReplace, autoAdd, autoAdd, contains, findMarkupStream, get, get, getAssociatedMarkupStream, getMarkupStream, hasAssociatedMarkup, internalAdd, isTransparentResolver, iterator, iterator, newMarkupResourceStream, onAfterRenderChildren, onRender, remove, remove, removeAll, renderAll, renderAssociatedMarkup, renderComponentTagBody, renderNext, replace, setDefaultModel, setMarkupStream, size, swap, toString, toString, visitChildren, visitChildren |
Methods inherited from class org.apache.wicket.Component |
add, addStateChange, afterRender, beforeRender, callOnBeforeRenderIfNotVisible, checkComponentTag, checkComponentTagAttribute, checkHierarchyChange, configure, continueToOriginalDestination, debug, detach, detachBehaviors, detachModels, determineVisibility, error, exceptionMessage, fatal, findPage, findParent, findParentWithAssociatedMarkup, getAjaxRegionMarkupId, getApplication, getBehaviors, getBehaviors, getBehaviorsRawList, getClassRelativePath, getComponentBorder, getConverter, getConverter, getDefaultModel, getDefaultModelObject, getDefaultModelObjectAsString, getDefaultModelObjectAsString, getEscapeModelStrings, getFeedbackMessage, getFlag, getFlag, getId, getInnermostModel, getInnermostModel, getLocale, getLocalizer, getMarkupAttributes, getMarkupId, getMarkupId, getMarkupIdImpl, getMetaData, getModelComparator, getOutputMarkupId, getOutputMarkupPlaceholderTag, getPage, getPageRelativePath, getParent, getPath, getRenderBodyOnly, getRequest, getRequestCycle, getResponse, getSession, getSizeInBytes, getString, getString, getString, getStyle, getVariation, hasBeenRendered, hasErrorMessage, hasFeedbackMessage, info, initModel, internalAttach, internalDetach, internalOnAttach, internalOnDetach, isActionAuthorized, isAncestorOf, isAttached, isBehaviorAccepted, isEnableAllowed, isEnabled, isEnabledInHierarchy, isIgnoreAttributeModifier, isRenderAllowed, isStateless, isVersioned, isVisibilityAllowed, isVisible, isVisibleInHierarchy, locateMarkupStream, markAttached, markRendering, modelChanged, modelChanging, onAfterRender, onAttach, onBeforeRender, onBeginRequest, onConfigure, onEndRequest, onInitialize, onModelChanged, onModelChanging, onRemove, prepareForRender, prepareForRender, redirectToInterceptPage, remove, remove, render, render, renderComponent, renderComponent, renderComponentTag, rendered, renderHead, renderPlaceholderTag, replaceComponentTagBody, replaceWith, sameInnermostModel, sameInnermostModel, setAuto, setComponentBorder, setDefaultModelObject, setEnabled, setEscapeModelStrings, setFlag, setFlag, setIgnoreAttributeModifier, setMarkupId, setMarkupIdImpl, setMetaData, setOutputMarkupId, setOutputMarkupPlaceholderTag, setRedirect, setRenderBodyOnly, setResponsePage, setResponsePage, setResponsePage, setVersioned, setVisibilityAllowed, setVisible, urlFor, urlFor, urlFor, urlFor, urlFor, urlFor, visitParents, warn, wrap |
DropDownChoice
public DropDownChoice(String id)
- See Also:
AbstractChoice.AbstractChoice(String)
DropDownChoice
public DropDownChoice(String id,
List<? extends T> choices)
- See Also:
AbstractChoice.AbstractChoice(String, List)
DropDownChoice
public DropDownChoice(String id,
List<? extends T> data,
IChoiceRenderer<? super T> renderer)
- See Also:
AbstractChoice.AbstractChoice(String,
List,IChoiceRenderer)
DropDownChoice
public DropDownChoice(String id,
IModel<T> model,
List<? extends T> choices)
- See Also:
AbstractChoice.AbstractChoice(String, IModel, List)
DropDownChoice
public DropDownChoice(String id,
IModel<T> model,
List<? extends T> data,
IChoiceRenderer<? super T> renderer)
- See Also:
AbstractChoice.AbstractChoice(String, IModel, List,
IChoiceRenderer)
DropDownChoice
public DropDownChoice(String id,
IModel<? extends List<? extends T>> choices)
- See Also:
AbstractChoice.AbstractChoice(String, IModel)
DropDownChoice
public DropDownChoice(String id,
IModel<T> model,
IModel<? extends List<? extends T>> choices)
- See Also:
AbstractChoice.AbstractChoice(String, IModel,IModel)
DropDownChoice
public DropDownChoice(String id,
IModel<? extends List<? extends T>> choices,
IChoiceRenderer<? super T> renderer)
- See Also:
AbstractChoice.AbstractChoice(String,
IModel,IChoiceRenderer)
DropDownChoice
public DropDownChoice(String id,
IModel<T> model,
IModel<? extends List<? extends T>> choices,
IChoiceRenderer<? super T> renderer)
- See Also:
AbstractChoice.AbstractChoice(String, IModel,
IModel,IChoiceRenderer)
onSelectionChanged
public final void onSelectionChanged()
- Called when a selection changes.
- Specified by:
onSelectionChanged
in interface IOnChangeListener
onComponentTag
protected void onComponentTag(ComponentTag tag)
- Processes the component tag.
- Overrides:
onComponentTag
in class FormComponent<T>
- Parameters:
tag
- Tag to modify- See Also:
Component.onComponentTag(org.apache.wicket.markup.ComponentTag)
onSelectionChanged
protected void onSelectionChanged(T newSelection)
- Template method that can be overridden by clients that implement IOnChangeListener to be
notified by onChange events of a select element. This method does nothing by default.
Called when a option is selected of a dropdown list that wants to be notified of this event.
This method is to be implemented by clients that want to be notified of selection events.
- Parameters:
newSelection
- The newly selected object of the backing model NOTE this is the same as you would
get by calling getModelObject() if the new selection were current
wantOnSelectionChangedNotifications
protected boolean wantOnSelectionChangedNotifications()
- Whether this component's onSelectionChanged event handler should be called using javascript
window.location if the selection changes. If true, a roundtrip will be generated
with each selection change, resulting in the model being updated (of just this component) and
onSelectionChanged being called. This method returns false by default. If you wish to use
Ajax instead, let
wantOnSelectionChangedNotifications()
return false and add an
AjaxFormComponentUpdatingBehavior
to the component using the onchange event.
- Returns:
- True if this component's onSelectionChanged event handler should called using
javascript if the selection changes
getStatelessHint
protected boolean getStatelessHint()
- Description copied from class:
Component
- Returns whether the component can be stateless. Also the component behaviors must be
stateless, otherwise the component will be treat as stateful. In order for page to be
stateless (and not to be stored in session), all components (and component behaviors) must be
stateless.
- Overrides:
getStatelessHint
in class Component
- Returns:
- whether the component can be stateless
- See Also:
Component.getStatelessHint()
Copyright © 2004-2011 Apache Software Foundation. All Rights Reserved.