/**
* Adds an AJAX-Indicator to DropDownChoice
* @author Eyal Golan
*/
class DropDownChoiceWithAjaxIndicator extends DropDownChoice implements IAjaxIndicatorAware
{
private static final long serialVersionUID = 1365817942506006686L;
private final WicketAjaxIndicatorAppender indicatorAppender = new WicketAjaxIndicatorAppender();
public DropDownChoiceWithAjaxIndicator(final String id, final IModel choices, final IChoiceRenderer renderer,
final MarkupContainer markupContainer)
{
super(id, choices, renderer);
init(markupContainer);
}
public DropDownChoiceWithAjaxIndicator(final String id, final IModel model, final IModel choices,
final IChoiceRenderer renderer, final MarkupContainer markupContainer)
{
super(id, model, choices, renderer);
init(markupContainer);
}
public DropDownChoiceWithAjaxIndicator(final String id, final IModel model, final IModel choices,
final MarkupContainer markupContainer)
{
super(id, model, choices);
init(markupContainer);
}
public DropDownChoiceWithAjaxIndicator(final String id, final IModel model, final List<Serializable> data,
final IChoiceRenderer renderer, final MarkupContainer markupContainer)
{
super(id, model, data, renderer);
init(markupContainer);
}
public DropDownChoiceWithAjaxIndicator(final String id, final IModel model, final List<Serializable> choices,
final MarkupContainer markupContainer)
{
super(id, model, choices);
init(markupContainer);
}
public DropDownChoiceWithAjaxIndicator(final String id, final IModel choices, final MarkupContainer markupContainer)
{
super(id, choices);
init(markupContainer);
}
public DropDownChoiceWithAjaxIndicator(final String id, final List<Serializable> data,
final IChoiceRenderer renderer, final MarkupContainer markupContainer)
{
super(id, data, renderer);
init(markupContainer);
}
public DropDownChoiceWithAjaxIndicator(final String id, final List<Serializable> choices,
final MarkupContainer markupContainer)
{
super(id, choices);
init(markupContainer);
}
public DropDownChoiceWithAjaxIndicator(final String id, final MarkupContainer markupContainer)
{
super(id);
init(markupContainer);
}
public String getAjaxIndicatorMarkupId()
{
return this.indicatorAppender.getMarkupId();
}
private void init(final MarkupContainer markupContainer)
{
add(this.indicatorAppender);
}
}