From: Erik Brakkee Date: Sat, 28 Aug 2010 19:33:16 +0000 (+0000) Subject: (no commit message) X-Git-Tag: wamblee-utils-0.7~60 X-Git-Url: http://wamblee.org/gitweb/?a=commitdiff_plain;h=c533eafa03c78e01927aea0129aa5c336b22ef7d;p=utils --- diff --git a/wicket/components/src/main/java/org/wamblee/wicket/behavior/PreselectionBehavior.java b/wicket/components/src/main/java/org/wamblee/wicket/behavior/PreselectionBehavior.java index 0ea11828..047b1eeb 100644 --- a/wicket/components/src/main/java/org/wamblee/wicket/behavior/PreselectionBehavior.java +++ b/wicket/components/src/main/java/org/wamblee/wicket/behavior/PreselectionBehavior.java @@ -20,8 +20,8 @@ import org.apache.wicket.Page; import org.apache.wicket.behavior.HeaderContributor; import org.apache.wicket.markup.html.IHeaderResponse; import org.apache.wicket.markup.html.JavascriptPackageResource; -import org.wamblee.wicket.jquery.JQueryBehavior; -import org.wamblee.wicket.jquery.JQueryUtils; +import org.wamblee.wicket.jquery.JQueryHeaderContributor; +import org.wamblee.wicket.jquery.AbstractJQueryBehavior; /** * Preselection behavior that preselects unaltered text in forms. When applied @@ -35,41 +35,15 @@ import org.wamblee.wicket.jquery.JQueryUtils; * @author Erik Brakkee * */ -public class PreselectionBehavior extends CompositeBehavior { +public class PreselectionBehavior extends AbstractJQueryBehavior { static final String PRESELECT_SCRIPT = "wamblee-preselect.js"; - private static HeaderContributor CACHE = JavascriptPackageResource + private static HeaderContributor PRESELECTION_BEHAVIOR = JavascriptPackageResource .getHeaderContribution(PreselectionBehavior.class, PRESELECT_SCRIPT); - private Component component; - public PreselectionBehavior() { - super(new JQueryBehavior(), new NamespaceBehavior(), CACHE); - } - - @Override - public void bind(Component aComponent) { - if (component != null) { - throw new IllegalStateException( - "this kind of handler cannot be attached to " + - "multiple components; it is already attached to component " + - component + ", but component " + aComponent + - " wants to be attached too"); - } - if ( aComponent instanceof Page) { - throw new IllegalStateException("This behavior cannot be applied to a page: " + aComponent); - } - component = aComponent; - super.bind(aComponent); - aComponent.setOutputMarkupId(true); - } - - @Override - public void renderHead(IHeaderResponse aResponse) { - super.renderHead(aResponse); - String jsString = JQueryUtils.createReadyFunction("preselectSetup", component); - aResponse.renderJavascript(jsString, null); + super("preselectionSetup", new NamespaceBehavior(), PRESELECTION_BEHAVIOR); } }