package de.flower.common.ui.ajax.markup.html; import de.flower.common.ui.ajax.PreventDoubleClickAjaxCallDecorator; import org.apache.wicket.ajax.IAjaxCallDecorator; import org.apache.wicket.ajax.IAjaxIndicatorAware; import org.apache.wicket.model.IModel; /** * @author flowerrrr */ public abstract class AjaxLink<T> extends org.apache.wicket.ajax.markup.html.AjaxLink<T> { public AjaxLink(String id) { super(id); } public AjaxLink(String id, IModel<T> model) { super(id, model); } @Override protected IAjaxCallDecorator getAjaxCallDecorator() { return new PreventDoubleClickAjaxCallDecorator(); } /** * Version of ajax link that prevents ajax-indicator if any is globally defined. * @param <T> */ public static abstract class NoIndicatingAjaxLink<T> extends AjaxLink<T> implements IAjaxIndicatorAware { protected NoIndicatingAjaxLink(final String id) { super(id); } public NoIndicatingAjaxLink(final String id, final IModel<T> model) { super(id, model); } @Override public String getAjaxIndicatorMarkupId() { return null; } } }