You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by mg...@apache.org on 2010/11/06 18:46:37 UTC
svn commit: r1032124 -
/wicket/branches/wicket-1.4.x/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/modal/ModalWindow.java
Author: mgrigorov
Date: Sat Nov 6 17:46:37 2010
New Revision: 1032124
URL: http://svn.apache.org/viewvc?rev=1032124&view=rev
Log:
WICKET-3144 Extra client-side scripting before closing modalwindow
Add the possibility to modify the javascript used for closing the modal window (i.e. provide custom IAjaxCallDecorator for CloseButtonBehavior)
merge r1032118 from trunk
Modified:
wicket/branches/wicket-1.4.x/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/modal/ModalWindow.java
Modified: wicket/branches/wicket-1.4.x/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/modal/ModalWindow.java
URL: http://svn.apache.org/viewvc/wicket/branches/wicket-1.4.x/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/modal/ModalWindow.java?rev=1032124&r1=1032123&r2=1032124&view=diff
==============================================================================
--- wicket/branches/wicket-1.4.x/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/modal/ModalWindow.java (original)
+++ wicket/branches/wicket-1.4.x/wicket-extensions/src/main/java/org/apache/wicket/extensions/ajax/markup/html/modal/ModalWindow.java Sat Nov 6 17:46:37 2010
@@ -257,7 +257,7 @@ public class ModalWindow extends Panel
add(empty = new WebMarkupContainer(getContentId()));
- add(new CloseButtonBehavior());
+ add(newCloseButtonBehavior());
add(new WindowClosedBehavior());
add(JavascriptPackageResource.getHeaderContribution(JAVASCRIPT));
@@ -974,12 +974,16 @@ public class ModalWindow extends Panel
/**
* @author Matej Knopp
*/
- private class CloseButtonBehavior extends AbstractDefaultAjaxBehavior
+ protected class CloseButtonBehavior extends AbstractDefaultAjaxBehavior
{
private static final long serialVersionUID = 1L;
+ public CloseButtonBehavior()
+ {
+ }
+
@Override
- protected void respond(AjaxRequestTarget target)
+ protected final void respond(AjaxRequestTarget target)
{
if (closeButtonCallback == null ||
closeButtonCallback.onCloseButtonClicked(target) == true)
@@ -1001,7 +1005,7 @@ public class ModalWindow extends Panel
* @see org.apache.wicket.ajax.AbstractDefaultAjaxBehavior#getCallbackScript()
*/
@Override
- protected CharSequence getCallbackScript()
+ protected final CharSequence getCallbackScript()
{
return super.getCallbackScript();
}
@@ -1217,4 +1221,14 @@ public class ModalWindow extends Panel
title.detach();
}
}
+
+ /**
+ * Gives the possibility to provide custom {@link IAjaxCallDecorator}
+ *
+ * @return the behavior that should be used for the window close button
+ */
+ protected CloseButtonBehavior newCloseButtonBehavior()
+ {
+ return new CloseButtonBehavior();
+ }
}