From: erik Date: Sat, 28 Aug 2010 19:33:16 +0000 (+0000) Subject: (no commit message) X-Git-Tag: wamblee-utils-0.6~22 X-Git-Url: http://wamblee.org/gitweb/?a=commitdiff_plain;h=f289d8bdf90d0b100c027c8a27e6073683479917;hp=f40ecee21de60b7f648d67ea8e0da8ca788e2a2c;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); } }