You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by kn...@apache.org on 2006/11/02 23:34:17 UTC
svn commit: r470571 - in
/incubator/wicket/trunk/wicket/src/main/java/wicket: ./ ajax/ behavior/
Author: knopp
Date: Thu Nov 2 14:34:15 2006
New Revision: 470571
URL: http://svn.apache.org/viewvc?view=rev&rev=470571
Log:
Added support for <wicket:link> in header contribution,
Header contribution fixes,
Renamed IBehavior.detachModel to IBehavior.detach
Modified:
incubator/wicket/trunk/wicket/src/main/java/wicket/AttributeModifier.java
incubator/wicket/trunk/wicket/src/main/java/wicket/Component.java
incubator/wicket/trunk/wicket/src/main/java/wicket/ajax/AjaxRequestTarget.java
incubator/wicket/trunk/wicket/src/main/java/wicket/ajax/wicket-ajax.js
incubator/wicket/trunk/wicket/src/main/java/wicket/behavior/AbstractBehavior.java
incubator/wicket/trunk/wicket/src/main/java/wicket/behavior/IBehavior.java
incubator/wicket/trunk/wicket/src/main/java/wicket/behavior/StringHeaderContributor.java
Modified: incubator/wicket/trunk/wicket/src/main/java/wicket/AttributeModifier.java
URL: http://svn.apache.org/viewvc/incubator/wicket/trunk/wicket/src/main/java/wicket/AttributeModifier.java?view=diff&rev=470571&r1=470570&r2=470571
==============================================================================
--- incubator/wicket/trunk/wicket/src/main/java/wicket/AttributeModifier.java (original)
+++ incubator/wicket/trunk/wicket/src/main/java/wicket/AttributeModifier.java Thu Nov 2 14:34:15 2006
@@ -186,7 +186,7 @@
* the model that initiates the detachement
*/
@Override
- public final void detachModel(Component component)
+ public final void detach(Component component)
{
if (replaceModel != null)
{
Modified: incubator/wicket/trunk/wicket/src/main/java/wicket/Component.java
URL: http://svn.apache.org/viewvc/incubator/wicket/trunk/wicket/src/main/java/wicket/Component.java?view=diff&rev=470571&r1=470570&r2=470571
==============================================================================
--- incubator/wicket/trunk/wicket/src/main/java/wicket/Component.java (original)
+++ incubator/wicket/trunk/wicket/src/main/java/wicket/Component.java Thu Nov 2 14:34:15 2006
@@ -28,7 +28,6 @@
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
-import wicket.ajax.AjaxRequestTarget;
import wicket.annot.AnnotationUtils;
import wicket.annot.OnAfterRender;
import wicket.annot.OnAttach;
@@ -840,7 +839,7 @@
{
for (IBehavior behavior : behaviors)
{
- behavior.detachModel(this);
+ behavior.detach(this);
}
}
}
@@ -1940,23 +1939,8 @@
{
// Tell the page that the component rendered
getPage().componentRendered(this);
-
+
// notify the behaviors that component has been rendered
- renderedBehaviors();
- }
-
- /**
- * THIS IS WICKET INTERNAL ONLY. DO NOT USE IT.
- *
- * Notifies the behaviors that the component has been rendered. This is
- * decoupled from {@link #rendered()} because we don't want to call
- * <code>getPage().componentRendered(this)</code> every time. This method
- * is necessary for {@link AjaxRequestTarget} to be able to cleanup
- * component's behaviors after header contribution has been done (which is
- * separated from component render).
- */
- public final void renderedBehaviors()
- {
if (behaviors != null)
{
for (IBehavior behavior : behaviors)
@@ -1964,7 +1948,7 @@
behavior.rendered(this);
}
}
- }
+ }
/**
* Print to the web response what ever the component wants to contribute to
Modified: incubator/wicket/trunk/wicket/src/main/java/wicket/ajax/AjaxRequestTarget.java
URL: http://svn.apache.org/viewvc/incubator/wicket/trunk/wicket/src/main/java/wicket/ajax/AjaxRequestTarget.java?view=diff&rev=470571&r1=470570&r2=470571
==============================================================================
--- incubator/wicket/trunk/wicket/src/main/java/wicket/ajax/AjaxRequestTarget.java (original)
+++ incubator/wicket/trunk/wicket/src/main/java/wicket/ajax/AjaxRequestTarget.java Thu Nov 2 14:34:15 2006
@@ -509,8 +509,7 @@
encodingHeaderResponse.reset();
- component.renderHead(header);
- component.renderedBehaviors();
+ component.renderHead(header);
if (component instanceof MarkupContainer)
{
@@ -520,8 +519,7 @@
{
if (component.isVisible())
{
- component.renderHead(header);
- component.renderedBehaviors();
+ component.renderHead(header);
return CONTINUE_TRAVERSAL;
}
Modified: incubator/wicket/trunk/wicket/src/main/java/wicket/ajax/wicket-ajax.js
URL: http://svn.apache.org/viewvc/incubator/wicket/trunk/wicket/src/main/java/wicket/ajax/wicket-ajax.js?view=diff&rev=470571&r1=470570&r2=470571
==============================================================================
--- incubator/wicket/trunk/wicket/src/main/java/wicket/ajax/wicket-ajax.js (original)
+++ incubator/wicket/trunk/wicket/src/main/java/wicket/ajax/wicket-ajax.js Thu Nov 2 14:34:15 2006
@@ -817,7 +817,24 @@
for (var i = 0; i < rootNode.childNodes.length; i++) {
var node = rootNode.childNodes[i];
if (node.tagName != null) {
- var name = node.tagName.toLowerCase();
+ var name = node.tagName.toLowerCase();
+
+ if (name == "wicket:link") {
+ // it is a reference surrounded by wicket:link
+ // try to find content node
+
+ for (var j = 0; j < node.childNodes.length; ++j) {
+ var childNode = node.childNodes[j];
+ // try to find a regular node inside wicket:link
+
+ if (childNode.nodeType == 1) {
+ node = childNode;
+ name = node.tagName.toLowerCase();
+ break;
+ }
+ }
+ }
+
if (name == "link") {
this.processLink(steps, node);
} else if (name == "script") {
@@ -829,7 +846,7 @@
}
},
- processLink: function(steps, node) {
+ processLink: function(steps, node) {
steps.push(function(notify) {
if (Wicket.Head.containsElement(node, "href")) {
notify();
Modified: incubator/wicket/trunk/wicket/src/main/java/wicket/behavior/AbstractBehavior.java
URL: http://svn.apache.org/viewvc/incubator/wicket/trunk/wicket/src/main/java/wicket/behavior/AbstractBehavior.java?view=diff&rev=470571&r1=470570&r2=470571
==============================================================================
--- incubator/wicket/trunk/wicket/src/main/java/wicket/behavior/AbstractBehavior.java (original)
+++ incubator/wicket/trunk/wicket/src/main/java/wicket/behavior/AbstractBehavior.java Thu Nov 2 14:34:15 2006
@@ -48,9 +48,9 @@
}
/**
- * @see wicket.behavior.IBehavior#detachModel(Component)
+ * @see wicket.behavior.IBehavior#detach(Component)
*/
- public void detachModel(Component component)
+ public void detach(Component component)
{
}
Modified: incubator/wicket/trunk/wicket/src/main/java/wicket/behavior/IBehavior.java
URL: http://svn.apache.org/viewvc/incubator/wicket/trunk/wicket/src/main/java/wicket/behavior/IBehavior.java?view=diff&rev=470571&r1=470570&r2=470571
==============================================================================
--- incubator/wicket/trunk/wicket/src/main/java/wicket/behavior/IBehavior.java (original)
+++ incubator/wicket/trunk/wicket/src/main/java/wicket/behavior/IBehavior.java Thu Nov 2 14:34:15 2006
@@ -70,7 +70,7 @@
* @param component
* the component that initiates the detachement of this behavior
*/
- void detachModel(Component component);
+ void detach(Component component);
/**
* Called any time a component that has this behavior registered is
Modified: incubator/wicket/trunk/wicket/src/main/java/wicket/behavior/StringHeaderContributor.java
URL: http://svn.apache.org/viewvc/incubator/wicket/trunk/wicket/src/main/java/wicket/behavior/StringHeaderContributor.java?view=diff&rev=470571&r1=470570&r2=470571
==============================================================================
--- incubator/wicket/trunk/wicket/src/main/java/wicket/behavior/StringHeaderContributor.java (original)
+++ incubator/wicket/trunk/wicket/src/main/java/wicket/behavior/StringHeaderContributor.java Thu Nov 2 14:34:15 2006
@@ -151,10 +151,10 @@
}
/**
- * @see wicket.behavior.AbstractBehavior#detachModel(wicket.Component)
+ * @see wicket.behavior.AbstractBehavior#detach(wicket.Component)
*/
@Override
- public void detachModel(Component component)
+ public void detach(Component component)
{
contributor.contribution.detach();
}