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);
+       }
+}


Reply via email to