Updated Branches: refs/heads/master ed2a4ba18 -> 23867aee7
Make Ajax behavior #getCallbackScript() public so its result can be used to generate another script. first-user: inmethod-grid Project: http://git-wip-us.apache.org/repos/asf/wicket/repo Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/23867aee Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/23867aee Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/23867aee Branch: refs/heads/master Commit: 23867aee74186f9b7d80bef7f9045f5f9e3f1d5c Parents: ed2a4ba Author: Martin Tzvetanov Grigorov <[email protected]> Authored: Fri Feb 24 12:16:59 2012 +0100 Committer: Martin Tzvetanov Grigorov <[email protected]> Committed: Fri Feb 24 12:16:59 2012 +0100 ---------------------------------------------------------------------- .../wicket/ajax/AbstractDefaultAjaxBehavior.java | 18 ++++++++++++-- .../org/apache/wicket/ajax/AjaxEventBehavior.java | 7 +----- .../ajax/markup/html/modal/ModalWindow.java | 4 +- 3 files changed, 18 insertions(+), 11 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/wicket/blob/23867aee/wicket-core/src/main/java/org/apache/wicket/ajax/AbstractDefaultAjaxBehavior.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/ajax/AbstractDefaultAjaxBehavior.java b/wicket-core/src/main/java/org/apache/wicket/ajax/AbstractDefaultAjaxBehavior.java index b1858e7..532607d 100644 --- a/wicket-core/src/main/java/org/apache/wicket/ajax/AbstractDefaultAjaxBehavior.java +++ b/wicket-core/src/main/java/org/apache/wicket/ajax/AbstractDefaultAjaxBehavior.java @@ -419,11 +419,23 @@ public abstract class AbstractDefaultAjaxBehavior extends AbstractAjaxBehavior /** * @return javascript that will generate an ajax GET request to this behavior + * with its assigned component */ - protected CharSequence getCallbackScript() + public CharSequence getCallbackScript() { - CharSequence attrsJson = renderAjaxAttributes(getComponent()); - return "Wicket.Ajax.get(" + attrsJson + ")"; + return getCallbackScript(getComponent()); + } + + /** + * @param component the component to use when generating the attributes + * @return script that can be used to execute this Ajax behavior. + */ + // 'protected' because this method is intended to be called by other Behavior methods which + // accept the component as parameter + protected CharSequence getCallbackScript(final Component component) + { + CharSequence ajaxAttributes = renderAjaxAttributes(component); + return "Wicket.Ajax.ajax("+ajaxAttributes+")"; } /** http://git-wip-us.apache.org/repos/asf/wicket/blob/23867aee/wicket-core/src/main/java/org/apache/wicket/ajax/AjaxEventBehavior.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/ajax/AjaxEventBehavior.java b/wicket-core/src/main/java/org/apache/wicket/ajax/AjaxEventBehavior.java index 8ebe831..8998cb5 100644 --- a/wicket-core/src/main/java/org/apache/wicket/ajax/AjaxEventBehavior.java +++ b/wicket-core/src/main/java/org/apache/wicket/ajax/AjaxEventBehavior.java @@ -80,12 +80,7 @@ public abstract class AjaxEventBehavior extends AbstractDefaultAjaxBehavior if (component.isEnabledInHierarchy()) { - StringBuilder js = new StringBuilder(); - js.append("Wicket.Ajax.ajax("); - - js.append(renderAjaxAttributes(component)); - - js.append(");"); + CharSequence js = getCallbackScript(component); AjaxRequestTarget target = component.getRequestCycle().find(AjaxRequestTarget.class); if (target == null) http://git-wip-us.apache.org/repos/asf/wicket/blob/23867aee/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/modal/ModalWindow.java ---------------------------------------------------------------------- diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/modal/ModalWindow.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/modal/ModalWindow.java index d97156c..9e9f692 100644 --- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/modal/ModalWindow.java +++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/modal/ModalWindow.java @@ -938,7 +938,7 @@ public class ModalWindow extends Panel } @Override - protected CharSequence getCallbackScript() + public CharSequence getCallbackScript() { return super.getCallbackScript(); } @@ -969,7 +969,7 @@ public class ModalWindow extends Panel * @see org.apache.wicket.ajax.AbstractDefaultAjaxBehavior#getCallbackScript() */ @Override - protected final CharSequence getCallbackScript() + public final CharSequence getCallbackScript() { return super.getCallbackScript(); }
