Class GroupedDropDownChoice<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>
-
- org.apache.wicket.markup.html.form.GroupedDropDownChoice<T>
-
- Type Parameters:
T
- The model object type
- All Implemented Interfaces:
Serializable
,Iterable<Component>
,IEventSink
,IEventSource
,IFeedbackContributor
,IConverterLocator
,IGenericComponent<T,FormComponent<T>>
,IMetadataContext<Serializable,Component>
,IFormModelUpdateListener
,IFormVisitorParticipant
,ILabelProvider<String>
,IHeaderContributor
,IRequestableComponent
,IHierarchical<Component>
,IClusterable
public abstract class GroupedDropDownChoice<T> extends DropDownChoice<T>
Convenience class for generating dropdown choices with option groups.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.wicket.markup.html.form.AbstractChoice
AbstractChoice.LabelPosition
-
-
Field Summary
-
Fields inherited from class org.apache.wicket.markup.html.form.FormComponent
FLAG_CONVERT_EMPTY_INPUT_STRING_TO_NULL, VALUE_SEPARATOR
-
Fields inherited from class org.apache.wicket.Component
ENABLE, FLAG_INITIALIZED, FLAG_RESERVED1, FLAG_RESERVED2, FLAG_RESERVED3, FLAG_RESERVED4, FLAG_RESERVED5, FLAG_RESERVED8, PARENT_PATH, PATH_SEPARATOR, RENDER, RFLAG_CONTAINER_DEQUEING, RFLAG_CONTAINER_HAS_REMOVALS
-
-
Constructor Summary
Constructors Constructor Description GroupedDropDownChoice(String id)
GroupedDropDownChoice(String id, List<? extends T> choices)
GroupedDropDownChoice(String id, List<? extends T> choices, IChoiceRenderer<? super T> renderer)
GroupedDropDownChoice(String id, IModel<? extends List<? extends T>> choices)
GroupedDropDownChoice(String id, IModel<? extends List<? extends T>> choices, IChoiceRenderer<? super T> renderer)
GroupedDropDownChoice(String id, IModel<T> model, List<? extends T> choices)
GroupedDropDownChoice(String id, IModel<T> model, List<? extends T> choices, IChoiceRenderer<? super T> renderer)
GroupedDropDownChoice(String id, IModel<T> model, IModel<? extends List<? extends T>> choices)
GroupedDropDownChoice(String id, IModel<T> model, IModel<? extends List<? extends T>> choices, IChoiceRenderer<? super T> renderer)
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected void
appendOptionHtml(AppendingStringBuffer buffer, T choice, int index, String selected)
Generates and appends html for a single choice into the provided bufferprotected abstract IModel<String>
getGroupLabel(T current)
protected abstract boolean
hasNoGroup(T current)
Determines if current entry belongs to no groupprotected abstract boolean
isNewGroup(T previous, T current)
Determines if a new group has started-
Methods inherited from class org.apache.wicket.markup.html.form.DropDownChoice
onComponentTag
-
Methods inherited from class org.apache.wicket.markup.html.form.AbstractSingleSelectChoice
convertChoiceIdToChoice, convertValue, getDefaultChoice, getModelValue, getNullKey, getNullKeyDisplayValue, getNullValidDisplayValue, getNullValidKey, isNullValid, isSelected, setNullValid
-
Methods inherited from class org.apache.wicket.markup.html.form.AbstractChoice
detachModel, escapeOptionHtml, getChoiceRenderer, getChoices, getChoicesModel, isDisabled, localizeDisplayValues, onComponentTagBody, onDetach, setChoiceRenderer, setChoices, setChoices, setOptionAttributes, setType
-
Methods inherited from class org.apache.wicket.markup.html.form.FormComponent
add, add, checkRequired, clearInput, convertInput, error, getConvertedInput, getDefaultLabel, getDefaultLabel, getForm, getInput, getInputAsArray, getInputName, getParameterValues, getRawInput, getType, getValidatorKeyPrefix, getValidators, getValue, hasRawInput, inputAsInt, inputAsInt, inputAsIntArray, inputChanged, internalOnModelChanged, invalid, isInputNullable, isMultiPart, isRequired, isValid, newValidatable, newValidationError, onBeforeRender, onDisabled, onInvalid, onValid, processChildren, processInput, remove, reportRequiredError, setConvertedInput, setLabel, setModelValue, setRequired, shouldTrimInput, trim, updateAutoLabels, updateAutoLabels, updateCollectionModel, updateModel, valid, validate, validateRequired, validateValidators, visitComponentsPostOrder, visitFormComponentsPostOrder
-
Methods inherited from class org.apache.wicket.markup.html.form.LabeledWebMarkupContainer
getLabel
-
Methods inherited from class org.apache.wicket.markup.html.WebMarkupContainer
getWebApplication, getWebPage, getWebRequest, getWebResponse, getWebSession
-
Methods inherited from class org.apache.wicket.MarkupContainer
add, addDequeuedComponent, addOrReplace, autoAdd, canDequeueTag, contains, dequeue, dequeue, dequeuePreamble, findChildComponent, findComponentToDequeue, get, getAssociatedMarkup, getAssociatedMarkupStream, getMarkup, getMarkupType, getRegionMarkup, internalAdd, internalInitialize, iterator, iterator, newDequeueContext, onInitialize, onRender, queue, remove, remove, removeAll, renderAll, renderAssociatedMarkup, renderAssociatedMarkup, renderNext, replace, setDefaultModel, size, stream, streamChildren, toString, toString, visitChildren, visitChildren
-
Methods inherited from class org.apache.wicket.Component
add, addStateChange, beforeRender, canCallListener, canCallListenerAfterExpiry, checkComponentTag, checkComponentTagAttribute, checkHierarchyChange, clearOriginalDestination, configure, continueToOriginalDestination, createConverter, debug, detach, detachModels, determineVisibility, error, exceptionMessage, fatal, findMarkupStream, findPage, findParent, findParentWithAssociatedMarkup, getAjaxRegionMarkupId, getApplication, getBehaviorById, getBehaviorId, getBehaviors, getBehaviors, getClassRelativePath, getConverter, getDefaultModel, getDefaultModelObject, getDefaultModelObjectAsString, getDefaultModelObjectAsString, getEscapeModelStrings, getFeedbackMessages, getFlag, getId, getInnermostModel, getInnermostModel, getLocale, getLocalizer, getMarkup, getMarkupAttributes, getMarkupId, getMarkupId, getMarkupIdFromMarkup, getMarkupIdImpl, getMarkupSourcingStrategy, getMarkupTag, getMetaData, getModelComparator, getOutputMarkupId, getOutputMarkupPlaceholderTag, getPage, getPageRelativePath, getParent, getPath, getRenderBodyOnly, getRequest, getRequestCycle, getRequestFlag, getResponse, getSession, getSizeInBytes, getStatelessHint, getString, getString, getString, getStyle, getVariation, hasBeenRendered, hasErrorMessage, hasFeedbackMessage, info, initModel, internalRenderComponent, internalRenderHead, isActionAuthorized, isAuto, isBehaviorAccepted, isEnableAllowed, isEnabled, isEnabledInHierarchy, isIgnoreAttributeModifier, isInitialized, isRenderAllowed, isRendering, isStateless, isVersioned, isVisibilityAllowed, isVisible, isVisibleInHierarchy, markRendering, modelChanged, modelChanging, newMarkupSourcingStrategy, onAfterRender, onConfigure, onEvent, onModelChanged, onModelChanging, onReAdd, onRemove, redirectToInterceptPage, remove, remove, render, renderComponentTag, rendered, renderHead, renderPart, renderPlaceholderTag, replaceComponentTagBody, replaceWith, sameInnermostModel, sameInnermostModel, send, setAuto, setDefaultModelObject, setEnabled, setEscapeModelStrings, setFlag, setIgnoreAttributeModifier, setMarkup, setMarkupId, setMarkupIdImpl, setMetaData, setOutputMarkupId, setOutputMarkupPlaceholderTag, setParent, setRenderBodyOnly, setResponsePage, setResponsePage, setResponsePage, setVersioned, setVisibilityAllowed, setVisible, success, urlFor, urlFor, urlFor, urlForListener, urlForListener, visitParents, visitParents, warn, wrap
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.wicket.IGenericComponent
getDefaultModel, getDefaultModelObject, getModel, getModelObject, setDefaultModel, setDefaultModelObject, setModel, setModelObject
-
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
-
-
-
Constructor Detail
-
GroupedDropDownChoice
public GroupedDropDownChoice(String id)
-
GroupedDropDownChoice
public GroupedDropDownChoice(String id, List<? extends T> choices)
-
GroupedDropDownChoice
public GroupedDropDownChoice(String id, List<? extends T> choices, IChoiceRenderer<? super T> renderer)
-
GroupedDropDownChoice
public GroupedDropDownChoice(String id, IModel<T> model, List<? extends T> choices)
-
GroupedDropDownChoice
public GroupedDropDownChoice(String id, IModel<T> model, List<? extends T> choices, IChoiceRenderer<? super T> renderer)
-
GroupedDropDownChoice
public GroupedDropDownChoice(String id, IModel<? extends List<? extends T>> choices)
-
GroupedDropDownChoice
public GroupedDropDownChoice(String id, IModel<T> model, IModel<? extends List<? extends T>> choices)
-
GroupedDropDownChoice
public GroupedDropDownChoice(String id, IModel<? extends List<? extends T>> choices, IChoiceRenderer<? super T> renderer)
-
GroupedDropDownChoice
public GroupedDropDownChoice(String id, IModel<T> model, IModel<? extends List<? extends T>> choices, IChoiceRenderer<? super T> renderer)
-
-
Method Detail
-
isNewGroup
protected abstract boolean isNewGroup(T previous, T current)
Determines if a new group has started- Parameters:
previous
- The previous entry (it can be null)current
- The current entry (always non-null)- Returns:
- if a new group has started
-
hasNoGroup
protected abstract boolean hasNoGroup(T current)
Determines if current entry belongs to no group- Parameters:
current
- The current entry- Returns:
- true if the current entry belongs to no group.
-
getGroupLabel
protected abstract IModel<String> getGroupLabel(T current)
- Parameters:
current
- The current entry- Returns:
- Returns the label for current group.
-
appendOptionHtml
protected void appendOptionHtml(AppendingStringBuffer buffer, T choice, int index, String selected)
Description copied from class:AbstractChoice
Generates and appends html for a single choice into the provided buffer- Overrides:
appendOptionHtml
in classAbstractChoice<T,T>
- Parameters:
buffer
- Appending string buffer that will have the generated html appendedchoice
- Choice objectindex
- The index of this optionselected
- The currently selected string value
-
-