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 2011/03/27 12:43:59 UTC
svn commit: r1085907 - in /wicket/trunk/wicket-core/src:
main/java/org/apache/wicket/ajax/markup/html/
main/java/org/apache/wicket/ajax/markup/html/navigation/paging/
test/java/org/apache/wicket/ajax/markup/html/ajaxLink/
test/java/org/apache/wicket/ma...
Author: mgrigorov
Date: Sun Mar 27 10:43:59 2011
New Revision: 1085907
URL: http://svn.apache.org/viewvc?rev=1085907&view=rev
Log:
WICKET-3540 Make AjaxLink's URL more configurable
Make the ajax behavior assignment overrideable. Now client apps can override the AjaxLink's behavior and customize it as required.
Modified:
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/AjaxFallbackLink.java
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/AjaxLink.java
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/navigation/paging/AjaxPagingNavigationIncrementLink.java
wicket/trunk/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/navigation/paging/AjaxPagingNavigationLink.java
wicket/trunk/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxLinkPageExpectedResult.html
wicket/trunk/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxLinkWithBorderPageExpectedResult.html
wicket/trunk/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxPage2_ExpectedResult.html
wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/html/basic/SimplePageExpectedResult_13.html
wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/html/border/HideableBorderPage_ExpectedResult.html
wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/html/panel/InlinePanelPageExpectedResult_7.html
wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/html/panel/InlinePanelPageExpectedResult_8.html
Modified: wicket/trunk/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/AjaxFallbackLink.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/AjaxFallbackLink.java?rev=1085907&r1=1085906&r2=1085907&view=diff
==============================================================================
--- wicket/trunk/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/AjaxFallbackLink.java (original)
+++ wicket/trunk/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/AjaxFallbackLink.java Sun Mar 27 10:43:59 2011
@@ -59,7 +59,23 @@ public abstract class AjaxFallbackLink<T
{
super(id, model);
- add(new AjaxEventBehavior("onclick")
+ }
+
+ @Override
+ protected void onInitialize()
+ {
+ super.onInitialize();
+ add(newAjaxEventBehavior("onclick"));
+ }
+
+ /**
+ * @param event
+ * the name of the default event on which this link will listen to
+ * @return the ajax behavior which will be executed when the user clicks the link
+ */
+ protected AjaxEventBehavior newAjaxEventBehavior(String event)
+ {
+ return new AjaxEventBehavior("onclick")
{
private static final long serialVersionUID = 1L;
@@ -97,7 +113,7 @@ public abstract class AjaxFallbackLink<T
super.onComponentTag(tag);
}
}
- });
+ };
}
/**
Modified: wicket/trunk/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/AjaxLink.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/AjaxLink.java?rev=1085907&r1=1085906&r2=1085907&view=diff
==============================================================================
--- wicket/trunk/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/AjaxLink.java (original)
+++ wicket/trunk/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/AjaxLink.java Sun Mar 27 10:43:59 2011
@@ -57,8 +57,24 @@ public abstract class AjaxLink<T> extend
public AjaxLink(final String id, final IModel<T> model)
{
super(id, model);
+ }
+
- add(new AjaxEventBehavior("onclick")
+ @Override
+ protected void onInitialize()
+ {
+ super.onInitialize();
+ add(newAjaxEventBehavior("onclick"));
+ }
+
+ /**
+ * @param event
+ * the name of the default event on which this link will listen to
+ * @return the ajax behavior which will be executed when the user clicks the link
+ */
+ protected AjaxEventBehavior newAjaxEventBehavior(String event)
+ {
+ return new AjaxEventBehavior(event)
{
private static final long serialVersionUID = 1L;
@@ -83,7 +99,7 @@ public abstract class AjaxLink<T> extend
super.onComponentTag(tag);
}
}
- });
+ };
}
@Override
Modified: wicket/trunk/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/navigation/paging/AjaxPagingNavigationIncrementLink.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/navigation/paging/AjaxPagingNavigationIncrementLink.java?rev=1085907&r1=1085906&r2=1085907&view=diff
==============================================================================
--- wicket/trunk/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/navigation/paging/AjaxPagingNavigationIncrementLink.java (original)
+++ wicket/trunk/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/navigation/paging/AjaxPagingNavigationIncrementLink.java Sun Mar 27 10:43:59 2011
@@ -62,11 +62,30 @@ public class AjaxPagingNavigationIncreme
final int increment)
{
super(id, pageable, increment);
- add(new AjaxPagingNavigationBehavior(this, pageable, "onclick"));
setOutputMarkupId(true);
}
+ @Override
+ protected void onInitialize()
+ {
+ super.onInitialize();
+ add(newAjaxPagingNavigationBehavior(pageable, "onclick"));
+ }
+
+ /**
+ * @param pageable
+ * The pageable component the page links are referring to
+ * @param event
+ * the name of the default event on which this link will listen to
+ * @return the ajax behavior which will be executed when the user clicks the link
+ */
+ protected AjaxPagingNavigationBehavior newAjaxPagingNavigationBehavior(IPageable pageable,
+ String event)
+ {
+ return new AjaxPagingNavigationBehavior(this, pageable, "onclick");
+ }
+
/**
* Returns the javascript event handler for this component. This function is used to decorate
* the generated javascript handler.
Modified: wicket/trunk/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/navigation/paging/AjaxPagingNavigationLink.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/navigation/paging/AjaxPagingNavigationLink.java?rev=1085907&r1=1085906&r2=1085907&view=diff
==============================================================================
--- wicket/trunk/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/navigation/paging/AjaxPagingNavigationLink.java (original)
+++ wicket/trunk/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/navigation/paging/AjaxPagingNavigationLink.java Sun Mar 27 10:43:59 2011
@@ -46,10 +46,30 @@ public class AjaxPagingNavigationLink ex
public AjaxPagingNavigationLink(final String id, final IPageable pageable, final int pageNumber)
{
super(id, pageable, pageNumber);
- add(new AjaxPagingNavigationBehavior(this, pageable, "onclick"));
+
setOutputMarkupId(true);
}
+ @Override
+ protected void onInitialize()
+ {
+ super.onInitialize();
+ add(newAjaxPagingNavigationBehavior(pageable, "onclick"));
+ }
+
+ /**
+ * @param pageable
+ * The pageable component the page links are referring to
+ * @param event
+ * the name of the default event on which this link will listen to
+ * @return the ajax behavior which will be executed when the user clicks the link
+ */
+ protected AjaxPagingNavigationBehavior newAjaxPagingNavigationBehavior(IPageable pageable,
+ String event)
+ {
+ return new AjaxPagingNavigationBehavior(this, pageable, event);
+ }
+
/**
* Fallback event listener, will redisplay the current page.
*
Modified: wicket/trunk/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxLinkPageExpectedResult.html
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxLinkPageExpectedResult.html?rev=1085907&r1=1085906&r2=1085907&view=diff
==============================================================================
--- wicket/trunk/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxLinkPageExpectedResult.html (original)
+++ wicket/trunk/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxLinkPageExpectedResult.html Sun Mar 27 10:43:59 2011
@@ -6,7 +6,7 @@
wicketAjaxDebugEnable=true;
/*-->]]>*/</script>
<script type="text/javascript" id="wicket-ajax-base-url"><!--/*--><![CDATA[/*><!--*/
-Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.ajax.markup.html.ajaxLink.AjaxLinkPage?0";
+Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.ajax.markup.html.ajaxLink.AjaxLinkPage";
/*-->]]>*/</script>
</head><body>
<span wicket:id="ajaxLabel" id="ajaxLabel1">UpdateMe</span>
Modified: wicket/trunk/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxLinkWithBorderPageExpectedResult.html
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxLinkWithBorderPageExpectedResult.html?rev=1085907&r1=1085906&r2=1085907&view=diff
==============================================================================
--- wicket/trunk/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxLinkWithBorderPageExpectedResult.html (original)
+++ wicket/trunk/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxLinkWithBorderPageExpectedResult.html Sun Mar 27 10:43:59 2011
@@ -6,7 +6,7 @@
wicketAjaxDebugEnable=true;
/*-->]]>*/</script>
<script type="text/javascript" id="wicket-ajax-base-url"><!--/*--><![CDATA[/*><!--*/
-Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.ajax.markup.html.ajaxLink.AjaxLinkWithBorderPage?0";
+Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.ajax.markup.html.ajaxLink.AjaxLinkWithBorderPage";
/*-->]]>*/</script>
</head><body>
<span wicket:id="border"><wicket:border>
Modified: wicket/trunk/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxPage2_ExpectedResult.html
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxPage2_ExpectedResult.html?rev=1085907&r1=1085906&r2=1085907&view=diff
==============================================================================
--- wicket/trunk/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxPage2_ExpectedResult.html (original)
+++ wicket/trunk/wicket-core/src/test/java/org/apache/wicket/ajax/markup/html/ajaxLink/AjaxPage2_ExpectedResult.html Sun Mar 27 10:43:59 2011
@@ -6,7 +6,7 @@
wicketAjaxDebugEnable=true;
/*-->]]>*/</script>
<script type="text/javascript" id="wicket-ajax-base-url"><!--/*--><![CDATA[/*><!--*/
-Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.ajax.markup.html.ajaxLink.AjaxPage2?0";
+Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.ajax.markup.html.ajaxLink.AjaxPage2";
/*-->]]>*/</script>
</head><body>
<span wicket:id="pageLayout"><wicket:border>
Modified: wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/html/basic/SimplePageExpectedResult_13.html
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/html/basic/SimplePageExpectedResult_13.html?rev=1085907&r1=1085906&r2=1085907&view=diff
==============================================================================
--- wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/html/basic/SimplePageExpectedResult_13.html (original)
+++ wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/html/basic/SimplePageExpectedResult_13.html Sun Mar 27 10:43:59 2011
@@ -9,7 +9,7 @@
wicketAjaxDebugEnable=true;
/*-->]]>*/</script>
<script type="text/javascript" id="wicket-ajax-base-url"><!--/*--><![CDATA[/*><!--*/
-Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.markup.html.basic.SimplePage_13?0";
+Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.markup.html.basic.SimplePage_13";
/*-->]]>*/</script>
<link rel="stylesheet" type="text/css" href="../../BasePage.css" />
</head><body>
Modified: wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/html/border/HideableBorderPage_ExpectedResult.html
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/html/border/HideableBorderPage_ExpectedResult.html?rev=1085907&r1=1085906&r2=1085907&view=diff
==============================================================================
--- wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/html/border/HideableBorderPage_ExpectedResult.html (original)
+++ wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/html/border/HideableBorderPage_ExpectedResult.html Sun Mar 27 10:43:59 2011
@@ -6,7 +6,7 @@
wicketAjaxDebugEnable=true;
/*-->]]>*/</script>
<script type="text/javascript" id="wicket-ajax-base-url"><!--/*--><![CDATA[/*><!--*/
-Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.markup.html.border.HideableBorderPage?0";
+Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.markup.html.border.HideableBorderPage";
/*-->]]>*/</script>
</head><body>
<div wicket:id="hideable"><wicket:border>
Modified: wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/html/panel/InlinePanelPageExpectedResult_7.html
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/html/panel/InlinePanelPageExpectedResult_7.html?rev=1085907&r1=1085906&r2=1085907&view=diff
==============================================================================
--- wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/html/panel/InlinePanelPageExpectedResult_7.html (original)
+++ wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/html/panel/InlinePanelPageExpectedResult_7.html Sun Mar 27 10:43:59 2011
@@ -6,7 +6,7 @@
wicketAjaxDebugEnable=true;
/*-->]]>*/</script>
<script type="text/javascript" id="wicket-ajax-base-url"><!--/*--><![CDATA[/*><!--*/
-Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.markup.html.panel.InlinePanelPage_7?0";
+Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.markup.html.panel.InlinePanelPage_7";
/*-->]]>*/</script>
</head><body>
Modified: wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/html/panel/InlinePanelPageExpectedResult_8.html
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/html/panel/InlinePanelPageExpectedResult_8.html?rev=1085907&r1=1085906&r2=1085907&view=diff
==============================================================================
--- wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/html/panel/InlinePanelPageExpectedResult_8.html (original)
+++ wicket/trunk/wicket-core/src/test/java/org/apache/wicket/markup/html/panel/InlinePanelPageExpectedResult_8.html Sun Mar 27 10:43:59 2011
@@ -6,7 +6,7 @@
wicketAjaxDebugEnable=true;
/*-->]]>*/</script>
<script type="text/javascript" id="wicket-ajax-base-url"><!--/*--><![CDATA[/*><!--*/
-Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.markup.html.panel.InlinePanelPage_8?0";
+Wicket.Ajax.baseUrl="wicket/bookmarkable/org.apache.wicket.markup.html.panel.InlinePanelPage_8";
/*-->]]>*/</script>
</head><body>