You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by jd...@apache.org on 2010/11/27 12:55:52 UTC

svn commit: r1039658 - in /wicket/trunk/wicket/src: main/java/org/apache/wicket/markup/html/ main/java/org/apache/wicket/markup/html/panel/ test/java/org/apache/wicket/markup/html/panel/

Author: jdonnerstag
Date: Sat Nov 27 11:55:51 2010
New Revision: 1039658

URL: http://svn.apache.org/viewvc?rev=1039658&view=rev
Log:
fixed WICKET-2874: Copy attributes from wicket:panel to source tag
Issue: WICKET-2874

Added:
    wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/PanelPageExpectedResult_4.html
    wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/PanelPage_4.html
    wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/PanelPage_4.java
    wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/SimplePanel_4.html
    wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/SimplePanel_4.java
Modified:
    wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/WebMarkupContainerWithAssociatedMarkup.java
    wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/panel/Panel.java
    wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/PanelTest.java

Modified: wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/WebMarkupContainerWithAssociatedMarkup.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/WebMarkupContainerWithAssociatedMarkup.java?rev=1039658&r1=1039657&r2=1039658&view=diff
==============================================================================
--- wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/WebMarkupContainerWithAssociatedMarkup.java (original)
+++ wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/WebMarkupContainerWithAssociatedMarkup.java Sat Nov 27 11:55:51 2010
@@ -54,6 +54,27 @@ public class WebMarkupContainerWithAssoc
 	}
 
 	/**
+	 * @see org.apache.wicket.Component#onComponentTag(org.apache.wicket.markup.ComponentTag)
+	 */
+	@Override
+	protected void onComponentTag(ComponentTag tag)
+	{
+		// Copy attributes from <wicket:panel> to the "calling" tag
+		IMarkupFragment markup = getMarkup(null);
+		ComponentTag panelTag = (ComponentTag)markup.get(0);
+		for (String key : panelTag.getAttributes().keySet())
+		{
+			// exclude "wicket:XX" attributes
+			if (key.startsWith(markup.getMarkupResourceStream().getWicketNamespace() + ":") == false)
+			{
+				tag.append(key, panelTag.getAttribute(key), ", ");
+			}
+		}
+
+		super.onComponentTag(tag);
+	}
+
+	/**
 	 * @see org.apache.wicket.Component#renderHead(org.apache.wicket.markup.html.internal.HtmlHeaderContainer)
 	 */
 	@Override

Modified: wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/panel/Panel.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/panel/Panel.java?rev=1039658&r1=1039657&r2=1039658&view=diff
==============================================================================
--- wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/panel/Panel.java (original)
+++ wicket/trunk/wicket/src/main/java/org/apache/wicket/markup/html/panel/Panel.java Sat Nov 27 11:55:51 2010
@@ -106,13 +106,6 @@ public abstract class Panel extends WebM
 			// <span wicket:id="myPanel">...</span>
 			tag.setType(XmlTag.OPEN);
 		}
-
-// IMarkupFragment markup = getMarkup(null);
-// ComponentTag panelTag = (ComponentTag)markup.get(0);
-// for (String key : panelTag.getAttributes().keySet())
-// {
-// tag.append(key, panelTag.getAttribute(key), ", ");
-// }
 		super.onComponentTag(tag);
 	}
 

Added: wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/PanelPageExpectedResult_4.html
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/PanelPageExpectedResult_4.html?rev=1039658&view=auto
==============================================================================
--- wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/PanelPageExpectedResult_4.html (added)
+++ wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/PanelPageExpectedResult_4.html Sat Nov 27 11:55:51 2010
@@ -0,0 +1,21 @@
+<!--
+    ====================================================================
+    Licensed under the Apache License, Version 2.0 (the "License");
+    you may not use this file except in compliance with the License.
+    You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+<html xmlns:wicket>
+<body>
+  <span wicket:id="myPanel3" param1="xxx"><wicket:panel param1="xxx">
+  test 
+</wicket:panel></span>
+</body>
+</html>

Added: wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/PanelPage_4.html
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/PanelPage_4.html?rev=1039658&view=auto
==============================================================================
--- wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/PanelPage_4.html (added)
+++ wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/PanelPage_4.html Sat Nov 27 11:55:51 2010
@@ -0,0 +1,19 @@
+<!--
+    ====================================================================
+    Licensed under the Apache License, Version 2.0 (the "License");
+    you may not use this file except in compliance with the License.
+    You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+    Unless required by applicable law or agreed to in writing, software
+    distributed under the License is distributed on an "AS IS" BASIS,
+    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+    See the License for the specific language governing permissions and
+    limitations under the License.
+-->
+<html xmlns:wicket>
+<body>
+  <span wicket:id="myPanel3">panel</span>
+</body>
+</html>

Added: wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/PanelPage_4.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/PanelPage_4.java?rev=1039658&view=auto
==============================================================================
--- wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/PanelPage_4.java (added)
+++ wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/PanelPage_4.java Sat Nov 27 11:55:51 2010
@@ -0,0 +1,40 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.wicket.markup.html.panel;
+
+import org.apache.wicket.markup.html.WebPage;
+
+
+/**
+ * Mock page for testing.
+ * 
+ * @author Chris Turner
+ */
+public class PanelPage_4 extends WebPage
+{
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * Construct.
+	 * 
+	 */
+	public PanelPage_4()
+	{
+		Panel panel = new SimplePanel_4("myPanel3");
+		add(panel);
+	}
+}

Modified: wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/PanelTest.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/PanelTest.java?rev=1039658&r1=1039657&r2=1039658&view=diff
==============================================================================
--- wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/PanelTest.java (original)
+++ wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/PanelTest.java Sat Nov 27 11:55:51 2010
@@ -94,6 +94,14 @@ public class PanelTest extends WicketTes
 	/**
 	 * @throws Exception
 	 */
+	public void testPanel4() throws Exception
+	{
+		executeTest(PanelPage_4.class, "PanelPageExpectedResult_4.html");
+	}
+
+	/**
+	 * @throws Exception
+	 */
 	public void testInlinePanel() throws Exception
 	{
 		executeTest(InlinePanelPage_1.class, "InlinePanelPageExpectedResult_1.html");

Added: wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/SimplePanel_4.html
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/SimplePanel_4.html?rev=1039658&view=auto
==============================================================================
--- wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/SimplePanel_4.html (added)
+++ wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/SimplePanel_4.html Sat Nov 27 11:55:51 2010
@@ -0,0 +1,3 @@
+<wicket:panel param1="xxx">
+  test 
+</wicket:panel>
\ No newline at end of file

Added: wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/SimplePanel_4.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/SimplePanel_4.java?rev=1039658&view=auto
==============================================================================
--- wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/SimplePanel_4.java (added)
+++ wicket/trunk/wicket/src/test/java/org/apache/wicket/markup/html/panel/SimplePanel_4.java Sat Nov 27 11:55:51 2010
@@ -0,0 +1,38 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.wicket.markup.html.panel;
+
+
+/**
+ * Mock page for testing.
+ * 
+ * @author Chris Turner
+ */
+public class SimplePanel_4 extends Panel
+{
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * Construct.
+	 * 
+	 * @param id
+	 */
+	public SimplePanel_4(final String id)
+	{
+		super(id);
+	}
+}