Author: jdonnerstag
Date: Thu Jun 23 10:58:45 2011
New Revision: 1138826

URL: http://svn.apache.org/viewvc?rev=1138826&view=rev
Log:
fixed: Make showing of empty list in AutoComplete configurable
Issue: WICKET-3066

Modified:
    
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AbstractAutoCompleteBehavior.java
    
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AbstractAutoCompleteRenderer.java
    
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AbstractAutoCompleteTextRenderer.java
    
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AutoCompleteBehavior.java
    
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AutoCompleteSettings.java
    
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AutoCompleteTextField.java
    
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/DefaultCssAutoCompleteTextField.java
    
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/IAutoCompleteRenderer.java
    
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/StringAutoCompleteRenderer.java

Modified: 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AbstractAutoCompleteBehavior.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AbstractAutoCompleteBehavior.java?rev=1138826&r1=1138825&r2=1138826&view=diff
==============================================================================
--- 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AbstractAutoCompleteBehavior.java
 (original)
+++ 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AbstractAutoCompleteBehavior.java
 Thu Jun 23 10:58:45 2011
@@ -63,9 +63,6 @@ public abstract class AbstractAutoComple
                this.settings = settings;
        }
 
-       /**
-        * @see 
org.apache.wicket.ajax.AbstractDefaultAjaxBehavior#renderHead(org.apache.wicket.markup.html.IHeaderResponse)
-        */
        @Override
        public void renderHead(final Component component, final IHeaderResponse 
response)
        {
@@ -98,6 +95,10 @@ public abstract class AbstractAutoComple
                response.renderOnDomReadyJavaScript(initJS);
        }
 
+       /**
+        * 
+        * @return JS settings
+        */
        protected final String constructSettingsJS()
        {
                final StringBuilder sb = new StringBuilder();
@@ -119,9 +120,6 @@ public abstract class AbstractAutoComple
                return sb.toString();
        }
 
-       /**
-        * @see org.apache.wicket.ajax.AbstractDefaultAjaxBehavior#onBind()
-        */
        @Override
        protected void onBind()
        {
@@ -150,9 +148,6 @@ public abstract class AbstractAutoComple
         */
        protected abstract void onRequest(String input, RequestCycle 
requestCycle);
 
-       /**
-        * @see 
org.apache.wicket.ajax.AbstractDefaultAjaxBehavior#respond(org.apache.wicket.ajax.AjaxRequestTarget)
-        */
        @Override
        protected void respond(final AjaxRequestTarget target)
        {
@@ -161,6 +156,7 @@ public abstract class AbstractAutoComple
                        .getRequestParameters()
                        .getParameterValue("q")
                        .toOptionalString();
+
                onRequest(val, requestCycle);
        }
 }

Modified: 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AbstractAutoCompleteRenderer.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AbstractAutoCompleteRenderer.java?rev=1138826&r1=1138825&r2=1138826&view=diff
==============================================================================
--- 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AbstractAutoCompleteRenderer.java
 (original)
+++ 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AbstractAutoCompleteRenderer.java
 Thu Jun 23 10:58:45 2011
@@ -28,20 +28,11 @@ import org.apache.wicket.request.Respons
  * @since 1.2
  * 
  * @author Igor Vaynberg (ivaynberg)
- * 
  */
 public abstract class AbstractAutoCompleteRenderer<T> implements 
IAutoCompleteRenderer<T>
 {
-
-       /**
-        * 
-        */
        private static final long serialVersionUID = 1L;
 
-       /**
-        * @see 
org.apache.wicket.extensions.ajax.markup.html.autocomplete.IAutoCompleteRenderer#render(java.lang.Object,
-        *      org.apache.wicket.request.Response, String)
-        */
        public final void render(final T object, final Response response, final 
String criteria)
        {
                String textValue = getTextValue(object);
@@ -64,19 +55,12 @@ public abstract class AbstractAutoComple
                response.write("</li>");
        }
 
-
-       /**
-        * @see 
org.apache.wicket.extensions.ajax.markup.html.autocomplete.IAutoCompleteRenderer#renderHeader(org.apache.wicket.request.Response)
-        */
        public final void renderHeader(final Response response)
        {
                response.write("<ul>");
        }
 
-       /**
-        * @see 
org.apache.wicket.extensions.ajax.markup.html.autocomplete.IAutoCompleteRenderer#renderFooter(org.apache.wicket.request.Response)
-        */
-       public final void renderFooter(final Response response)
+       public final void renderFooter(final Response response, int count)
        {
                response.write("</ul>");
        }

Modified: 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AbstractAutoCompleteTextRenderer.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AbstractAutoCompleteTextRenderer.java?rev=1138826&r1=1138825&r2=1138826&view=diff
==============================================================================
--- 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AbstractAutoCompleteTextRenderer.java
 (original)
+++ 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AbstractAutoCompleteTextRenderer.java
 Thu Jun 23 10:58:45 2011
@@ -25,19 +25,14 @@ import org.apache.wicket.request.Respons
  * 
  * @author Igor Vaynberg (ivaynberg)
  * @param <T>
- * 
  */
 public abstract class AbstractAutoCompleteTextRenderer<T> extends 
AbstractAutoCompleteRenderer<T>
 {
        private static final long serialVersionUID = 1L;
 
-       /**
-        * @see AbstractAutoCompleteRenderer#renderChoice(Object, Response, 
String)
-        */
        @Override
        protected void renderChoice(final T object, final Response response, 
final String criteria)
        {
                response.write(getTextValue(object));
        }
-
 }

Modified: 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AutoCompleteBehavior.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AutoCompleteBehavior.java?rev=1138826&r1=1138825&r2=1138826&view=diff
==============================================================================
--- 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AutoCompleteBehavior.java
 (original)
+++ 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AutoCompleteBehavior.java
 Thu Jun 23 10:58:45 2011
@@ -23,6 +23,7 @@ import org.apache.wicket.request.IReques
 import org.apache.wicket.request.IRequestHandler;
 import org.apache.wicket.request.cycle.RequestCycle;
 import org.apache.wicket.request.http.WebResponse;
+import org.apache.wicket.util.lang.Args;
 
 
 /**
@@ -55,7 +56,6 @@ public abstract class AutoCompleteBehavi
                this(renderer, false);
        }
 
-
        /**
         * Constructor
         * 
@@ -81,48 +81,44 @@ public abstract class AutoCompleteBehavi
                final AutoCompleteSettings settings)
        {
                super(settings);
-               if (renderer == null)
-               {
-                       throw new IllegalArgumentException("renderer cannot be 
null");
-               }
-               this.renderer = renderer;
-       }
 
+               this.renderer = Args.notNull(renderer, "renderer");
+       }
 
        @Override
        protected final void onRequest(final String val, final RequestCycle 
requestCycle)
        {
                IRequestHandler target = new IRequestHandler()
                {
-
                        public void respond(final IRequestCycle requestCycle)
                        {
-
                                WebResponse r = 
(WebResponse)requestCycle.getResponse();
 
                                // Determine encoding
                                final String encoding = Application.get()
                                        .getRequestCycleSettings()
                                        .getResponseRequestEncoding();
-                               r.setContentType("text/xml; charset=" + 
encoding);
 
+                               r.setContentType("text/xml; charset=" + 
encoding);
                                r.disableCaching();
 
                                Iterator<T> comps = getChoices(val);
+                               int count = 0;
                                renderer.renderHeader(r);
                                while (comps.hasNext())
                                {
                                        final T comp = comps.next();
                                        renderer.render(comp, r, val);
+                                       count += 1;
                                }
-                               renderer.renderFooter(r);
+                               renderer.renderFooter(r, count);
                        }
 
                        public void detach(final IRequestCycle requestCycle)
                        {
                        }
-
                };
+
                requestCycle.scheduleRequestHandlerAfterCurrent(target);
        }
 
@@ -136,4 +132,4 @@ public abstract class AutoCompleteBehavi
         * @return iterator over all possible choice objects
         */
        protected abstract Iterator<T> getChoices(String input);
-}
+}
\ No newline at end of file

Modified: 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AutoCompleteSettings.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AutoCompleteSettings.java?rev=1138826&r1=1138825&r2=1138826&view=diff
==============================================================================
--- 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AutoCompleteSettings.java
 (original)
+++ 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AutoCompleteSettings.java
 Thu Jun 23 10:58:45 2011
@@ -334,5 +334,4 @@ public final class AutoCompleteSettings 
                this.useHideShowCoveredIEFix = useHideShowCoveredIEFix;
                return this;
        }
-
 }

Modified: 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AutoCompleteTextField.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AutoCompleteTextField.java?rev=1138826&r1=1138825&r2=1138826&view=diff
==============================================================================
--- 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AutoCompleteTextField.java
 (original)
+++ 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/AutoCompleteTextField.java
 Thu Jun 23 10:58:45 2011
@@ -44,7 +44,6 @@ import org.apache.wicket.model.IModel;
  */
 public abstract class AutoCompleteTextField<T> extends TextField<T>
 {
-
        private static final long serialVersionUID = 1L;
 
        /** auto complete behavior attached to this textfield */
@@ -56,7 +55,6 @@ public abstract class AutoCompleteTextFi
        /** settings */
        private final AutoCompleteSettings settings;
 
-
        /**
         * @param id
         * @param type
@@ -125,7 +123,6 @@ public abstract class AutoCompleteTextFi
                this(id, object, null, settings);
        }
 
-
        /**
         * @param id
         * @param object
@@ -156,7 +153,6 @@ public abstract class AutoCompleteTextFi
        public AutoCompleteTextField(final String id, final 
AutoCompleteSettings settings)
        {
                this(id, null, settings);
-
        }
 
        /**
@@ -165,7 +161,6 @@ public abstract class AutoCompleteTextFi
        public AutoCompleteTextField(final String id)
        {
                this(id, null, new AutoCompleteSettings());
-
        }
 
        /**
@@ -232,7 +227,6 @@ public abstract class AutoCompleteTextFi
                this.settings = settings;
        }
 
-
        /**
         * Factory method for autocomplete behavior that will be added to this 
textfield
         * 
@@ -270,7 +264,6 @@ public abstract class AutoCompleteTextFi
                super.onBeforeRender();
        }
 
-       /** {@inheritDoc} */
        @Override
        protected void onComponentTag(final ComponentTag tag)
        {

Modified: 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/DefaultCssAutoCompleteTextField.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/DefaultCssAutoCompleteTextField.java?rev=1138826&r1=1138825&r2=1138826&view=diff
==============================================================================
--- 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/DefaultCssAutoCompleteTextField.java
 (original)
+++ 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/DefaultCssAutoCompleteTextField.java
 Thu Jun 23 10:58:45 2011
@@ -52,5 +52,4 @@ public abstract class DefaultCssAutoComp
                response.renderCSSReference(new PackageResourceReference(
                        DefaultCssAutoCompleteTextField.class, 
"DefaultCssAutoCompleteTextField.css"));
        }
-
 }

Modified: 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/IAutoCompleteRenderer.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/IAutoCompleteRenderer.java?rev=1138826&r1=1138825&r2=1138826&view=diff
==============================================================================
--- 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/IAutoCompleteRenderer.java
 (original)
+++ 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/IAutoCompleteRenderer.java
 Thu Jun 23 10:58:45 2011
@@ -89,7 +89,9 @@ public interface IAutoCompleteRenderer<T
         * calling {@link Response#write(CharSequence)}.
         * 
         * @param response
+        * @param count
+        *            The number of choices rendered
         */
-       void renderFooter(Response response);
+       void renderFooter(Response response, int count);
 
 }

Modified: 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/StringAutoCompleteRenderer.java
URL: 
http://svn.apache.org/viewvc/wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/StringAutoCompleteRenderer.java?rev=1138826&r1=1138825&r2=1138826&view=diff
==============================================================================
--- 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/StringAutoCompleteRenderer.java
 (original)
+++ 
wicket/trunk/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/autocomplete/StringAutoCompleteRenderer.java
 Thu Jun 23 10:58:45 2011
@@ -44,9 +44,6 @@ public final class StringAutoCompleteRen
                return INSTANCE;
        }
 
-       /**
-        * @see AbstractAutoCompleteTextRenderer#getTextValue(Object)
-        */
        @Override
        protected String getTextValue(final Object object)
        {


Reply via email to