WICKET-663 enhance ichoicerenderer with id->choice object lookup Remove IChoiceRenderer interface.
Project: http://git-wip-us.apache.org/repos/asf/wicket/repo Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/edce01ce Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/edce01ce Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/edce01ce Branch: refs/heads/sandbox/WICKET-4686 Commit: edce01ceb6980213504a5af8845c16c50280a2e2 Parents: e01153f Author: Martin Tzvetanov Grigorov <[email protected]> Authored: Fri Dec 20 14:19:41 2013 +0200 Committer: Martin Tzvetanov Grigorov <[email protected]> Committed: Fri Dec 20 14:19:41 2013 +0200 ---------------------------------------------------------------------- .../wicket/markup/html/form/AbstractChoice.java | 14 ++-- .../html/form/AbstractSingleSelectChoice.java | 10 +-- .../html/form/CheckBoxMultipleChoice.java | 16 ++--- .../wicket/markup/html/form/ChoiceRenderer.java | 44 ++++++++++-- .../wicket/markup/html/form/DropDownChoice.java | 10 +-- .../markup/html/form/IChoiceRenderer.java | 73 -------------------- .../wicket/markup/html/form/ListChoice.java | 20 +++--- .../markup/html/form/ListMultipleChoice.java | 16 ++--- .../wicket/markup/html/form/RadioChoice.java | 16 ++--- .../apache/wicket/util/tester/FormTester.java | 7 +- .../wicket/examples/compref/PalettePage.java | 5 +- .../markup/html/AjaxEditableChoiceLabel.java | 8 +-- .../markup/html/form/palette/Palette.java | 12 ++-- .../form/palette/component/AbstractOptions.java | 4 +- .../html/form/palette/component/Recorder.java | 8 +-- .../data/table/filter/ChoiceFilter.java | 7 +- .../filter/ChoiceFilteredPropertyColumn.java | 8 +-- .../html/form/palette/PaletteTestPage.java | 3 +- 18 files changed, 119 insertions(+), 162 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/wicket/blob/edce01ce/wicket-core/src/main/java/org/apache/wicket/markup/html/form/AbstractChoice.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/AbstractChoice.java b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/AbstractChoice.java index 8716eb5..a251ac2 100644 --- a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/AbstractChoice.java +++ b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/AbstractChoice.java @@ -54,7 +54,7 @@ public abstract class AbstractChoice<T, E> extends FormComponent<T> private IModel<? extends List<? extends E>> choices; /** The renderer used to generate display/id values for the objects. */ - private IChoiceRenderer<? super E> renderer; + private ChoiceRenderer<? super E> renderer; /** * Constructor. @@ -91,7 +91,7 @@ public abstract class AbstractChoice<T, E> extends FormComponent<T> * The collection of choices in the dropdown */ public AbstractChoice(final String id, final List<? extends E> choices, - final IChoiceRenderer<? super E> renderer) + final ChoiceRenderer<? super E> renderer) { this(id, new WildcardListModel<>(choices), renderer); } @@ -124,7 +124,7 @@ public abstract class AbstractChoice<T, E> extends FormComponent<T> * The rendering engine */ public AbstractChoice(final String id, IModel<T> model, final List<? extends E> choices, - final IChoiceRenderer<? super E> renderer) + final ChoiceRenderer<? super E> renderer) { this(id, model, new WildcardListModel<>(choices), renderer); } @@ -153,7 +153,7 @@ public abstract class AbstractChoice<T, E> extends FormComponent<T> * The collection of choices in the dropdown */ public AbstractChoice(final String id, final IModel<? extends List<? extends E>> choices, - final IChoiceRenderer<? super E> renderer) + final ChoiceRenderer<? super E> renderer) { super(id); this.choices = wrap(choices); @@ -189,7 +189,7 @@ public abstract class AbstractChoice<T, E> extends FormComponent<T> * The drop down choices */ public AbstractChoice(final String id, IModel<T> model, - final IModel<? extends List<? extends E>> choices, final IChoiceRenderer<? super E> renderer) + final IModel<? extends List<? extends E>> choices, final ChoiceRenderer<? super E> renderer) { super(id, model); this.choices = wrap(choices); @@ -261,7 +261,7 @@ public abstract class AbstractChoice<T, E> extends FormComponent<T> /** * @return The IChoiceRenderer used for rendering the data objects */ - public final IChoiceRenderer<? super E> getChoiceRenderer() + public final ChoiceRenderer<? super E> getChoiceRenderer() { return renderer; } @@ -272,7 +272,7 @@ public abstract class AbstractChoice<T, E> extends FormComponent<T> * @param renderer * @return this for chaining */ - public final AbstractChoice<T, E> setChoiceRenderer(IChoiceRenderer<? super E> renderer) + public final AbstractChoice<T, E> setChoiceRenderer(ChoiceRenderer<? super E> renderer) { if (renderer == null) { http://git-wip-us.apache.org/repos/asf/wicket/blob/edce01ce/wicket-core/src/main/java/org/apache/wicket/markup/html/form/AbstractSingleSelectChoice.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/AbstractSingleSelectChoice.java b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/AbstractSingleSelectChoice.java index 51e21a7..46b53fe 100644 --- a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/AbstractSingleSelectChoice.java +++ b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/AbstractSingleSelectChoice.java @@ -79,7 +79,7 @@ public abstract class AbstractSingleSelectChoice<T> extends AbstractChoice<T, T> * The collection of choices in the dropdown */ public AbstractSingleSelectChoice(final String id, final List<? extends T> choices, - final IChoiceRenderer<? super T> renderer) + final ChoiceRenderer<? super T> renderer) { super(id, choices, renderer); } @@ -113,7 +113,7 @@ public abstract class AbstractSingleSelectChoice<T> extends AbstractChoice<T, T> * The rendering engine */ public AbstractSingleSelectChoice(final String id, IModel<T> model, - final List<? extends T> choices, final IChoiceRenderer<? super T> renderer) + final List<? extends T> choices, final ChoiceRenderer<? super T> renderer) { super(id, model, choices, renderer); } @@ -158,7 +158,7 @@ public abstract class AbstractSingleSelectChoice<T> extends AbstractChoice<T, T> * The rendering engine */ public AbstractSingleSelectChoice(String id, IModel<? extends List<? extends T>> choices, - IChoiceRenderer<? super T> renderer) + ChoiceRenderer<? super T> renderer) { super(id, choices, renderer); } @@ -176,7 +176,7 @@ public abstract class AbstractSingleSelectChoice<T> extends AbstractChoice<T, T> * The rendering engine */ public AbstractSingleSelectChoice(String id, IModel<T> model, - IModel<? extends List<? extends T>> choices, IChoiceRenderer<? super T> renderer) + IModel<? extends List<? extends T>> choices, ChoiceRenderer<? super T> renderer) { super(id, model, choices, renderer); } @@ -270,7 +270,7 @@ public abstract class AbstractSingleSelectChoice<T> extends AbstractChoice<T, T> protected T convertChoiceIdToChoice(String id) { final IModel<? extends List<? extends T>> choices = getChoicesModel(); - final IChoiceRenderer<? super T> renderer = getChoiceRenderer(); + final ChoiceRenderer<? super T> renderer = getChoiceRenderer(); T object = (T) renderer.getObject(id, choices); return object; } http://git-wip-us.apache.org/repos/asf/wicket/blob/edce01ce/wicket-core/src/main/java/org/apache/wicket/markup/html/form/CheckBoxMultipleChoice.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/CheckBoxMultipleChoice.java b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/CheckBoxMultipleChoice.java index c8ff1f6..efff6ac 100644 --- a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/CheckBoxMultipleChoice.java +++ b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/CheckBoxMultipleChoice.java @@ -108,10 +108,10 @@ public class CheckBoxMultipleChoice<T> extends ListMultipleChoice<T> * The collection of choices in the radio choice * @see org.apache.wicket.Component#Component(String) * @see AbstractChoice#AbstractChoice(String, - * java.util.List,org.apache.wicket.markup.html.form.IChoiceRenderer) + * java.util.List,org.apache.wicket.markup.html.form.ChoiceRenderer) */ public CheckBoxMultipleChoice(final String id, final List<? extends T> choices, - final IChoiceRenderer<? super T> renderer) + final ChoiceRenderer<? super T> renderer) { super(id, choices, renderer); } @@ -147,10 +147,10 @@ public class CheckBoxMultipleChoice<T> extends ListMultipleChoice<T> * The rendering engine * @see org.apache.wicket.Component#Component(String, org.apache.wicket.model.IModel) * @see AbstractChoice#AbstractChoice(String, org.apache.wicket.model.IModel, - * java.util.List,org.apache.wicket.markup.html.form.IChoiceRenderer) + * java.util.List,org.apache.wicket.markup.html.form.ChoiceRenderer) */ public CheckBoxMultipleChoice(final String id, IModel<? extends Collection<T>> model, - final List<? extends T> choices, final IChoiceRenderer<? super T> renderer) + final List<? extends T> choices, final ChoiceRenderer<? super T> renderer) { super(id, model, choices, renderer); } @@ -199,11 +199,11 @@ public class CheckBoxMultipleChoice<T> extends ListMultipleChoice<T> * @param renderer * The rendering engine * @see AbstractChoice#AbstractChoice(String, - * org.apache.wicket.model.IModel,org.apache.wicket.markup.html.form.IChoiceRenderer) + * org.apache.wicket.model.IModel,org.apache.wicket.markup.html.form.ChoiceRenderer) * @see org.apache.wicket.Component#Component(String) */ public CheckBoxMultipleChoice(String id, IModel<? extends List<? extends T>> choices, - IChoiceRenderer<? super T> renderer) + ChoiceRenderer<? super T> renderer) { super(id, choices, renderer); } @@ -221,10 +221,10 @@ public class CheckBoxMultipleChoice<T> extends ListMultipleChoice<T> * The rendering engine * @see org.apache.wicket.Component#Component(String, org.apache.wicket.model.IModel) * @see AbstractChoice#AbstractChoice(String, org.apache.wicket.model.IModel, - * org.apache.wicket.model.IModel,org.apache.wicket.markup.html.form.IChoiceRenderer) + * org.apache.wicket.model.IModel,org.apache.wicket.markup.html.form.ChoiceRenderer) */ public CheckBoxMultipleChoice(String id, IModel<? extends Collection<T>> model, - IModel<? extends List<? extends T>> choices, IChoiceRenderer<? super T> renderer) + IModel<? extends List<? extends T>> choices, ChoiceRenderer<? super T> renderer) { super(id, model, choices, renderer); } http://git-wip-us.apache.org/repos/asf/wicket/blob/edce01ce/wicket-core/src/main/java/org/apache/wicket/markup/html/form/ChoiceRenderer.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/ChoiceRenderer.java b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/ChoiceRenderer.java index 1134c14..badaf80 100644 --- a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/ChoiceRenderer.java +++ b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/ChoiceRenderer.java @@ -20,9 +20,13 @@ import java.util.List; import org.apache.wicket.core.util.lang.PropertyResolver; import org.apache.wicket.model.IModel; +import org.apache.wicket.util.io.IClusterable; /** - * Default implementation of {@link org.apache.wicket.markup.html.form.IChoiceRenderer}. Usage: + * Renders one choice. Separates the 'id' values used for internal representation from 'display + * values' which are the values shown to the user of components that use this renderer. + * + * Usage: * <p> * * <pre> @@ -58,7 +62,7 @@ import org.apache.wicket.model.IModel; * @param <T> * The model object type */ -public class ChoiceRenderer<T> implements IChoiceRenderer<T> +public class ChoiceRenderer<T> implements IClusterable { private static final long serialVersionUID = 1L; @@ -112,7 +116,13 @@ public class ChoiceRenderer<T> implements IChoiceRenderer<T> this.idExpression = idExpression; } - @Override + /** + * Get the value for displaying to an end user. + * + * @param object + * the actual object + * @return the value meant for displaying to an end user + */ public Object getDisplayValue(T object) { Object returnValue = object; @@ -129,7 +139,20 @@ public class ChoiceRenderer<T> implements IChoiceRenderer<T> return returnValue; } - @Override + /** + * This method is called to get the id value of an object (used as the value attribute of a + * choice element) The id can be extracted from the object like a primary key, or if the list is + * stable you could just return a toString of the index. + * <p> + * Note that the given index can be {@code -1} if the object in question is not contained in the + * available choices. + * + * @param object + * The object for which the id should be generated + * @param index + * The index of the object in the choices list. + * @return String + */ public String getIdValue(T object, int index) { if (idExpression == null) @@ -151,7 +174,18 @@ public class ChoiceRenderer<T> implements IChoiceRenderer<T> return returnValue.toString(); } - @Override + /** + * This method is called to get an object back from its id representation. + * + * The {@code id} may be used to find/load the object in a more efficient way + * than loading all {@code choices} and find the one with the same id in the list + * + * @param id + * The id representation of the object + * @param choices + * The list of all rendered choices + * @return A choice from the list that has this {@code id} + */ public T getObject(String id, IModel<? extends List<? extends T>> choices) { List<? extends T> _choices = choices.getObject(); http://git-wip-us.apache.org/repos/asf/wicket/blob/edce01ce/wicket-core/src/main/java/org/apache/wicket/markup/html/form/DropDownChoice.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/DropDownChoice.java b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/DropDownChoice.java index 0db8dc6..ea22dff 100644 --- a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/DropDownChoice.java +++ b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/DropDownChoice.java @@ -104,7 +104,7 @@ public class DropDownChoice<T> extends AbstractSingleSelectChoice<T> implements * The collection of choices in the dropdown */ public DropDownChoice(final String id, final List<? extends T> choices, - final IChoiceRenderer<? super T> renderer) + final ChoiceRenderer<? super T> renderer) { super(id, choices, renderer); } @@ -137,7 +137,7 @@ public class DropDownChoice<T> extends AbstractSingleSelectChoice<T> implements * The rendering engine */ public DropDownChoice(final String id, IModel<T> model, final List<? extends T> choices, - final IChoiceRenderer<? super T> renderer) + final ChoiceRenderer<? super T> renderer) { super(id, model, choices, renderer); } @@ -181,7 +181,7 @@ public class DropDownChoice<T> extends AbstractSingleSelectChoice<T> implements * The rendering engine */ public DropDownChoice(String id, IModel<? extends List<? extends T>> choices, - IChoiceRenderer<? super T> renderer) + ChoiceRenderer<? super T> renderer) { super(id, choices, renderer); } @@ -199,7 +199,7 @@ public class DropDownChoice<T> extends AbstractSingleSelectChoice<T> implements * The rendering engine */ public DropDownChoice(String id, IModel<T> model, IModel<? extends List<? extends T>> choices, - IChoiceRenderer<? super T> renderer) + ChoiceRenderer<? super T> renderer) { super(id, model, choices, renderer); } @@ -296,4 +296,4 @@ public class DropDownChoice<T> extends AbstractSingleSelectChoice<T> implements } return super.getStatelessHint(); } -} \ No newline at end of file +} http://git-wip-us.apache.org/repos/asf/wicket/blob/edce01ce/wicket-core/src/main/java/org/apache/wicket/markup/html/form/IChoiceRenderer.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/IChoiceRenderer.java b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/IChoiceRenderer.java deleted file mode 100644 index ad3f97b..0000000 --- a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/IChoiceRenderer.java +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed with - * this work for additional information regarding copyright ownership. - * The ASF licenses this file to You under the Apache License, Version 2.0 - * (the "License"); you may not use this file except in compliance with - * the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -package org.apache.wicket.markup.html.form; - -import java.util.List; - -import org.apache.wicket.model.IModel; -import org.apache.wicket.util.io.IClusterable; - -/** - * Renders one choice. Separates the 'id' values used for internal representation from 'display - * values' which are the values shown to the user of components that use this renderer. - * - * @author jcompagner - * - * @param <T> - * The model object type - */ -public interface IChoiceRenderer<T> extends IClusterable -{ - /** - * Get the value for displaying to an end user. - * - * @param object - * the actual object - * @return the value meant for displaying to an end user - */ - Object getDisplayValue(T object); - - /** - * This method is called to get the id value of an object (used as the value attribute of a - * choice element) The id can be extracted from the object like a primary key, or if the list is - * stable you could just return a toString of the index. - * <p> - * Note that the given index can be {@code -1} if the object in question is not contained in the - * available choices. - * - * @param object - * The object for which the id should be generated - * @param index - * The index of the object in the choices list. - * @return String - */ - String getIdValue(T object, int index); - - /** - * This method is called to get an object back from its id representation. - * - * The {@code id} may be used to find/load the object in a more efficient way - * than loading all {@code choices} and find the one with the same id in the list - * - * @param id - * The id representation of the object - * @param choices - * The list of all rendered choices - * @return A choice from the list that has this {@code id} - */ - T getObject(String id, IModel<? extends List<? extends T>> choices); -} http://git-wip-us.apache.org/repos/asf/wicket/blob/edce01ce/wicket-core/src/main/java/org/apache/wicket/markup/html/form/ListChoice.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/ListChoice.java b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/ListChoice.java index d01c563..f797c14 100644 --- a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/ListChoice.java +++ b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/ListChoice.java @@ -67,10 +67,10 @@ public class ListChoice<T> extends DropDownChoice<T> * @param renderer * See AbstractChoice * @see org.apache.wicket.markup.html.form.AbstractChoice#AbstractChoice(String, - * List,IChoiceRenderer) + * List,ChoiceRenderer) */ public ListChoice(final String id, final List<? extends T> choices, - final IChoiceRenderer<? super T> renderer) + final ChoiceRenderer<? super T> renderer) { this(id, null, choices, renderer, DEFAULT_MAX_ROWS); } @@ -119,7 +119,7 @@ public class ListChoice<T> extends DropDownChoice<T> * @see DropDownChoice#DropDownChoice(String, IModel, List) */ public ListChoice(final String id, final IModel<T> model, final List<? extends T> choices, - final IChoiceRenderer<? super T> renderer) + final ChoiceRenderer<? super T> renderer) { this(id, model, choices, renderer, DEFAULT_MAX_ROWS); } @@ -138,7 +138,7 @@ public class ListChoice<T> extends DropDownChoice<T> * @see DropDownChoice#DropDownChoice(String, IModel, List) */ public ListChoice(final String id, final IModel<T> model, final List<? extends T> choices, - final IChoiceRenderer<? super T> renderer, final int maxRows) + final ChoiceRenderer<? super T> renderer, final int maxRows) { super(id, model, choices, renderer); this.maxRows = maxRows; @@ -162,10 +162,10 @@ public class ListChoice<T> extends DropDownChoice<T> /** * @see org.apache.wicket.markup.html.form.AbstractChoice#AbstractChoice(String, - * IModel,IChoiceRenderer) + * IModel,ChoiceRenderer) */ public ListChoice(String id, IModel<? extends List<? extends T>> choices, - IChoiceRenderer<? super T> renderer) + ChoiceRenderer<? super T> renderer) { this(id, null, choices, renderer, DEFAULT_MAX_ROWS); } @@ -173,10 +173,10 @@ public class ListChoice<T> extends DropDownChoice<T> /** * @see org.apache.wicket.markup.html.form.AbstractChoice#AbstractChoice(String, IModel, - * IModel,IChoiceRenderer) + * IModel,ChoiceRenderer) */ public ListChoice(String id, IModel<T> model, IModel<? extends List<? extends T>> choices, - IChoiceRenderer<? super T> renderer) + ChoiceRenderer<? super T> renderer) { this(id, model, choices, renderer, DEFAULT_MAX_ROWS); } @@ -188,10 +188,10 @@ public class ListChoice<T> extends DropDownChoice<T> * @param renderer * @param maxRows * @see org.apache.wicket.markup.html.form.AbstractChoice#AbstractChoice(String, IModel, - * IModel,IChoiceRenderer) + * IModel,ChoiceRenderer) */ public ListChoice(String id, IModel<T> model, IModel<? extends List<? extends T>> choices, - IChoiceRenderer<? super T> renderer, int maxRows) + ChoiceRenderer<? super T> renderer, int maxRows) { super(id, model, choices, renderer); this.maxRows = maxRows; http://git-wip-us.apache.org/repos/asf/wicket/blob/edce01ce/wicket-core/src/main/java/org/apache/wicket/markup/html/form/ListMultipleChoice.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/ListMultipleChoice.java b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/ListMultipleChoice.java index be0d4d9..2aad34e 100644 --- a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/ListMultipleChoice.java +++ b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/ListMultipleChoice.java @@ -92,10 +92,10 @@ public class ListMultipleChoice<T> extends AbstractChoice<Collection<T>, T> /** * @see org.apache.wicket.markup.html.form.AbstractChoice#AbstractChoice(String, - * List,IChoiceRenderer) + * List,ChoiceRenderer) */ public ListMultipleChoice(final String id, final List<? extends T> choices, - final IChoiceRenderer<? super T> renderer) + final ChoiceRenderer<? super T> renderer) { super(id, choices, renderer); } @@ -116,7 +116,7 @@ public class ListMultipleChoice<T> extends AbstractChoice<Collection<T>, T> /** * @see org.apache.wicket.markup.html.form.AbstractChoice#AbstractChoice(String, IModel, - * List,IChoiceRenderer) + * List,ChoiceRenderer) * * @param id * @param object @@ -125,7 +125,7 @@ public class ListMultipleChoice<T> extends AbstractChoice<Collection<T>, T> */ @SuppressWarnings("unchecked") public ListMultipleChoice(final String id, IModel<? extends Collection<T>> object, - final List<? extends T> choices, final IChoiceRenderer<? super T> renderer) + final List<? extends T> choices, final ChoiceRenderer<? super T> renderer) { super(id, (IModel<Collection<T>>)object, choices, renderer); } @@ -154,10 +154,10 @@ public class ListMultipleChoice<T> extends AbstractChoice<Collection<T>, T> /** * @see org.apache.wicket.markup.html.form.AbstractChoice#AbstractChoice(String, - * IModel,IChoiceRenderer) + * IModel,ChoiceRenderer) */ public ListMultipleChoice(String id, IModel<? extends List<? extends T>> choices, - IChoiceRenderer<? super T> renderer) + ChoiceRenderer<? super T> renderer) { super(id, choices, renderer); } @@ -165,7 +165,7 @@ public class ListMultipleChoice<T> extends AbstractChoice<Collection<T>, T> /** * @see org.apache.wicket.markup.html.form.AbstractChoice#AbstractChoice(String, IModel, - * IModel,IChoiceRenderer) + * IModel,ChoiceRenderer) * * @param id * @param model @@ -174,7 +174,7 @@ public class ListMultipleChoice<T> extends AbstractChoice<Collection<T>, T> */ @SuppressWarnings("unchecked") public ListMultipleChoice(String id, IModel<? extends Collection<T>> model, - IModel<? extends List<? extends T>> choices, IChoiceRenderer<? super T> renderer) + IModel<? extends List<? extends T>> choices, ChoiceRenderer<? super T> renderer) { super(id, (IModel<Collection<T>>)model, choices, renderer); } http://git-wip-us.apache.org/repos/asf/wicket/blob/edce01ce/wicket-core/src/main/java/org/apache/wicket/markup/html/form/RadioChoice.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/RadioChoice.java b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/RadioChoice.java index e684186..be74378 100644 --- a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/RadioChoice.java +++ b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/RadioChoice.java @@ -109,10 +109,10 @@ public class RadioChoice<T> extends AbstractSingleSelectChoice<T> implements IOn * The list of choices in the radio choice * @see org.apache.wicket.Component#Component(String) * @see org.apache.wicket.markup.html.form.AbstractChoice#AbstractChoice(String, - * List,IChoiceRenderer) + * List,ChoiceRenderer) */ public RadioChoice(final String id, final List<? extends T> choices, - final IChoiceRenderer<? super T> renderer) + final ChoiceRenderer<? super T> renderer) { super(id, choices, renderer); } @@ -147,10 +147,10 @@ public class RadioChoice<T> extends AbstractSingleSelectChoice<T> implements IOn * The rendering engine * @see org.apache.wicket.Component#Component(String, IModel) * @see org.apache.wicket.markup.html.form.AbstractChoice#AbstractChoice(String, IModel, - * List,IChoiceRenderer) + * List,ChoiceRenderer) */ public RadioChoice(final String id, IModel<T> model, final List<? extends T> choices, - final IChoiceRenderer<? super T> renderer) + final ChoiceRenderer<? super T> renderer) { super(id, model, choices, renderer); } @@ -197,11 +197,11 @@ public class RadioChoice<T> extends AbstractSingleSelectChoice<T> implements IOn * @param renderer * The rendering engine * @see org.apache.wicket.markup.html.form.AbstractChoice#AbstractChoice(String, - * IModel,IChoiceRenderer) + * IModel,ChoiceRenderer) * @see org.apache.wicket.Component#Component(String) */ public RadioChoice(String id, IModel<? extends List<? extends T>> choices, - IChoiceRenderer<? super T> renderer) + ChoiceRenderer<? super T> renderer) { super(id, choices, renderer); } @@ -220,10 +220,10 @@ public class RadioChoice<T> extends AbstractSingleSelectChoice<T> implements IOn * The rendering engine * @see org.apache.wicket.Component#Component(String, IModel) * @see org.apache.wicket.markup.html.form.AbstractChoice#AbstractChoice(String, IModel, - * IModel,IChoiceRenderer) + * IModel,ChoiceRenderer) */ public RadioChoice(String id, IModel<T> model, IModel<? extends List<? extends T>> choices, - IChoiceRenderer<? super T> renderer) + ChoiceRenderer<? super T> renderer) { super(id, model, choices, renderer); } http://git-wip-us.apache.org/repos/asf/wicket/blob/edce01ce/wicket-core/src/main/java/org/apache/wicket/util/tester/FormTester.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/util/tester/FormTester.java b/wicket-core/src/main/java/org/apache/wicket/util/tester/FormTester.java index 319d1af..1158d2d 100644 --- a/wicket-core/src/main/java/org/apache/wicket/util/tester/FormTester.java +++ b/wicket-core/src/main/java/org/apache/wicket/util/tester/FormTester.java @@ -23,17 +23,15 @@ import java.util.ArrayList; import java.util.HashSet; import java.util.List; -import org.junit.Assert; - import org.apache.wicket.Component; import org.apache.wicket.WicketRuntimeException; import org.apache.wicket.markup.html.form.AbstractSingleSelectChoice; import org.apache.wicket.markup.html.form.AbstractTextComponent; import org.apache.wicket.markup.html.form.Check; import org.apache.wicket.markup.html.form.CheckGroup; +import org.apache.wicket.markup.html.form.ChoiceRenderer; import org.apache.wicket.markup.html.form.Form; import org.apache.wicket.markup.html.form.FormComponent; -import org.apache.wicket.markup.html.form.IChoiceRenderer; import org.apache.wicket.markup.html.form.IFormSubmittingComponent; import org.apache.wicket.markup.html.form.IOnChangeListener; import org.apache.wicket.markup.html.form.ListMultipleChoice; @@ -48,6 +46,7 @@ import org.apache.wicket.util.string.StringValue; import org.apache.wicket.util.string.Strings; import org.apache.wicket.util.visit.IVisit; import org.apache.wicket.util.visit.IVisitor; +import org.junit.Assert; /** * A helper class for testing validation and submission of <code>FormComponent</code>s. @@ -202,7 +201,7 @@ public class FormTester Method getChoiceRendererMethod = formComponent.getClass().getMethod( "getChoiceRenderer", (Class<?>[])null); getChoiceRendererMethod.setAccessible(true); - IChoiceRenderer<Object> choiceRenderer = (IChoiceRenderer<Object>)getChoiceRendererMethod.invoke( + ChoiceRenderer<Object> choiceRenderer = (ChoiceRenderer<Object>)getChoiceRendererMethod.invoke( formComponent, (Object[])null); return choiceRenderer.getIdValue(choices.get(index), index); http://git-wip-us.apache.org/repos/asf/wicket/blob/edce01ce/wicket-examples/src/main/java/org/apache/wicket/examples/compref/PalettePage.java ---------------------------------------------------------------------- diff --git a/wicket-examples/src/main/java/org/apache/wicket/examples/compref/PalettePage.java b/wicket-examples/src/main/java/org/apache/wicket/examples/compref/PalettePage.java index 095623b..0f73cfd 100644 --- a/wicket-examples/src/main/java/org/apache/wicket/examples/compref/PalettePage.java +++ b/wicket-examples/src/main/java/org/apache/wicket/examples/compref/PalettePage.java @@ -23,7 +23,6 @@ import org.apache.wicket.examples.WicketExamplePage; import org.apache.wicket.extensions.markup.html.form.palette.Palette; import org.apache.wicket.markup.html.form.ChoiceRenderer; import org.apache.wicket.markup.html.form.Form; -import org.apache.wicket.markup.html.form.IChoiceRenderer; import org.apache.wicket.markup.html.panel.FeedbackPanel; import org.apache.wicket.model.util.CollectionModel; import org.apache.wicket.model.util.ListModel; @@ -44,9 +43,9 @@ public class PalettePage extends WicketExamplePage public PalettePage() { List<Person> persons = ComponentReferenceApplication.getPersons(); - IChoiceRenderer<Person> renderer = new ChoiceRenderer<>("fullName", "fullName"); + ChoiceRenderer<Person> renderer = new ChoiceRenderer<>("fullName", "fullName"); - final Palette<Person> palette = new Palette<Person>("palette", new ListModel<Person>( + final Palette<Person> palette = new Palette<Person>("palette", new ListModel<>( new ArrayList<Person>()), new CollectionModel<>(persons), renderer, 10, true, true); http://git-wip-us.apache.org/repos/asf/wicket/blob/edce01ce/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/AjaxEditableChoiceLabel.java ---------------------------------------------------------------------- diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/AjaxEditableChoiceLabel.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/AjaxEditableChoiceLabel.java index cac99fe..73db134 100644 --- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/AjaxEditableChoiceLabel.java +++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/AjaxEditableChoiceLabel.java @@ -25,9 +25,9 @@ import org.apache.wicket.markup.ComponentTag; import org.apache.wicket.markup.MarkupStream; import org.apache.wicket.markup.html.WebComponent; import org.apache.wicket.markup.html.basic.Label; +import org.apache.wicket.markup.html.form.ChoiceRenderer; import org.apache.wicket.markup.html.form.DropDownChoice; import org.apache.wicket.markup.html.form.FormComponent; -import org.apache.wicket.markup.html.form.IChoiceRenderer; import org.apache.wicket.markup.html.form.TextField; import org.apache.wicket.model.AbstractReadOnlyModel; import org.apache.wicket.model.IModel; @@ -51,7 +51,7 @@ public class AjaxEditableChoiceLabel<T> extends AjaxEditableLabel<T> private IModel<? extends List<? extends T>> choices; /** The renderer used to generate display/id values for the objects. */ - private IChoiceRenderer<T> renderer; + private ChoiceRenderer<T> renderer; /** * Construct. @@ -120,7 +120,7 @@ public class AjaxEditableChoiceLabel<T> extends AjaxEditableLabel<T> * The rendering engine */ public AjaxEditableChoiceLabel(final String id, final IModel<T> model, - final IModel<? extends List<? extends T>> choices, final IChoiceRenderer<T> renderer) + final IModel<? extends List<? extends T>> choices, final ChoiceRenderer<T> renderer) { super(id, model); this.choices = choices; @@ -156,7 +156,7 @@ public class AjaxEditableChoiceLabel<T> extends AjaxEditableLabel<T> * The rendering engine */ public AjaxEditableChoiceLabel(final String id, final IModel<T> model, - final List<? extends T> choices, final IChoiceRenderer<T> renderer) + final List<? extends T> choices, final ChoiceRenderer<T> renderer) { this(id, model, Model.ofList(choices), renderer); } http://git-wip-us.apache.org/repos/asf/wicket/blob/edce01ce/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/Palette.java ---------------------------------------------------------------------- diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/Palette.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/Palette.java index ce3f8c2..333865d 100644 --- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/Palette.java +++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/Palette.java @@ -32,9 +32,9 @@ import org.apache.wicket.markup.head.IHeaderResponse; import org.apache.wicket.markup.head.JavaScriptHeaderItem; import org.apache.wicket.markup.html.WebMarkupContainer; import org.apache.wicket.markup.html.basic.Label; +import org.apache.wicket.markup.html.form.ChoiceRenderer; import org.apache.wicket.markup.html.form.FormComponent; import org.apache.wicket.markup.html.form.FormComponentPanel; -import org.apache.wicket.markup.html.form.IChoiceRenderer; import org.apache.wicket.model.IModel; import org.apache.wicket.model.Model; import org.apache.wicket.model.ResourceModel; @@ -88,7 +88,7 @@ public class Palette<T> extends FormComponentPanel<Collection<T>> /** * choice render used to render the choices in both available and selected collections */ - private final IChoiceRenderer<T> choiceRenderer; + private final ChoiceRenderer<T> choiceRenderer; /** number of rows to show in the select boxes */ private final int rows; @@ -138,7 +138,7 @@ public class Palette<T> extends FormComponentPanel<Collection<T>> * Allow user to move selections up and down */ public Palette(final String id, final IModel<? extends Collection<T>> choicesModel, - final IChoiceRenderer<T> choiceRenderer, final int rows, final boolean allowOrder) + final ChoiceRenderer<T> choiceRenderer, final int rows, final boolean allowOrder) { this(id, null, choicesModel, choiceRenderer, rows, allowOrder); } @@ -161,7 +161,7 @@ public class Palette<T> extends FormComponentPanel<Collection<T>> @SuppressWarnings("unchecked") public Palette(final String id, final IModel<? extends Collection<T>> model, final IModel<? extends Collection<? extends T>> choicesModel, - final IChoiceRenderer<T> choiceRenderer, final int rows, final boolean allowOrder) + final ChoiceRenderer<T> choiceRenderer, final int rows, final boolean allowOrder) { this(id, model, choicesModel, choiceRenderer, rows, allowOrder, false); } @@ -185,7 +185,7 @@ public class Palette<T> extends FormComponentPanel<Collection<T>> */ public Palette(final String id, final IModel<? extends Collection<T>> model, final IModel<? extends Collection<? extends T>> choicesModel, - final IChoiceRenderer<T> choiceRenderer, final int rows, final boolean allowOrder, + final ChoiceRenderer<T> choiceRenderer, final int rows, final boolean allowOrder, boolean allowMoveAll) { super(id, (IModel<Collection<T>>)model); @@ -554,7 +554,7 @@ public class Palette<T> extends FormComponentPanel<Collection<T>> /** * @return choice renderer */ - public IChoiceRenderer<T> getChoiceRenderer() + public ChoiceRenderer<T> getChoiceRenderer() { return choiceRenderer; } http://git-wip-us.apache.org/repos/asf/wicket/blob/edce01ce/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/component/AbstractOptions.java ---------------------------------------------------------------------- diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/component/AbstractOptions.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/component/AbstractOptions.java index f5d3fc0..fbb34e8 100644 --- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/component/AbstractOptions.java +++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/component/AbstractOptions.java @@ -23,8 +23,8 @@ import org.apache.wicket.core.util.string.JavaScriptUtils; import org.apache.wicket.extensions.markup.html.form.palette.Palette; import org.apache.wicket.markup.ComponentTag; import org.apache.wicket.markup.MarkupStream; +import org.apache.wicket.markup.html.form.ChoiceRenderer; import org.apache.wicket.markup.html.form.FormComponent; -import org.apache.wicket.markup.html.form.IChoiceRenderer; import org.apache.wicket.util.convert.IConverter; import org.apache.wicket.util.string.Strings; import org.apache.wicket.util.value.IValueMap; @@ -71,7 +71,7 @@ public abstract class AbstractOptions<T> extends FormComponent<T> { StringBuilder buffer = new StringBuilder(128); Iterator<T> options = getOptionsIterator(); - IChoiceRenderer<T> renderer = getPalette().getChoiceRenderer(); + ChoiceRenderer<T> renderer = getPalette().getChoiceRenderer(); boolean localizeDisplayValues = localizeDisplayValues(); http://git-wip-us.apache.org/repos/asf/wicket/blob/edce01ce/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/component/Recorder.java ---------------------------------------------------------------------- diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/component/Recorder.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/component/Recorder.java index 64fa895..0fc62bd 100644 --- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/component/Recorder.java +++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/form/palette/component/Recorder.java @@ -25,8 +25,8 @@ import java.util.Map; import org.apache.wicket.WicketRuntimeException; import org.apache.wicket.extensions.markup.html.form.palette.Palette; +import org.apache.wicket.markup.html.form.ChoiceRenderer; import org.apache.wicket.markup.html.form.HiddenField; -import org.apache.wicket.markup.html.form.IChoiceRenderer; import org.apache.wicket.model.Model; import org.apache.wicket.util.string.Strings; @@ -87,7 +87,7 @@ public class Recorder<T> extends HiddenField<String> private void initIds() { // construct the model string based on selection collection - IChoiceRenderer<T> renderer = getPalette().getChoiceRenderer(); + ChoiceRenderer<T> renderer = getPalette().getChoiceRenderer(); StringBuilder modelStringBuffer = new StringBuilder(); Collection<T> modelCollection = getPalette().getModelCollection(); if (modelCollection == null) @@ -123,7 +123,7 @@ public class Recorder<T> extends HiddenField<String> */ public List<T> getSelectedList() { - final IChoiceRenderer<T> renderer = getPalette().getChoiceRenderer(); + final ChoiceRenderer<T> renderer = getPalette().getChoiceRenderer(); final Collection<? extends T> choices = getPalette().getChoices(); final List<T> selected = new ArrayList<>(choices.size()); @@ -160,7 +160,7 @@ public class Recorder<T> extends HiddenField<String> */ public List<T> getUnselectedList() { - final IChoiceRenderer<T> renderer = getPalette().getChoiceRenderer(); + final ChoiceRenderer<T> renderer = getPalette().getChoiceRenderer(); final Collection<? extends T> choices = getPalette().getChoices(); final List<T> unselected = new ArrayList<>(choices.size()); final String ids = getValue(); http://git-wip-us.apache.org/repos/asf/wicket/blob/edce01ce/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/ChoiceFilter.java ---------------------------------------------------------------------- diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/ChoiceFilter.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/ChoiceFilter.java index 7917bd5..0c8ea20 100644 --- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/ChoiceFilter.java +++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/ChoiceFilter.java @@ -21,7 +21,6 @@ import java.util.List; import org.apache.wicket.AttributeModifier; import org.apache.wicket.markup.html.form.ChoiceRenderer; import org.apache.wicket.markup.html.form.DropDownChoice; -import org.apache.wicket.markup.html.form.IChoiceRenderer; import org.apache.wicket.model.IModel; import org.apache.wicket.model.Model; @@ -76,7 +75,7 @@ public class ChoiceFilter<T> extends AbstractFilter * @param autoSubmit */ public ChoiceFilter(final String id, final IModel<T> model, final FilterForm<?> form, - final List<? extends T> choices, final IChoiceRenderer<T> renderer, final boolean autoSubmit) + final List<? extends T> choices, final ChoiceRenderer<T> renderer, final boolean autoSubmit) { this(id, model, form, Model.ofList(choices), renderer, autoSubmit); } @@ -97,7 +96,7 @@ public class ChoiceFilter<T> extends AbstractFilter * @see DropDownChoice */ public ChoiceFilter(final String id, final IModel<T> model, final FilterForm<?> form, - final IModel<List<? extends T>> choices, final IChoiceRenderer<T> renderer, + final IModel<List<? extends T>> choices, final ChoiceRenderer<T> renderer, final boolean autoSubmit) { super(id, form); @@ -127,7 +126,7 @@ public class ChoiceFilter<T> extends AbstractFilter * @return created drop down component */ protected DropDownChoice<T> newDropDownChoice(final String id, final IModel<T> model, - final IModel<List<? extends T>> choices, final IChoiceRenderer<T> renderer) + final IModel<List<? extends T>> choices, final ChoiceRenderer<T> renderer) { DropDownChoice<T> dropDownChoice = new DropDownChoice<>(id, model, choices, renderer); dropDownChoice.setNullValid(true); http://git-wip-us.apache.org/repos/asf/wicket/blob/edce01ce/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/ChoiceFilteredPropertyColumn.java ---------------------------------------------------------------------- diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/ChoiceFilteredPropertyColumn.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/ChoiceFilteredPropertyColumn.java index 2b227f7..d69a4db 100644 --- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/ChoiceFilteredPropertyColumn.java +++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/filter/ChoiceFilteredPropertyColumn.java @@ -19,7 +19,7 @@ package org.apache.wicket.extensions.markup.html.repeater.data.table.filter; import java.util.List; import org.apache.wicket.Component; -import org.apache.wicket.markup.html.form.IChoiceRenderer; +import org.apache.wicket.markup.html.form.ChoiceRenderer; import org.apache.wicket.model.IModel; import org.apache.wicket.model.PropertyModel; @@ -90,10 +90,10 @@ public class ChoiceFilteredPropertyColumn<T, Y, S> extends FilteredPropertyColum @Override public Component getFilter(final String componentId, final FilterForm<?> form) { - ChoiceFilter<Y> filter = new ChoiceFilter<Y>(componentId, getFilterModel(form), form, + ChoiceFilter<Y> filter = new ChoiceFilter<>(componentId, getFilterModel(form), form, filterChoices, enableAutoSubmit()); - IChoiceRenderer<Y> renderer = getChoiceRenderer(); + ChoiceRenderer<Y> renderer = getChoiceRenderer(); if (renderer != null) { filter.getChoice().setChoiceRenderer(renderer); @@ -130,7 +130,7 @@ public class ChoiceFilteredPropertyColumn<T, Y, S> extends FilteredPropertyColum * * @return choice renderer that will be used to create the choice filter */ - protected IChoiceRenderer<Y> getChoiceRenderer() + protected ChoiceRenderer<Y> getChoiceRenderer() { return null; } http://git-wip-us.apache.org/repos/asf/wicket/blob/edce01ce/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/form/palette/PaletteTestPage.java ---------------------------------------------------------------------- diff --git a/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/form/palette/PaletteTestPage.java b/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/form/palette/PaletteTestPage.java index 59a0357..efc410b 100644 --- a/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/form/palette/PaletteTestPage.java +++ b/wicket-extensions/src/test/java/org/apache/wicket/extensions/markup/html/form/palette/PaletteTestPage.java @@ -21,7 +21,6 @@ import java.util.List; import org.apache.wicket.markup.html.WebPage; import org.apache.wicket.markup.html.form.ChoiceRenderer; import org.apache.wicket.markup.html.form.Form; -import org.apache.wicket.markup.html.form.IChoiceRenderer; import org.apache.wicket.model.CompoundPropertyModel; import org.apache.wicket.model.IModel; @@ -45,7 +44,7 @@ public class PaletteTestPage extends WebPage form = new Form<>("form", new CompoundPropertyModel<Object>("WICKET-5086")); add(form); - IChoiceRenderer<String> choiceRenderer = new ChoiceRenderer<String>() + ChoiceRenderer<String> choiceRenderer = new ChoiceRenderer<String>() { @Override public Object getDisplayValue(String s)
