Class AutoCompleteTextField<T extends Serializable>

  • Type Parameters:
    T - the type of the model object
    All Implemented Interfaces:
    com.googlecode.wicket.jquery.core.IJQueryWidget, IAutoCompleteListener, Serializable, Iterable<org.apache.wicket.Component>, org.apache.wicket.event.IEventSink, org.apache.wicket.event.IEventSource, org.apache.wicket.feedback.IFeedbackContributor, org.apache.wicket.IConverterLocator, org.apache.wicket.IGenericComponent<T,​org.apache.wicket.markup.html.form.FormComponent<T>>, org.apache.wicket.IMetadataContext<Serializable,​org.apache.wicket.Component>, org.apache.wicket.markup.html.form.IFormModelUpdateListener, org.apache.wicket.markup.html.form.IFormVisitorParticipant, org.apache.wicket.markup.html.form.ILabelProvider<String>, org.apache.wicket.markup.html.IHeaderContributor, org.apache.wicket.request.component.IRequestableComponent, org.apache.wicket.util.IHierarchical<org.apache.wicket.Component>, org.apache.wicket.util.io.IClusterable

    public abstract class AutoCompleteTextField<T extends Serializable>
    extends org.apache.wicket.markup.html.form.TextField<T>
    implements com.googlecode.wicket.jquery.core.IJQueryWidget, IAutoCompleteListener
    Provides a jQuery auto-complete widget
    Author:
    Sebastien Briquet - sebfz1
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class org.apache.wicket.markup.html.form.AbstractTextComponent

        org.apache.wicket.markup.html.form.AbstractTextComponent.ITextFormatProvider
      • Nested classes/interfaces inherited from interface com.googlecode.wicket.jquery.core.IJQueryWidget

        com.googlecode.wicket.jquery.core.IJQueryWidget.JQueryWidget
    • 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
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      protected abstract List<T> getChoices​(String input)
      Gets choices matching the provided input
      <C> org.apache.wicket.util.convert.IConverter<C> getConverter​(Class<C> type)  
      protected String getModelValue()  
      com.googlecode.wicket.jquery.core.renderer.ITextRenderer<? super T> getRenderer()
      Gets the ITextRenderer
      String getTemplateToken()
      Gets the template script token/id
      protected com.googlecode.wicket.jquery.core.template.IJQueryTemplate newTemplate()
      Gets a new IJQueryTemplate to customize the rendering
      The IJQueryTemplate.getText() should return a template text of the form "<a>...</a>".
      The properties used in the template text (ie: ${name}) should be identified in the list returned by IJQueryTemplate.getTextProperties()
      com.googlecode.wicket.jquery.core.JQueryBehavior newWidgetBehavior​(String selector)  
      void onBeforeRender​(com.googlecode.wicket.jquery.core.JQueryBehavior behavior)  
      protected void onComponentTag​(org.apache.wicket.markup.ComponentTag tag)  
      void onConfigure​(com.googlecode.wicket.jquery.core.JQueryBehavior behavior)  
      protected void onInitialize()  
      void onSelect​(org.apache.wicket.ajax.AjaxRequestTarget target, int index)
      Triggered when a selection has been made
      protected void onSelected​(org.apache.wicket.ajax.AjaxRequestTarget target)
      Triggered when the user selects an item from results that matched its input
      • Methods inherited from class org.apache.wicket.markup.html.form.TextField

        getInputTypes
      • Methods inherited from class org.apache.wicket.markup.html.form.AbstractTextComponent

        convertInput, getConvertEmptyInputStringToNull, isInputNullable, onBeforeRender, setConvertEmptyInputStringToNull
      • Methods inherited from class org.apache.wicket.markup.html.form.FormComponent

        add, add, checkRequired, clearInput, convertValue, error, getConvertedInput, getDefaultLabel, getDefaultLabel, getForm, getInput, getInputAsArray, getInputName, getParameterValues, getRawInput, getType, getValidatorKeyPrefix, getValidators, getValue, hasRawInput, inputAsInt, inputAsInt, inputAsIntArray, inputChanged, internalOnModelChanged, invalid, isMultiPart, isRequired, isValid, newValidatable, newValidationError, onDetach, onDisabled, onInvalid, onValid, processChildren, processInput, remove, reportRequiredError, setConvertedInput, setLabel, setModelValue, setRequired, setType, shouldTrimInput, trim, 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, onComponentTagBody, onRender, queue, remove, remove, removeAll, renderAll, 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, detachModel, detachModels, determineVisibility, error, exceptionMessage, fatal, findMarkupStream, findPage, findParent, findParentWithAssociatedMarkup, getAjaxRegionMarkupId, getApplication, getBehaviorById, getBehaviorId, getBehaviors, getBehaviors, getClassRelativePath, 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 interface org.apache.wicket.IGenericComponent

        getDefaultModel, getDefaultModelObject, getModel, getModelObject, setDefaultModel, setDefaultModelObject, setModel, setModelObject
    • Constructor Detail

      • AutoCompleteTextField

        public AutoCompleteTextField​(String id)
        Constructor
        Parameters:
        id - the markup id
      • AutoCompleteTextField

        public AutoCompleteTextField​(String id,
                                     Class<T> type)
        Constructor
        Parameters:
        id - the markup id
        type - the type of the bean. This parameter should be supplied for the internal converter (getConverter(Class)) to be used.
      • AutoCompleteTextField

        public AutoCompleteTextField​(String id,
                                     com.googlecode.wicket.jquery.core.renderer.ITextRenderer<? super T> renderer)
        Constructor
        Parameters:
        id - the markup id
        renderer - the ITextRenderer
      • AutoCompleteTextField

        public AutoCompleteTextField​(String id,
                                     com.googlecode.wicket.jquery.core.renderer.ITextRenderer<? super T> renderer,
                                     Class<T> type)
        Constructor
        Parameters:
        id - the markup id
        renderer - the ITextRenderer
        type - the type of the bean. This parameter should be supplied for the internal converter (getConverter(Class)) to be used.
      • AutoCompleteTextField

        public AutoCompleteTextField​(String id,
                                     org.apache.wicket.model.IModel<T> model)
        Constructor
        Parameters:
        id - the markup id
        model - the IModel
      • AutoCompleteTextField

        public AutoCompleteTextField​(String id,
                                     org.apache.wicket.model.IModel<T> model,
                                     Class<T> type)
        Constructor
        Parameters:
        id - the markup id
        model - the IModel
        type - the type of the bean. This parameter should be supplied for the internal converter (getConverter(Class)) to be used.
      • AutoCompleteTextField

        public AutoCompleteTextField​(String id,
                                     org.apache.wicket.model.IModel<T> model,
                                     com.googlecode.wicket.jquery.core.renderer.ITextRenderer<? super T> renderer)
        Constructor
        Parameters:
        id - the markup id
        model - the IModel
        renderer - the ITextRenderer
      • AutoCompleteTextField

        public AutoCompleteTextField​(String id,
                                     org.apache.wicket.model.IModel<T> model,
                                     com.googlecode.wicket.jquery.core.renderer.ITextRenderer<? super T> renderer,
                                     Class<T> type)
        Constructor
        Parameters:
        id - the markup id
        model - the IModel
        renderer - the ITextRenderer
        type - the type of the bean. This parameter should be supplied for the internal converter (getConverter(Class)) to be used.
    • Method Detail

      • getChoices

        protected abstract List<T> getChoices​(String input)
        Gets choices matching the provided input
        Parameters:
        input - String that represent the query
        Returns:
        the list of choices
      • getModelValue

        protected final String getModelValue()
        Overrides:
        getModelValue in class org.apache.wicket.markup.html.form.FormComponent<T extends Serializable>
      • getConverter

        public <C> org.apache.wicket.util.convert.IConverter<C> getConverter​(Class<C> type)
        Specified by:
        getConverter in interface org.apache.wicket.IConverterLocator
        Overrides:
        getConverter in class org.apache.wicket.Component
      • getTemplateToken

        public String getTemplateToken()
        Gets the template script token/id
        Returns:
        the template script token/id
      • getRenderer

        public com.googlecode.wicket.jquery.core.renderer.ITextRenderer<? super T> getRenderer()
        Gets the ITextRenderer
        Returns:
        the ITextRenderer
      • onInitialize

        protected void onInitialize()
        Overrides:
        onInitialize in class org.apache.wicket.MarkupContainer
      • onConfigure

        public void onConfigure​(com.googlecode.wicket.jquery.core.JQueryBehavior behavior)
        Specified by:
        onConfigure in interface com.googlecode.wicket.jquery.core.IJQueryWidget
      • onBeforeRender

        public void onBeforeRender​(com.googlecode.wicket.jquery.core.JQueryBehavior behavior)
        Specified by:
        onBeforeRender in interface com.googlecode.wicket.jquery.core.IJQueryWidget
      • onComponentTag

        protected void onComponentTag​(org.apache.wicket.markup.ComponentTag tag)
        Overrides:
        onComponentTag in class org.apache.wicket.markup.html.form.TextField<T extends Serializable>
      • onSelect

        public final void onSelect​(org.apache.wicket.ajax.AjaxRequestTarget target,
                                   int index)
        Description copied from interface: IAutoCompleteListener
        Triggered when a selection has been made
        Specified by:
        onSelect in interface IAutoCompleteListener
        Parameters:
        target - the AjaxRequestTarget
        index - the index of the selected item
      • onSelected

        protected void onSelected​(org.apache.wicket.ajax.AjaxRequestTarget target)
        Triggered when the user selects an item from results that matched its input
        Parameters:
        target - the AjaxRequestTarget
      • newWidgetBehavior

        public com.googlecode.wicket.jquery.core.JQueryBehavior newWidgetBehavior​(String selector)
        Specified by:
        newWidgetBehavior in interface com.googlecode.wicket.jquery.core.IJQueryWidget
      • newTemplate

        protected com.googlecode.wicket.jquery.core.template.IJQueryTemplate newTemplate()
        Gets a new IJQueryTemplate to customize the rendering
        The IJQueryTemplate.getText() should return a template text of the form "<a>...</a>".
        The properties used in the template text (ie: ${name}) should be identified in the list returned by IJQueryTemplate.getTextProperties()
        Returns:
        null by default