You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tapestry.apache.org by bw...@apache.org on 2006/05/09 00:04:53 UTC

svn commit: r405192 [1/2] - in /tapestry/tapestry4/trunk: contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/ framework/src/documentation/content/xdocs/tapestry/ComponentReference/ framework/src/java/org/apache/tapestry/compone...

Author: bwallace
Date: Mon May  8 15:04:50 2006
New Revision: 405192

URL: http://svn.apache.org/viewcvs?rev=405192&view=rev
Log:
[TAPESTRY-886] Ported fixed to 4.0 branch to tapestry4/trunk

Added:
    tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/CheckboxGroup.xml
    tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/ControlCheckbox.xml
    tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/ControlledCheckbox.xml
    tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/DumpObject.xml
    tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/SimpleTableColumnComponent.xml
    tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/SimpleTableColumnFormComponent.xml
    tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/Timeout.xml
    tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/XTile.xml
    tapestry/tapestry4/trunk/framework/src/java/org/apache/tapestry/valid/ValidationStrings_da.properties
    tapestry/tapestry4/trunk/framework/src/java/org/apache/tapestry/valid/ValidationStrings_nl.properties
    tapestry/tapestry4/trunk/src/documentation/resources/images/favicon.ico   (with props)
Modified:
    tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/MultiplePropertySelection.xml
    tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/Table.xml
    tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TableColumns.xml
    tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TableFormPages.xml
    tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TableFormRows.xml
    tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/Tree.xml
    tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeDataView.xml
    tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeNodeView.xml
    tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeTable.xml
    tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeTableDataView.xml
    tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeTableNodeViewDelegator.xml
    tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeView.xml
    tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/ActionLink.xml
    tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/Any.xml
    tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/DirectLink.xml
    tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/ExternalLink.xml
    tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/Form.xml
    tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/Insert.xml
    tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/LinkSubmit.xml
    tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/PageLink.xml
    tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/Radio.xml
    tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/RadioGroup.xml
    tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/RenderBlock.xml
    tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/Script.xml
    tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/ServiceLink.xml
    tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/TextField.xml
    tapestry/tapestry4/trunk/framework/src/java/org/apache/tapestry/components/Foreach.java
    tapestry/tapestry4/trunk/framework/src/java/org/apache/tapestry/components/RenderBlock.jwc
    tapestry/tapestry4/trunk/framework/src/java/org/apache/tapestry/components/RenderBody.jwc
    tapestry/tapestry4/trunk/framework/src/java/org/apache/tapestry/engine/EngineServiceLink.java
    tapestry/tapestry4/trunk/framework/src/java/org/apache/tapestry/engine/ExternalService.java
    tapestry/tapestry4/trunk/framework/src/java/org/apache/tapestry/form/DatePicker.jwc
    tapestry/tapestry4/trunk/framework/src/java/org/apache/tapestry/form/FormSupport.java
    tapestry/tapestry4/trunk/framework/src/java/org/apache/tapestry/form/validator/Required.java
    tapestry/tapestry4/trunk/framework/src/java/org/apache/tapestry/html/Body.java
    tapestry/tapestry4/trunk/framework/src/java/org/apache/tapestry/multipart/MultipartDecoderImpl.java
    tapestry/tapestry4/trunk/framework/src/java/org/apache/tapestry/multipart/ServletMultipartDecoder.java
    tapestry/tapestry4/trunk/src/documentation/content/xdocs/links.ent
    tapestry/tapestry4/trunk/src/documentation/content/xdocs/site.xml
    tapestry/tapestry4/trunk/src/documentation/skinconf.xml

Added: tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/CheckboxGroup.xml
URL: http://svn.apache.org/viewcvs/tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/CheckboxGroup.xml?rev=405192&view=auto
==============================================================================
--- tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/CheckboxGroup.xml (added)
+++ tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/CheckboxGroup.xml Mon May  8 15:04:50 2006
@@ -0,0 +1,110 @@
+<?xml version="1.0"?>
+<!-- 
+   Copyright 2005 The Apache Software Foundation
+
+   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.
+-->
+
+<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.2//EN" "./dtd/document-v12.dtd"
+[
+	<!ENTITY projectroot '../../'>
+	<!ENTITY % links.ent SYSTEM "../../links.ent">
+	%links.ent;
+]>
+<document>
+  <header>
+    <title>CheckboxGroup</title>
+  </header>
+  
+  <body>
+
+<p>
+	A component defining a group of checkboxes that will be controlled together.
+	Typically the ControlCheckbox and ControlledCheckbox components are placed
+	in the body of this component.
+</p>
+
+<p>
+  <strong>See also: &ControlCheckbox;, &ControlledCheckbox;</strong> 
+</p>
+
+<section>
+  <title>Parameters</title>
+  
+<table>
+	<tr> 
+    	<th>Name</th>
+	    <th>Type</th>
+	 	<th>Direction</th>
+	    <th>Required</th> 
+    	<th>Default</th>
+	    <th>Description</th>
+	</tr>
+
+    <tr>
+		<td colspan="6">No parameters defined.</td>
+    </tr>
+    	
+</table>  
+  
+<p>
+  Body: <strong>allowed</strong>
+</p>  
+
+<p>
+  Informal parameters: <strong>forbidden</strong>
+</p>
+
+<p>
+  Reserved parameters: <em>none</em>
+</p>
+
+</section>
+
+<section>
+  <title>Examples</title>
+  <p>Template</p>
+	<source><![CDATA[	
+<form jwcid="form">
+    <span jwcid="checkboxGroup">
+    	<input jwcid="controlCheckbox"/>	
+    		<input jwcid="controlledCheckbox1"/>
+    		<input jwcid="controlledCheckbox2"/>
+    		<input jwcid="controlledCheckbox3"/>                        
+    </span>    
+    ...
+</form>    
+	]]></source>
+		
+  <p>Specification</p>
+	<source><![CDATA[
+<property name="state1" persist="session" initial-value="false"/>
+<property name="state2" persist="session" initial-value="false"/>
+<property name="state3" persist="session" initial-value="false"/>        
+	
+   <component id="checkboxGroup" type="contrib:CheckboxGroup"/>    
+   <component id="controlCheckbox" type="contrib:ControlCheckbox"/>
+   
+<component id="controlledCheckbox1" type="contrib:ControlledCheckbox">
+	<binding name="value" value="state1"/>
+</component>   
+<component id="controlledCheckbox2" type="contrib:ControlledCheckbox">
+	<binding name="value" value="state2"/>
+</component> 
+<component id="controlledCheckbox3" type="contrib:ControlledCheckbox">
+	<binding name="value" value="state3"/>
+</component>  
+	]]></source>	
+</section>
+</body>
+</document>
\ No newline at end of file

Added: tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/ControlCheckbox.xml
URL: http://svn.apache.org/viewcvs/tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/ControlCheckbox.xml?rev=405192&view=auto
==============================================================================
--- tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/ControlCheckbox.xml (added)
+++ tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/ControlCheckbox.xml Mon May  8 15:04:50 2006
@@ -0,0 +1,119 @@
+<?xml version="1.0"?>
+<!-- 
+   Copyright 2005 The Apache Software Foundation
+
+   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.
+-->
+
+<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.2//EN" "./dtd/document-v12.dtd"
+[
+	<!ENTITY projectroot '../../'>
+	<!ENTITY % links.ent SYSTEM "../../links.ent">
+	%links.ent;
+]>
+<document>
+  <header>
+    <title>ControlCheckbox</title>
+  </header>
+  
+  <body>
+
+<p>
+	Creates a checkbox that will automatically select or deselect 
+	all controlled checkboxes in the checkbox group.
+</p>
+
+<p>
+  <strong>See also: &CheckboxGroup;, &ControlledCheckbox;</strong> 
+</p>
+
+<section>
+  <title>Parameters</title>
+  
+<table>
+  <tr> 
+    <th>Name</th>
+    <th>Type</th>
+	  <th>Direction</th>
+    <th>Required</th> 
+    <th>Default</th>
+    <th>Description</th>
+  </tr>
+  <tr> 
+    <td>group</td>
+    <td><link href="&apicontrib;/contrib/form/checkboxes/CheckboxGroup.html">CheckboxGroup</link></td>
+	  <td>in</td>
+    <td>no</td> 
+    <td>null</td>
+    <td>
+			If provided, it specifies the CheckboxGroup
+            this component belongs to. If it is not specified, then the component is a
+            a part of the CheckboxGroup that wraps it.
+            Please note that if this parameter is used, then the CheckboxGroup it refers to 
+            must either enclose the current component, or must be defined after it.    
+    </td>
+  </tr>
+	</table>
+  
+<p>
+  Body: <strong>removed</strong>
+</p>  
+
+<p>
+  Informal parameters: <strong>allowed</strong>
+</p>
+
+<p>
+  Reserved parameters: <em>type, onclick</em>
+</p>
+
+</section>
+
+<section>
+  <title>Examples</title>
+  <p>Template</p>
+	<source><![CDATA[	
+<form jwcid="form">
+    <span jwcid="checkboxGroup">
+    	<input jwcid="controlCheckbox"/>	
+    		<input jwcid="controlledCheckbox1"/>
+    		<input jwcid="controlledCheckbox2"/>
+    		<input jwcid="controlledCheckbox3"/>                        
+    </span>    
+    ...
+</form>    
+	]]></source>
+		
+  <p>Specification</p>
+	<source><![CDATA[
+<property name="state1" persist="session" initial-value="false"/>
+<property name="state2" persist="session" initial-value="false"/>
+<property name="state3" persist="session" initial-value="false"/>        
+	
+   <component id="checkboxGroup" type="contrib:CheckboxGroup"/>    
+   <component id="controlCheckbox" type="contrib:ControlCheckbox"/>
+   
+<component id="controlledCheckbox1" type="contrib:ControlledCheckbox">
+	<binding name="value" value="state1"/>
+</component>   
+<component id="controlledCheckbox2" type="contrib:ControlledCheckbox">
+	<binding name="value" value="state2"/>
+</component> 
+<component id="controlledCheckbox3" type="contrib:ControlledCheckbox">
+	<binding name="value" value="state3"/>
+</component>  
+	]]></source>	
+</section>
+
+</body>
+</document>
\ No newline at end of file

Added: tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/ControlledCheckbox.xml
URL: http://svn.apache.org/viewcvs/tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/ControlledCheckbox.xml?rev=405192&view=auto
==============================================================================
--- tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/ControlledCheckbox.xml (added)
+++ tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/ControlledCheckbox.xml Mon May  8 15:04:50 2006
@@ -0,0 +1,140 @@
+<?xml version="1.0"?>
+<!-- 
+   Copyright 2005 The Apache Software Foundation
+
+   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.
+-->
+
+<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.2//EN" "./dtd/document-v12.dtd"
+[
+	<!ENTITY projectroot '../../'>
+	<!ENTITY % links.ent SYSTEM "../../links.ent">
+	%links.ent;
+]>
+<document>
+  <header>
+    <title>ControlledCheckbox</title>
+  </header>
+  
+  <body>
+
+<p>
+	A checkbox whose state may be controlled by other checkboxes using JavaScript.
+	The checkbox rendered by this component may be automatically selected or deselected
+	by a ControlCheckbox within the same group.
+</p>
+
+<p>
+  <strong>See also: &CheckboxGroup;, &ControlCheckbox;</strong> 
+</p>
+
+<section>
+  <title>Parameters</title>
+  
+<table>
+  <tr> 
+    <th>Name</th>
+    <th>Type</th>
+	  <th>Direction</th>
+    <th>Required</th> 
+    <th>Default</th>
+    <th>Description</th>
+  </tr>
+  <tr> 
+    <td>value</td>
+    <td>boolean</td>
+	  <td>in/out</td>
+    <td>yes</td> 
+    <td></td>
+    <td>
+		Value editted by the component; read on render, updated on form submit. 
+		This sets the check attribute of the rendered element.    
+    </td>
+  </tr>
+  <tr> 
+    <td>disabled</td>
+    <td>boolean</td>
+	  <td>in</td>
+    <td>no</td> 
+    <td>false</td>
+    <td>
+		If true, then the checkbox will render as disabled and any input from the checkbox will be ignored.  
+    </td>
+  </tr> 
+  <tr> 
+    <td>group</td>
+    <td><link href="&apicontrib;/contrib/form/checkboxes/CheckboxGroup.html">CheckboxGroup</link></td>
+	  <td>in</td>
+    <td>no</td> 
+    <td>null</td>
+    <td>
+			If provided, it specifies the CheckboxGroup
+            this component belongs to. If it is not specified, then the component is a
+            a part of the CheckboxGroup that wraps it.
+            Please note that if this parameter is used, then the CheckboxGroup it refers to 
+            must either enclose the current component, or must be defined after it.    
+    </td>
+  </tr>   
+	</table>
+  
+<p>
+  Body: <strong>removed / allowed</strong>
+</p>  
+
+<p>
+  Informal parameters: <strong>allowed  / forbidden</strong>
+</p>
+
+<p>
+  Reserved parameters: <em>none</em>
+</p>
+
+</section>
+
+<section>
+  <title>Examples</title>
+  <p>Template</p>
+	<source><![CDATA[	
+<form jwcid="form">
+    <span jwcid="checkboxGroup">
+    	<input jwcid="controlCheckbox"/>	
+    		<input jwcid="controlledCheckbox1"/>
+    		<input jwcid="controlledCheckbox2"/>
+    		<input jwcid="controlledCheckbox3"/>                        
+    </span>    
+    ...
+</form>    
+	]]></source>
+		
+  <p>Specification</p>
+	<source><![CDATA[
+<property name="state1" persist="session" initial-value="false"/>
+<property name="state2" persist="session" initial-value="false"/>
+<property name="state3" persist="session" initial-value="false"/>        
+	
+   <component id="checkboxGroup" type="contrib:CheckboxGroup"/>    
+   <component id="controlCheckbox" type="contrib:ControlCheckbox"/>
+   
+<component id="controlledCheckbox1" type="contrib:ControlledCheckbox">
+	<binding name="value" value="state1"/>
+</component>   
+<component id="controlledCheckbox2" type="contrib:ControlledCheckbox">
+	<binding name="value" value="state2"/>
+</component> 
+<component id="controlledCheckbox3" type="contrib:ControlledCheckbox">
+	<binding name="value" value="state3"/>
+</component>  
+	]]></source>	
+</section>
+</body>
+</document>
\ No newline at end of file

Added: tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/DumpObject.xml
URL: http://svn.apache.org/viewcvs/tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/DumpObject.xml?rev=405192&view=auto
==============================================================================
--- tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/DumpObject.xml (added)
+++ tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/DumpObject.xml Mon May  8 15:04:50 2006
@@ -0,0 +1,89 @@
+<?xml version="1.0"?>
+<!-- 
+   Copyright 2005 The Apache Software Foundation
+
+   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.
+-->
+
+<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.2//EN" "./dtd/document-v12.dtd"
+[
+	<!ENTITY projectroot '../../'>
+	<!ENTITY % links.ent SYSTEM "../../links.ent">
+	%links.ent;
+]>
+<document>
+  <header>
+    <title>DumpObject</title>
+  </header>
+  
+  <body>
+
+<p>
+	Dumps out an object's serialized representation in a mix of hex and ascii. The output is
+    formatted for a fixed width font and should typically be enclosed in &lt;pre&gt; tags.
+</p>
+
+<section>
+  <title>Parameters</title>
+  
+<table>
+	<tr> 
+    	<th>Name</th>
+	    <th>Type</th>
+	 	<th>Direction</th>
+	    <th>Required</th> 
+    	<th>Default</th>
+	    <th>Description</th>
+	</tr>
+
+    <tr>
+		<td>object</td>
+		<td>Object</td> 
+		<td>in</td>
+		<td>yes</td>
+		<td></td>
+		<td>
+			The object to be displayed as HTML.
+		</td>
+    </tr>
+    	
+</table>
+  
+<p>
+  Body: <strong>removed</strong>
+</p>  
+
+<p>
+  Informal parameters: <strong>allowed</strong>
+</p>
+
+<p>
+  Reserved parameters: <em>none</em>
+</p>
+
+</section>
+
+<section>
+  <title>Examples</title>
+	<source><![CDATA[
+<span jwcid="@contrib:DumpObject" object="ognl:new java.util.Date()"/>
+	]]></source>
+<p>and the output will be like this:</p>
+	<source><![CDATA[
+0000: aced0005 7372000e 6a617661 2e757469  |....sr..java.uti|
+0010: 6c2e4461 7465686a 81014b59 74190300  |l.Datehj..KYt...|
+0020: 00787077 08000001 0adac264 3d78      |.xpw.......d=x  |	
+	]]></source>	
+</section>
+</body>
+</document>
\ No newline at end of file

Modified: tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/MultiplePropertySelection.xml
URL: http://svn.apache.org/viewcvs/tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/MultiplePropertySelection.xml?rev=405192&r1=405191&r2=405192&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/MultiplePropertySelection.xml (original)
+++ tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/MultiplePropertySelection.xml Mon May  8 15:04:50 2006
@@ -53,7 +53,7 @@
   </tr>
     <tr>
       <td>selectedList</td>
-      <td>java.util.List</td> <td>in-out</td> <td>yes</td> <td>&nbsp;</td>
+      <td>java.util.Collection</td> <td>in-out</td> <td>yes</td> <td>&nbsp;</td>
       <td>
         The property to set. During rendering, this property is read, and sets the default value of the options in the select. When the form is submitted, list is cleared, then has each selected option added to it.
       </td>

Added: tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/SimpleTableColumnComponent.xml
URL: http://svn.apache.org/viewcvs/tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/SimpleTableColumnComponent.xml?rev=405192&view=auto
==============================================================================
--- tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/SimpleTableColumnComponent.xml (added)
+++ tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/SimpleTableColumnComponent.xml Mon May  8 15:04:50 2006
@@ -0,0 +1,76 @@
+<?xml version="1.0"?>
+<!-- 
+   Copyright 2005 The Apache Software Foundation
+
+   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.
+-->
+
+<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.2//EN" "./dtd/document-v12.dtd"
+[
+	<!ENTITY projectroot '../../'>
+	<!ENTITY % links.ent SYSTEM "../../links.ent">
+	%links.ent;
+]>
+<document>
+  <header>
+    <title>SimpleTableColumnComponent</title>
+  </header>
+  
+  <body>
+
+<p> 
+ A component that renders the default column header.
+</p>
+<p>
+ If the current column is sortable, it renders the header as a link.
+ Clicking on the link causes the table to be sorted on that column.
+ Clicking on the link again causes the sorting order to be reversed.
+</p>
+
+ <note>
+ 	The column header rendered by this component has two main css class definitions. The embedded
+ 	table html markup within each <code>td</code> element for a sorted column has the class <code>tableHeaderImage</code>. 
+ 	The image used to sort table columns has an embedded style class definition for <code>tableHeaderImage</code>
+ 	that defines <code>align:center</code>.
+ 	<br/>
+ 	
+ 	You may override these definitions with your own css rules. 
+ </note>
+
+<p>
+  <strong>See also: &Table;, &TableView;, &TablePages;, &TableRows;, &TableValues;, &TableColumns;</strong> 
+</p>
+
+<section>
+  <title>Parameters</title>
+
+<p>  
+  <em>No parameters</em>
+</p>
+
+<p>
+  Body: <strong>removed</strong>
+</p>  
+
+<p>
+  Informal parameters: <strong>allowed</strong>
+</p>
+
+<p>
+  Reserved parameters: <em>none</em>
+</p>
+
+</section>
+
+</body>
+</document>
\ No newline at end of file

Added: tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/SimpleTableColumnFormComponent.xml
URL: http://svn.apache.org/viewcvs/tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/SimpleTableColumnFormComponent.xml?rev=405192&view=auto
==============================================================================
--- tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/SimpleTableColumnFormComponent.xml (added)
+++ tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/SimpleTableColumnFormComponent.xml Mon May  8 15:04:50 2006
@@ -0,0 +1,82 @@
+<?xml version="1.0"?>
+<!-- 
+   Copyright 2005 The Apache Software Foundation
+
+   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.
+-->
+
+<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.2//EN" "./dtd/document-v12.dtd"
+[
+	<!ENTITY projectroot '../../'>
+	<!ENTITY % links.ent SYSTEM "../../links.ent">
+	%links.ent;
+]>
+<document>
+  <header>
+    <title>SimpleTableColumnFormComponent</title>
+  </header>
+  
+  <body>
+
+<p> 
+ A component that renders the default column header in a form.
+</p>
+
+<p>
+ If the current column is sortable, it renders the header as a link.
+ Clicking on the link causes the table to be sorted on that column.
+ Clicking on the link again causes the sorting order to be reversed.
+</p>
+
+<p>
+ This component renders links that cause the form to be submitted. 
+ This ensures that the updated data in the other form fields is preserved. 
+</p>
+
+ <note>
+ 	The column header rendered by this component has two main css class definitions. The embedded
+ 	table html markup within each <code>td</code> element for a sorted column has the class <code>tableHeaderImage</code>. 
+ 	The image used to sort table columns has an embedded style class definition for <code>tableHeaderImage</code>
+ 	that defines <code>align:center</code>.
+ 	
+ 	<br/>
+ 	You may override these definitions with your own css rules. 
+ </note>
+
+<p>
+  <strong>See also: &Table;, &TableView;, &TablePages;, &TableRows;, &TableValues;, &TableColumns;</strong> 
+</p>
+
+<section>
+  <title>Parameters</title>
+
+<p>  
+  <em>No parameters</em>
+</p>
+
+<p>
+  Body: <strong>removed</strong>
+</p>  
+
+<p>
+  Informal parameters: <strong>allowed</strong>
+</p>
+
+<p>
+  Reserved parameters: <em>none</em>
+</p>
+
+</section>
+
+</body>
+</document>
\ No newline at end of file

Modified: tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/Table.xml
URL: http://svn.apache.org/viewcvs/tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/Table.xml?rev=405192&r1=405191&r2=405192&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/Table.xml (original)
+++ tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/Table.xml Mon May  8 15:04:50 2006
@@ -27,12 +27,139 @@
   </header>
   
   <body>
-
-<p> <strong>THIS PAGE UNDER CONSTRUCTION</strong>
+<p>
+  Provides a HTML &lt;table&gt; element. The Table component is a facade component 
+  in the Table family. Table allows you to present a sortable and pagable table 
+  simply and easily by using only this one component.
+</p>
+<p>
+ The Table component allows you to manipulate its appearance by allowing you 
+ to define the 'class' attributes of its internal elements. If you want to change 
+ the structure of the table, however, you can instead build your own using the 
+ lower level components &TableView;, &TablePages;, &TableColumns;, &TableRows;, and &TableValues;.
+</p>
+ <p>
+ The Table component delegates the handling of the table model and related
+ activities to the &TableView;, 
+ and more detailed information about the process can be found in the 
+ documentation of that class.
 </p>
+<p>
+   <strong>Providing the data</strong>
+</p>
+<p>
+  There are many ways to provide the component with the data it has to render, 
+  but here are the three major ones:
+</p>
+<ol>
+  <li> <p>The data is passed to the <code>source</code> parameter in the form of an array, 
+       a collection, or an iterator, and the table columns are defined using the 
+       <code>columns</code> parameter (see further for details). 
+       Both of these parameters will be evaluated at every request by default, 
+       so changes in the data or the table columns will be displayed immediately.
+       </p>
+      <p>
+         The example below uses this method.
+      </p>
+      <p>
+         This is the easiest and most straightforward approach. It has one performance limitation, 
+         however - if the table is sorting the data according to a given column, 
+         the sorting will be performed at every request. 
+         The next methods provide ways to resolve this possible performance issue.
+      </p>
+  </li>
+  <li>
+       <p>The data is passed to the <code>source</code> parameter via an object that
+       implements the <link href="&apicontrib;/contrib/table/model/IBasicTableModel.html"><code>IBasicTableModel</code></link>
+       interface. Through that interface you are given the sorting column (if any) and 
+       the numbers of the items that will be displayed on the current page. 
+       You then need to provide the component with the corresponding data.
+       </p>
+       <p>
+         This method allows you to perform the sorting in the database and load only the data 
+         that will be displayed on the current page 
+         (e.g. by using the ORDER BY, LIMIT, and OFFSET clauses in SQL)
+         and hence it could be far more efficient.
+       </p>
+  </li>
+  <li>
+      <p>All of the information (data, columns, state) is packaged in an
+<link href="&apicontrib;/contrib/table/model/ITableModel.html"><code>ITableModel</code></link>
+and is passed to the <code>tableModel</code> parameter.
+      </p>
+      <p>
+        This approach allows greatest flexibility, but is recommended only for advanced users of the Table components. 
+      </p>
+  </li>
+</ol>
+
+<p><strong>Defining the columns</strong></p>
 
 <p>
-  <strong>See also:</strong> 
+If you define the table columns using the <code>columns</code> parameter, you can either
+provide a list of <link href="&apicontrib;/contrib/table/model/ITableColumn.html"><code>ITableColumn</code></link>
+objects, each defining a column in the table, or you can define the columns using 
+a string that describes each column. 
+</p>
+<p>
+Please see the example below as a demonstration of the use of the latter approach.
+</p>
+<p>
+The string describing the columns must be formatted in the following way:
+</p>
+<ul>
+    <li>The column definitions in the string are separated by commas</li>
+        
+    <li>Each column definition must be of one of the following types:
+        <ul>
+            <li>id</li>
+            <li>id:expression</li>
+            <li>id:description:expression</li>
+        </ul>
+        <br/>
+        Here the <strong>id</strong> defines the identification of the column, the <strong>expression</strong> is an
+        OGNL expression that extracts the column value from the row object, and <strong>description</strong>
+        is the title of the column if it is not defined otherwise.
+        <p>
+        Each column definition may be prefixed by the <strong>!</strong> character, 
+        which identifies the column as non-sortable.
+        </p>
+        <p>
+        If defined, a Block with a name that is starts with the column id and 
+        ends with <em>ColumnValue</em> will be used to render the column values.
+        Similarly, a Block with a name that starts with the column id and 
+        ends with <em>ColumnHeader</em> will be used to render the column headers.
+        </p>
+        <p>
+        Finally, the title of the column will be taken from translation strings of the component
+        by using the column id as a key.
+        </p>
+        <p>
+        Please see the <code>LocaleSelection</code> component for examples.
+        </p>
+    </li>
+    <li>A column definition may also be of the type
+        <ul>
+            <li>=expression</li>
+        </ul>
+        <br/>
+        in which case it identifies an OGNL expression that returns an 
+        <link href="&apicontrib;/contrib/table/model/ITableColumn.html"><code>ITableColumn</code></link>
+        object defining the column.
+    </li>
+    <li>The full description string may be prefixed by the <strong>*</strong> character,
+        which means that the table is to be rendered within a form, and the 
+        column headers must submit the form if they are clickable (i.e. if the column is sortable).
+    </li>
+</ul>
+<p>
+Here is an example of the use of a description string to define columns:
+<code>
+  columns="locale:toString(), =currencyColumn, verbosity:Verbosity:currentRowVerbosity, !delete"
+</code>
+</p>
+<p>
+  <strong>See also: &TablePages;, &TableView;, &TableColumns;, &TableRows;, &TableValues;</strong> 
 </p>
 
 <section>
@@ -48,14 +175,242 @@
     <th>Description</th>
   </tr>
 
-	</table>
+ <tr>
+  <td>source</td>
+  <td><link href="&apijava;/docs/api/java/lang/Object.html">Object</link>[]<br/>
+      <link href="&apijava;/docs/api/java/util/Collection.html">Collection</link><br/>
+      <link href="&apijava;/docs/api/java/util/Iterator.html">Iterator</link><br/>
+      <link href="&apicontrib;/contrib/table/model/IBasicTableModel.html"><code>IBasicTableModel</code></link>
+  </td>
+  <td>in</td>
+  <td rowspan="3">You must provide either both <code>source</code> and <code>columns</code> parameters 
+      or the <code>tableModel</code> parameter</td>
+  <td>&nbsp;</td>
+  <td>
+    The data to be displayed by the component. This parameter must be used 
+    in combination with the <code>columns</code> parameter. 
+    The parameter must be an array of values, a collection, an iterator, 
+    or an object implementing the IBasicTableModel interface.
+  </td> 
+ </tr>
+
+ <tr>
+  <td>columns</td>
+  <td>
+      <link href="&apijava;/docs/api/java/lang/String.html">String</link><br/>
+      <link href="&apicontrib;/contrib/table/model/ITableColumnModel.html">ITableColumnModel</link><br/>
+      <link href="&apicontrib;/contrib/table/model/ITableColumn.html">ITableColumn[]</link><br/>
+      <link href="&apijava;/docs/api/java/util/List.html">List</link><br/>
+      <link href="&apijava;/docs/api/java/util/Iterator.html">Iterator</link>
+  </td>
+  <td>in</td>
+  <td>&nbsp;</td>
+  <td>
+    The table columns to be displayed. 
+    The parameter must be an array, a list, or an Iterator of ITableColumn objects,
+    an ITableColumnModel, or a String describing the columns (see documentation).
+  </td> 
+ </tr>
+
+ <tr>
+  <td>tableModel</td>
+  <td><link href="&apicontrib;/contrib/table/model/ITableModel.html"><code>ITableModel</code></link></td>
+  <td>in</td>
+  <td>&nbsp;</td>
+  <td>The <link href="&apicontrib;/contrib/table/model/ITableModel.html"><code>ITableModel</code></link> to be used to render the table. 
+      The model contains all of the information needed to render the table and gives greatest flexibility, 
+      but it may be harder to implement than simply using the <code>source</code> and <code>columns</code> parameters. 
+  </td> 
+ </tr>
+
+ <tr>
+  <td>tableSessionStateManager</td>
+  <td><link href="&apicontrib;/contrib/table/model/ITableSessionStateManager.html"><code>ITableSessionStateManager</code></link></td>
+  <td>in</td>
+  <td>no</td>
+  <td>A custom session state manager that reloads the data at each request if it is provided
+      via the <code>source</code> and <code>columns</code> parameters or stores all 
+      of it in the session if it is provided via the <code>tableModel</code> parameter</td>
+  <td>This is the session state manager that will control what part of the 
+      table model will be saved in the session state. 
+      It is then used to recreate the table model by
+      using what was saved in the session. 
+      <p> You can use one of the stock implementations of  
+      <link href="&apicontrib;/contrib/table/model/ITableSessionStateManager.html"><code>ITableSessionStateManager</code></link>
+      to determine the session state behaviour, or you can define your own.</p>
+  </td> 
+ </tr>
+
+ <tr>
+  <td>tableSessionStoreManager</td>
+  <td><link href="&apicontrib;/contrib/table/model/ITableSessionStoreManager.html"><code>ITableSessionStoreManager</code></link></td>
+  <td>in</td>
+  <td>no</td>
+  <td>null</td>
+  <td>Determines how the session state (returned by the session state manager)
+      will be saved in the session. If this parameter is null, then the state
+      will be saved as a persistent property. If it is not null, then the methods
+      of the interface will be used to save and load the state.
+  </td> 
+ </tr>
+
+ <tr>
+  <td>columnSettingsContainer</td>
+  <td><link href="&apicontrib;/IComponent.html"><code>IComponent</code></link></td>
+  <td>in</td>
+  <td>no</td>
+  <td>container</td>
+  <td>The container used to look up Blocks and messages when the source/columns mode
+      is being used.
+  </td> 
+ </tr>
+
+ <tr>
+  <td>row</td>
+  <td>Object</td>
+  <td>out</td>
+  <td>no</td>
+  <td>&nbsp;</td>
+  <td>The value object of the current row being rendered.</td> 
+ </tr>
+
+ <tr>
+  <td>column</td>
+  <td><link href="&apicontrib;/contrib/table/model/ITableColumn.html"><code>ITableColumn</code></link></td>
+  <td>out</td>
+  <td>no</td>
+  <td>&nbsp;</td>
+  <td>The object representing the current column being rendered.</td> 
+ </tr>
+
+ <tr>
+  <td>pageSize</td>
+  <td>
+      <code>int</code>
+  </td>
+  <td>in</td>
+  <td>no</td>
+  <td>10</td>
+  <td>
+      The number of records displayed per page. 
+      <p>
+      This parameter is only used with the <code>source</code> and <code>columns</code> parameters.
+      </p>
+  </td> 
+ </tr>
+
+ <tr>
+  <td>initialSortColumn</td>
+  <td>
+      <link href="&apijava;/docs/api/java/lang/String.html">String</link>
+  </td>
+  <td>in</td>
+  <td>no</td>
+  <td>null</td>
+  <td>
+      The id of the column to initially sort the table by. 
+      A value of <code>null</code> indicates no sorting.
+      <p>
+      This parameter is only used with the <code>source</code> and <code>columns</code> parameters.
+      </p>
+  </td> 
+ </tr>
+
+ <tr>
+  <td>initialSortOrder</td>
+  <td>
+      <code>boolean</code>
+  </td>
+  <td>in</td>
+  <td>no</td>
+  <td>false</td>
+  <td>
+      The order of the initial sorting.
+      Set this parameter to <code>false</code> to sort in an ascending order
+      and to <code>true</code> to sort in a descending one.
+      <p>
+      This parameter is only used with the <code>source</code> and <code>columns</code> parameters.
+      </p>
+  </td> 
+ </tr>
+
+ <tr>
+  <td>pagesDisplayed</td>
+  <td>int</td>
+  <td>in</td>
+  <td>no</td>
+  <td>7</td>
+  <td>Determines the maximum number of pages to be displayed in the page list
+      when the table has more than one page.
+      <p>For example, if the table has 20 pages, and 10 is the current page,
+      pages from 7 to 13 in the page list will be shown if this parameter has 
+      a value of 7.
+      </p>
+  </td> 
+ </tr>
+
+ <tr>
+  <td>arrowUpAsset</td>
+  <td><link href="&apicontrib;/IAsset.html"><code>IAsset</code></link></td>
+  <td>in</td>
+  <td>no</td>
+  <td>&nbsp;</td>
+  <td>The image to use to describe a column sorted in an ascending order.</td> 
+ </tr>
+
+ <tr>
+  <td>arrowDownAsset</td>
+  <td><link href="&apicontrib;/IAsset.html"><code>IAsset</code></link></td>
+  <td>in</td>
+  <td>no</td>
+  <td>&nbsp;</td>
+  <td>The image to use to describe a column sorted in a descending order.</td> 
+ </tr>
+
+ <tr>
+  <td>pagesClass</td>
+  <td><link href="&apijava;/docs/api/java/lang/String.html">String</link></td>
+  <td>in</td>
+  <td>no</td>
+  <td>&nbsp;</td>
+  <td>The CSS class of the table pages.</td> 
+ </tr>
+
+ <tr>
+  <td>columnsClass</td>
+  <td><link href="&apijava;/docs/api/java/lang/String.html">String</link></td>
+  <td>in</td>
+  <td>no</td>
+  <td>&nbsp;</td>
+  <td>The CSS class of the table columns.</td> 
+ </tr>
+
+ <tr>
+  <td>rowsClass</td>
+  <td><link href="&apijava;/docs/api/java/lang/String.html">String</link></td>
+  <td>in</td>
+  <td>no</td>
+  <td>&nbsp;</td>
+  <td>The CSS class of the table rows.</td> 
+ </tr>
+
+ <tr>
+  <td>valuesClass</td>
+  <td><link href="&apijava;/docs/api/java/lang/String.html">String</link></td>
+  <td>in</td>
+  <td>no</td>
+  <td>&nbsp;</td>
+  <td>The CSS class of the table values.</td> 
+ </tr>
+
+  </table>
   
 <p>
-  Body: <strong>removed / allowed</strong>
+  Body: <strong>removed</strong>
 </p>  
 
 <p>
-  Informal parameters: <strong>allowed  / forbidden</strong>
+  Informal parameters: <strong>allowed</strong>
 </p>
 
 <p>
@@ -66,6 +421,24 @@
 
 <section>
   <title>Examples</title>
+
+<p>
+You can find examples in the Tutorial 
+as part of the Workbench application under the "Table" tab. 
+</p>
+<p>That page consists of two components -- the <code>LocaleList</code> component and the
+<code>LocaleSelection</code> component. </p>
+<p>The <code>LocaleList</code> component allows you to view all 
+Locales in a table (similar to the example above), as well as to choose Locales 
+from the table and add them to your "selection". </p>
+<p>The <code>LocaleSelection</code> component displays the selected 
+Locales and provides additional information about them. It also allows Locales 
+to be removed from the selection. </p>
+<p>Even though the two components utilizing the Table are placed on a single 
+page, they can operate without any interference from each other with no effort 
+at all on part of the developer -- each table can be sorted independently, for 
+example. This is a good illustration of the power of Tapestry's component 
+approach. </p>
 
 </section>
 </body>

Modified: tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TableColumns.xml
URL: http://svn.apache.org/viewcvs/tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TableColumns.xml?rev=405192&r1=405191&r2=405192&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TableColumns.xml (original)
+++ tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TableColumns.xml Mon May  8 15:04:50 2006
@@ -41,18 +41,15 @@
  The headers are wrapped in 'th' tags by default.
 </p>
 
- <info>
-    <p>
+ <note>
  	The table header rendered by this component has two main css class definitions. The embedded
  	table html markup within each <code>th</code> element has the class <code>tableHeaderImage</code>. 
  	The image used to sort table columns has an embedded style class definition for <code>tableHeaderImage</code>
  	that defines <code>align:center</code>.
- 	</p>
- 	
- 	<p>
- 	You may override these definitions with your own css rules. 
- 	</p>
- </info>
+ 	<br/>
+    
+ 	You may override these definitions with your own css rules.
+ </note>
 
 <p>
   <strong>See also: &Table;, &TableView;, &TablePages;, &TableRows;, &TableValues;</strong> 

Modified: tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TableFormPages.xml
URL: http://svn.apache.org/viewcvs/tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TableFormPages.xml?rev=405192&r1=405191&r2=405192&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TableFormPages.xml (original)
+++ tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TableFormPages.xml Mon May  8 15:04:50 2006
@@ -28,11 +28,18 @@
   
   <body>
 
-<p> <strong>THIS PAGE UNDER CONSTRUCTION</strong>
+<p>
+        A version of &TablePages; that is designed for operation in a form. 
+        It is a low level Table component that renders the pages in the table. 
+        This component must be wrapped by &TableView;. 
+</p>
+<p>    
+    The component generates a list of pages in the &Table; centered around the current one and 
+    allows you to navigate to other pages. 
 </p>
 
 <p>
-  <strong>See also:</strong> 
+  <strong>See also: &Table;, &TablePages;, &TableView;, &TableColumns;, &TableRows;, &TableValues;</strong> 
 </p>
 
 <section>
@@ -48,14 +55,29 @@
     <th>Description</th>
   </tr>
 
+    <tr>
+      <td>pagesDisplayed</td>
+      <td>int</td>
+      <td>auto</td>
+      <td>no</td>
+      <td>7</td>
+
+      <td>Determines the maximum number of pages to be displayed in the page list 
+          when the table has more than one page.
+          <br/>
+          For example, if the table has 20 pages, and 10 is the current page, 
+          pages from 7 to 13 in the page list will be shown 
+          if this parameter has a value of 7. </td>
+    </tr>
+    
 	</table>
   
 <p>
-  Body: <strong>removed / allowed</strong>
+  Body: <strong>removed</strong>
 </p>  
 
 <p>
-  Informal parameters: <strong>allowed  / forbidden</strong>
+  Informal parameters: <strong>allowed</strong>
 </p>
 
 <p>
@@ -64,9 +86,5 @@
 
 </section>
 
-<section>
-  <title>Examples</title>
-
-</section>
 </body>
 </document>

Modified: tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TableFormRows.xml
URL: http://svn.apache.org/viewcvs/tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TableFormRows.xml?rev=405192&r1=405191&r2=405192&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TableFormRows.xml (original)
+++ tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TableFormRows.xml Mon May  8 15:04:50 2006
@@ -1,6 +1,6 @@
 <?xml version="1.0"?>
 <!-- 
-   Copyright 2005 The Apache Software Foundation
+   Copyright 2005, 2006 The Apache Software Foundation
 
    Licensed under the Apache License, Version 2.0 (the "License");
    you may not use this file except in compliance with the License.
@@ -27,12 +27,16 @@
   </header>
   
   <body>
-
-<p> <strong>THIS PAGE UNDER CONSTRUCTION</strong>
-</p>
+  <p>
+        A version of the TableRows designed for operation in a form. 
+        This is a low level Table component that generates the rows of 
+        the current page in the table. Each row is stored as a hidden value 
+        in the form, which eliminates the chance of a stale link during rewinding. 
+        This component must be wrapped by TableView. 
+  </p>
 
 <p>
-  <strong>See also:</strong> 
+  <strong>See also: &TableRows;</strong> 
 </p>
 
 <section>
@@ -48,14 +52,47 @@
     <th>Description</th>
   </tr>
 
-	</table>
-  
+	<tr>
+    <td>row</td>
+    <td>Object</td>
+	  <td>custom</td>
+	  <td>no</td>
+	  <td>&nbsp;</td>
+    <td>
+      The value object of the row currently being rendered.
+    </td>
+  </tr>
+	
+	<tr>
+    <td>convertor</td>
+    <td><link href="&apicontrib;/contrib/table/model/IPrimaryKeyConvertor.html">IPrimaryKeyConvertor</link></td>
+	  <td>custom</td>
+	  <td>no</td>
+	  <td>null</td>
+    <td>
+        An interface defining how the items iterated upon by this component 
+        will be stored in the form as Hidden values. This interface allows only 
+        the primary key of the items to be stored, rather than the whole item.
+    </td>
+  </tr>
+	
+	<tr>
+    <td>element</td>
+    <td>String</td>
+	  <td>in</td>
+	  <td>no</td>
+	  <td>tr</td>
+    <td>
+      The tag to use to wrap the rows in, 'tr' by default.
+    </td>
+  </tr>
+</table>	
 <p>
-  Body: <strong>removed / allowed</strong>
+  Body: <strong>allowed</strong>
 </p>  
 
 <p>
-  Informal parameters: <strong>allowed  / forbidden</strong>
+  Informal parameters: <strong>allowed</strong>
 </p>
 
 <p>
@@ -64,9 +101,5 @@
 
 </section>
 
-<section>
-  <title>Examples</title>
-
-</section>
 </body>
 </document>

Added: tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/Timeout.xml
URL: http://svn.apache.org/viewcvs/tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/Timeout.xml?rev=405192&view=auto
==============================================================================
--- tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/Timeout.xml (added)
+++ tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/Timeout.xml Mon May  8 15:04:50 2006
@@ -0,0 +1,161 @@
+<?xml version="1.0"?>
+<!-- 
+   Copyright 2006 The Apache Software Foundation
+
+   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.
+-->
+
+<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.2//EN" "./dtd/document-v12.dtd"
+[
+	<!ENTITY projectroot '../../'>
+	<!ENTITY % links.ent SYSTEM "../../links.ent">
+	%links.ent;
+]>
+<document>
+  <header>
+    <title>Timeout</title>
+  </header>
+  
+  <body>
+
+<p>
+        Displays a message to the user when a certain amount of time remains
+        to the expiration of the session.
+</p>
+
+<section>
+  <title>Parameters</title>
+  
+<table>
+	<tr> 
+    	<th>Name</th>
+	    <th>Type</th>
+	 	<th>Direction</th>
+	    <th>Required</th> 
+    	<th>Default</th>
+	    <th>Description</th>
+	</tr>
+
+    <tr>
+		<td>warningTime</td>
+		<td>int</td> 
+		<td>in</td>
+		<td>no</td>
+		<td>300</td>
+		<td>
+       The number of seconds before session expiration when a warning message will appear.
+		</td>
+    </tr>
+    	
+    <tr>
+		<td>autoProlongTime</td>
+		<td>int</td> 
+		<td>in</td>
+		<td>no</td>
+		<td>900</td>
+		<td>
+        The number of seconds before session expiration when the session 
+        will be automatically prolonged upon user activity.
+		</td>
+    </tr>
+    	
+    <tr>
+		<td>warningMessage</td>
+		<td>String</td> 
+		<td>in</td>
+		<td>no</td>
+		<td>The connection was inactive for more than {0} minutes. Your session will expire at {1}.\\n Please click OK to continue your work or CANCEL to close the session.</td>
+		<td>
+        The warning message that will appear when the session is about to exipre.
+        Here {0} is replaced by the number of minutes that remain until expiration and 
+        {1} is replaced with the time when the expiration will occur.
+		</td>
+    </tr>
+    	
+    <tr>
+		<td>expirationMessage</td>
+		<td>String</td> 
+		<td>in</td>
+		<td>no</td>
+		<td>Your session has expired. Please log in again.</td>
+		<td>
+        The message that will appear when the session exipres and
+        the user needs to log in again.
+		</td>
+    </tr>
+    	
+    <tr>
+		<td>disableWarning</td>
+		<td>boolean</td> 
+		<td>in</td>
+		<td>no</td>
+		<td>false</td>
+		<td>
+        Do not display a warning message after 'warningTime' seconds.
+		</td>
+    </tr>
+    	
+    <tr>
+		<td>disableAutoProlong</td>
+		<td>boolean</td> 
+		<td>in</td>
+		<td>no</td>
+		<td>false</td>
+		<td>
+        Disable the automatic prolonging of a session after 'autoProlongTime' seconds
+        upon user activity.
+		</td>
+    </tr>
+    	
+    <tr>
+		<td>expirationFunction</td>
+		<td>String</td> 
+		<td>in</td>
+		<td>no</td>
+		<td>null</td>
+		<td>
+        The JavaScript function that will be invoked when the session expires.
+		</td>
+    </tr>
+    	
+</table>
+  
+<p>
+  Body: <strong>removed</strong>
+</p>  
+
+<p>
+  Informal parameters: <strong>forbidden</strong>
+</p>
+
+<p>
+  Reserved parameters: <em>none</em>
+</p>
+
+</section>
+
+<section>
+  <title>Examples</title>
+	<source><![CDATA[
+<html>
+  <head>
+    <title>Timeout Example</title>
+  </head>
+  <body>
+    <span jwcid="@contrib:Timeout" warningTime="100"/>
+  </body>
+</html>
+	]]></source>
+</section>
+</body>
+</document>
\ No newline at end of file

Modified: tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/Tree.xml
URL: http://svn.apache.org/viewcvs/tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/Tree.xml?rev=405192&r1=405191&r2=405192&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/Tree.xml (original)
+++ tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/Tree.xml Mon May  8 15:04:50 2006
@@ -28,11 +28,21 @@
   
   <body>
 
-<p> <strong>THIS PAGE UNDER CONSTRUCTION</strong>
+<p> Renders hierarchical data as a tree.
 </p>
 
 <p>
-  <strong>See also:</strong> 
+	The Tree component uses the lower level components 
+	<link href="&apicontrib;/contrib/tree/components/TreeView.html">TreeView</link>
+	(handles the tree model),
+	<link href="&apicontrib;/contrib/tree/components/TreeDataView.html">TreeDataView</link>
+	(handles the tree data),
+	<link href="&apicontrib;/contrib/tree/components/TreeNodeView.html">TreeNodeView</link>
+	(handles the presentation of the data).				
+</p>	  	  
+
+<p>
+  <strong>See also: &TreeView;, &TreeDataView;, &TreeNodeView;</strong> 
 </p>
 
 <section>
@@ -42,20 +52,125 @@
   <tr> 
     <th>Name</th>
     <th>Type</th>
-	  <th>Direction</th>
+	<th>Direction</th>
     <th>Required</th> 
     <th>Default</th>
     <th>Description</th>
   </tr>
+	
+	<tr>
+      <td>sessionStateManager</td>
+      <td>
+		  <link href="&apicontrib;/contrib/tree/model/ITreeSessionStateManager.html">ITreeSessionStateManager</link>
+	  </td>
+	  <td>custom</td>
+	  <td>no</td>
+	  <td>&nbsp;</td>
+      <td>
+        Manages the state of the tree (i.e. which nodes are open, closed or selected).
+      </td>
+    </tr>
+	
+	<tr>
+      <td>sessionStoreManager</td>
+      <td>
+		  <link href="&apicontrib;/contrib/tree/model/ISessionStoreManager.html">ISessionStoreManager</link>
+	  </td>
+	  <td>custom</td>
+	  <td>no</td>
+	  <td>&nbsp;</td>
+      <td>
+        Allows storing the tree (or parts of it) to the session.
+      </td>
+    </tr>
+	
+	<tr>
+      <td>treeModel</td>
+      <td>
+		  <link href="&apicontrib;/contrib/tree/model/ITreeModel.html">ITreeModel</link>
+	  </td>
+	  <td>custom</td>
+	  <td>yes</td>
+	  <td>&nbsp;</td>
+      <td>
+        Defines a model that can provide the nodes of the tree.
+      </td>
+    </tr>
+	
+	<tr>
+      <td>treeStateListener</td>
+      <td>
+		  <link href="&apicontrib;/contrib/tree/model/ITreeStateListener.html">ITreeStateListener</link>
+	  </td>
+	  <td>custom</td>
+	  <td>no</td>
+	  <td>&nbsp;</td>
+      <td>
+        If specified, this object will receive events generated by the tree. 
+		  Such events are: SELECTED_NODE_CHANGED, NODE_EXPANDED and NODE_COLLAPSED.
+      </td>
+    </tr>
+	
+	<tr>
+      <td>nodeRenderFactory</td>
+      <td>
+		  <link href="&apicontrib;/contrib/tree/components/INodeRenderFactory.html">INodeRenderFactory</link>
+	  </td>
+	  <td>custom</td>
+	  <td>no</td>
+	  <td>(<link href="&apicontrib;/contrib/tree/simple/SimpleNodeRenderFactory.html">SimpleNodeRenderFactory</link>)</td>
+      <td>
+        Allows custom rendering of each node.
+        <p>This parameter defines a factory responsible for creating <link href="&apiroot;/IRender.html">IRender</link> instances
+		which will be used to perform the actual render of each node.</p>
+		  <p>The default factory returns <link href="&apiroot;/valid/RenderString.html">RenderString</link> instances
+			  that output each node's <code>toString()</code>.
+		  </p>		  
+      </td>
+    </tr>		
+	
+	<tr>
+      <td>showNodeImages</td>
+      <td>boolean</td>
+	  <td>custom</td>
+	  <td>no</td>
+	  <td>(true)</td>
+      <td>
+        If node images are shown.
+      </td>
+    </tr>
+	
+	<tr>
+      <td>makeNodeDirect</td>
+      <td>boolean</td>
+	  <td>custom</td>
+	  <td>no</td>
+	  <td>(true)</td>
+      <td>
+        If true, renders a link around nodes that contain children. This allows 
+		  expanding and collapsing the node.
+      </td>
+    </tr>	
+	
+	<tr>
+      <td>showRootNode</td>
+      <td>boolean</td>
+	  <td>custom</td>
+	  <td>no</td>
+	  <td>(true)</td>
+      <td>
+        If root node should be visible.
+      </td>
+    </tr>					
 
 	</table>
   
 <p>
-  Body: <strong>removed / allowed</strong>
+  Body: <strong>allowed</strong>
 </p>  
 
 <p>
-  Informal parameters: <strong>allowed  / forbidden</strong>
+  Informal parameters: <strong>allowed</strong>
 </p>
 
 <p>
@@ -66,7 +181,62 @@
 
 <section>
   <title>Examples</title>
-
+    <p>
+     The following sample code shows how to create and render a simple tree.
+    </p>
+	
+<source><![CDATA[
+<span jwcid="@contrib:Tree" treeModel="ognl:treeModel"/>
+
+public abstract class TreePage extends BasePage {   
+    private ITreeModel model;     
+    
+    public ITreeModel getTreeModel() {
+        if (model == null) {
+            TreeNode root = new MyNode("root");
+            TreeNode child1 = new MyNode("child1");
+            TreeNode child2 = new MyNode("child2");
+            TreeNode child1of1 = new MyNode("child1of1");
+            TreeNode child2of1 = new MyNode("child2of1");
+            root.insert(child1);
+            root.insert(child2);
+            child1.insert(child1of1);
+            child1.insert(child2of1);
+            
+            SimpleTreeDataModel dataModel = new SimpleTreeDataModel(root);
+            model = new SimpleTreeModel(dataModel);
+        }        
+        return model;        
+    }    
+}
+
+class MyNode extends TreeNode {
+    protected String value;
+    
+    MyNode(String val) {
+        super(null);
+        value = val;
+    }
+    
+    public String toString() {
+        return value;
+    }
+    
+    public int hashCode() {
+        return value.hashCode();
+    }
+
+    public boolean equals(Object objTarget) {
+        if(objTarget == this)
+            return true;
+        if(! (objTarget instanceof MyNode))
+            return false;
+
+        MyNode objTargetNode = (MyNode)objTarget;
+        return value.equals(objTargetNode.value);
+    }    
+}
+]]></source>	
 </section>
 </body>
 </document>

Modified: tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeDataView.xml
URL: http://svn.apache.org/viewcvs/tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeDataView.xml?rev=405192&r1=405191&r2=405192&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeDataView.xml (original)
+++ tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeDataView.xml Mon May  8 15:04:50 2006
@@ -28,11 +28,14 @@
   
   <body>
 
-<p> <strong>THIS PAGE UNDER CONSTRUCTION</strong>
+<p>
+	A low level Tree component that initiates the rendering of the tree nodes.
+	It should be wrapped by 
+	<link href="&apicontrib;/contrib/tree/components/TreeView.html">TreeView</link>.
 </p>
 
 <p>
-  <strong>See also:</strong> 
+  <strong>See also: &Tree;, &TreeView;, &TreeNodeView;</strong> 
 </p>
 
 <section>
@@ -47,15 +50,53 @@
     <th>Default</th>
     <th>Description</th>
   </tr>
+	
+	<tr>
+      <td>treeView</td>
+      <td>
+		  <link href="&apicontrib;/contrib/tree/components/TreeView.html">TreeView</link>
+	  </td>
+	  <td>in</td>
+	  <td>yes</td>
+	  <td>&nbsp;</td>
+      <td>
+        The TreeView component that provides an 
+		  <link href="&apicontrib;/contrib/tree/model/ITreeModel.html">ITreeModel</link>
+      </td>
+    </tr>
+	
+	<!-- TODO: parameter value is defined in jwc but used nowhere else
+	<tr>
+      <td>value</td>
+      <td>?</td>
+	  <td>in</td>
+	  <td>no</td>
+	  <td>&nbsp;</td>
+      <td>
+        Desc...
+      </td>
+    </tr>
+	-->	
+	
+	<tr>
+      <td>showRootNode</td>
+      <td>boolean</td>
+	  <td>in</td>
+	  <td>no</td>
+	  <td>true</td>
+      <td>
+        If root node should be visible.
+      </td>
+    </tr>					
 
 	</table>
   
 <p>
-  Body: <strong>removed / allowed</strong>
+  Body: <strong>allowed</strong>
 </p>  
 
 <p>
-  Informal parameters: <strong>allowed  / forbidden</strong>
+  Informal parameters: <strong>allowed</strong>
 </p>
 
 <p>

Modified: tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeNodeView.xml
URL: http://svn.apache.org/viewcvs/tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeNodeView.xml?rev=405192&r1=405191&r2=405192&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeNodeView.xml (original)
+++ tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeNodeView.xml Mon May  8 15:04:50 2006
@@ -28,11 +28,13 @@
   
   <body>
 
-<p> <strong>THIS PAGE UNDER CONSTRUCTION</strong>
+<p>
+	A low level Tree component that renders a tree node.
+	This component should be wrapped by 
+	<link href="&apicontrib;/contrib/tree/components/TreeDataView.html">TreeDataView</link>.
 </p>
-
 <p>
-  <strong>See also:</strong> 
+  <strong>See also: &Tree;, &TreeView;, &TreeDataView;</strong>  
 </p>
 
 <section>
@@ -48,25 +50,64 @@
     <th>Description</th>
   </tr>
 
-	</table>
+	<tr>
+      <td>showNodeImages</td>
+      <td>boolean</td>
+	  <td>in</td>
+	  <td>no</td>
+	  <td>true</td>
+      <td>
+        If node images are shown.
+      </td>
+    </tr>
+
+	<tr>
+      <td>makeNodeDirect</td>
+      <td>boolean</td>
+	  <td>in</td>
+	  <td>no</td>
+	  <td>true</td>
+      <td>
+        If true, renders a link around nodes that contain children. This allows 
+		  expanding and collapsing the node.
+      </td>
+    </tr>
+	
+	<tr>
+      <td>nodeRenderFactory</td>
+      <td>
+		  <link href="&apicontrib;/contrib/tree/components/INodeRenderFactory.html">INodeRenderFactory</link>
+	  </td>
+	  <td>in</td>
+	  <td>no</td>
+	  <td>(<link href="&apicontrib;/contrib/tree/simple/SimpleNodeRenderFactory.html">SimpleNodeRenderFactory</link>)</td>
+      <td>
+        A factory responsible for creating <link href="&apiroot;/IRender.html">IRender</link> instances.
+		They will be used to perform the actual render of the tree nodes.
+		  <p>The default factory returns <link href="&apiroot;/valid/RenderString.html">RenderString</link> instances
+			  that output the node's <code>toString()</code>.
+		  </p> 
+      </td>
+    </tr>			
+	</table>	
   
 <p>
-  Body: <strong>removed / allowed</strong>
+  Body: <strong>allowed</strong>
 </p>  
 
 <p>
-  Informal parameters: <strong>allowed  / forbidden</strong>
+  Informal parameters: <strong>allowed</strong>
 </p>
 
 <p>
-  Reserved parameters: <em>none</em>
+  Reserved parameters: <em>treedataview, nodeviewdirect</em>
 </p>
 
 </section>
 
 <section>
   <title>Examples</title>
-
 </section>
+
 </body>
 </document>

Modified: tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeTable.xml
URL: http://svn.apache.org/viewcvs/tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeTable.xml?rev=405192&r1=405191&r2=405192&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeTable.xml (original)
+++ tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeTable.xml Mon May  8 15:04:50 2006
@@ -1,6 +1,6 @@
 <?xml version="1.0"?>
 <!-- 
-   Copyright 2005 The Apache Software Foundation
+   Copyright 2005, 2006 The Apache Software Foundation
 
    Licensed under the Apache License, Version 2.0 (the "License");
    you may not use this file except in compliance with the License.
@@ -27,12 +27,10 @@
   </header>
   
   <body>
-
-<p> <strong>THIS PAGE UNDER CONSTRUCTION</strong>
-</p>
+  <p>The TreeTable is an implementation of a tree component using tables for nodes.</p>
 
 <p>
-  <strong>See also:</strong> 
+  <strong>See also: &Tree; &Table;</strong> 
 </p>
 
 <section>
@@ -48,14 +46,125 @@
     <th>Description</th>
   </tr>
 
+	<tr>
+      <td>sessionStateManager</td>
+      <td>
+		  <link href="&apicontrib;/contrib/tree/model/ITreeSessionStateManager.html">ITreeSessionStateManager</link>
+	  </td>
+	  <td>custom</td>
+	  <td>no</td>
+	  <td>&nbsp;</td>
+      <td>
+        The sessionStateManager is responsible for handling collapse/expansion and selection of the tree nodes.
+      </td>
+    </tr>
+	
+	<tr>
+      <td>sessionStoreManager</td>
+      <td>
+		  <link href="&apicontrib;/contrib/tree/model/ISessionStoreManager.html">ISessionStoreManager</link>
+	  </td>
+	  <td>custom</td>
+	  <td>no</td>
+	  <td>&nbsp;</td>
+      <td>
+        The sessionStoreManager holds the key to retrieving the session state.
+      </td>
+    </tr>
+	
+	<tr>
+      <td>treeModel</td>
+      <td>
+		  <link href="&apicontrib;/contrib/tree/model/ITreeModel.html">ITreeModel</link>
+	  </td>
+	  <td>custom</td>
+	  <td>yes</td>
+	  <td>&nbsp;</td>
+      <td>
+        ITreeModel implementation that holds the tree data and state models
+      </td>
+    </tr>
+	
+	<tr>
+      <td>treeStateListener</td>
+      <td>
+		  <link href="&apicontrib;/contrib/tree/model/ITreeStateListener.html">ITreeStateListener</link>
+	  </td>
+	  <td>custom</td>
+	  <td>no</td>
+	  <td>&nbsp;</td>
+      <td>
+        Listener that responds to changes in the tree state
+      </td>
+    </tr>
+	
+	<tr>
+      <td>nodeRenderFactory</td>
+      <td>
+		  <link href="&apicontrib;/contrib/tree/components/INodeRenderFactory.html">INodeRenderFactory</link>
+	  </td>
+	  <td>custom</td>
+	  <td>no</td>
+	  <td>&nbsp;</td>
+      <td>
+        Factory responsible for the rendering of each node.
+      </td>
+    </tr>
+	
+	<tr>
+      <td>nodeViewComponentAddress</td>
+      <td>
+		  <link href="&apiroot;/util/ComponentAddress.html">ComponentAddress</link>
+	  </td>
+	  <td>custom</td>
+	  <td>no</td>
+	  <td>&nbsp;</td>
+      <td>
+        The ComponentAddress class contains the path to a component, allowing it to locate an instance of that component in a different IRequestCycle.
+      </td>
+    </tr>	
+	
+	<tr>
+      <td>tableColumns</td>
+      <td>java.util.ArrayList</td>
+	  <td>custom</td>
+	  <td>no</td>
+	  <td>&nbsp;</td>
+      <td>
+        Array of columns for the tree
+      </td>
+    </tr>			
+		
+	<tr>
+      <td>entriesPerTablePage</td>
+      <td>int</td>
+	  <td>custom</td>
+	  <td>no</td>
+	  <td>&nbsp;</td>
+      <td>
+        Number of nodes in the tree per page
+      </td>
+    </tr>	
+	
+	<tr>
+      <td>showRootNode</td>
+      <td>boolean</td>
+	  <td>custom</td>
+	  <td>no</td>
+	  <td>&nbsp;</td>
+      <td>
+        If <code>true</code>, the root node of the tree will be displayed.
+      </td>
+    </tr>	
+	
 	</table>
   
 <p>
-  Body: <strong>removed / allowed</strong>
+  Body: <strong>allowed</strong>
 </p>  
 
 <p>
-  Informal parameters: <strong>allowed  / forbidden</strong>
+  Informal parameters: <strong>forbidden</strong>
 </p>
 
 <p>
@@ -64,9 +173,6 @@
 
 </section>
 
-<section>
-  <title>Examples</title>
-
-</section>
+ <p>The Workbench under Examples shows an example of the TreeTable</p>
 </body>
 </document>

Modified: tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeTableDataView.xml
URL: http://svn.apache.org/viewcvs/tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeTableDataView.xml?rev=405192&r1=405191&r2=405192&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeTableDataView.xml (original)
+++ tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeTableDataView.xml Mon May  8 15:04:50 2006
@@ -1,6 +1,6 @@
 <?xml version="1.0"?>
 <!-- 
-   Copyright 2005 The Apache Software Foundation
+   Copyright 2006 The Apache Software Foundation
 
    Licensed under the Apache License, Version 2.0 (the "License");
    you may not use this file except in compliance with the License.
@@ -27,12 +27,11 @@
   </header>
   
   <body>
-
-<p> <strong>THIS PAGE UNDER CONSTRUCTION</strong>
-</p>
+    <p>The TreeTableDataView is the component that is responsible for populating the TreeView nodes from
+       the supplied table data.</p>
 
 <p>
-  <strong>See also:</strong> 
+  <strong>See also: &TreeTable;</strong> 
 </p>
 
 <section>
@@ -47,15 +46,86 @@
     <th>Default</th>
     <th>Description</th>
   </tr>
+	
+	<!-- Are these params used somewhere?
+	<tr>
+      <td>treeView</td>
+      <td>boolean</td>
+	  <td>&nbsp;</td>
+	  <td>no</td>
+	  <td>&nbsp;</td>
+      <td>
+        Desc...
+      </td>
+    </tr>	
+	
+	<tr>
+      <td>nodeViewComponentAddress</td>
+      <td>boolean</td>
+	  <td>&nbsp;</td>
+	  <td>no</td>
+	  <td>&nbsp;</td>
+      <td>
+        Desc...
+      </td>
+    </tr>
+	
+	<tr>
+      <td>nodeRenderFactory</td>
+      <td>boolean</td>
+	  <td>&nbsp;</td>
+	  <td>no</td>
+	  <td>&nbsp;</td>
+      <td>
+        Desc...
+      </td>
+    </tr>	
+	-->
+	
+	<tr>
+      <td>entriesPerTablePage</td>
+      <td>int</td>
+	  <td>in</td>
+	  <td>no</td>
+	  <td>&nbsp;</td>
+      <td>
+        The number of records displayed per page.
+      </td>
+    </tr>
+
+	<tr>
+      <td>showRootNode</td>
+      <td>boolean</td>
+	  <td>in</td>
+	  <td>no</td>
+	  <td>&nbsp;</td>
+      <td>
+        If root node should be visible.
+      </td>
+    </tr>
+	
+	<tr>
+      <td>tableColumns</td>
+      <td><link href="&apijava;/java/util/List.html">List</link> (of	  	
+		  <link href="&apicontrib;/contrib/table/model/ITableColumn.html">ITableColumn</link>)		  
+	  </td>
+	  <td>in</td>
+	  <td>no</td>
+	  <td>&nbsp;</td>
+      <td>
+		A list of <link href="&apicontrib;/contrib/table/model/ITableColumn.html"><code>ITableColumn</code></link>
+		objects, each defining a column in the table,
+      </td>
+    </tr>					
 
 	</table>
   
 <p>
-  Body: <strong>removed / allowed</strong>
+  Body: <strong>allowed</strong>
 </p>  
 
 <p>
-  Informal parameters: <strong>allowed  / forbidden</strong>
+  Informal parameters: <strong>allowed</strong>
 </p>
 
 <p>
@@ -64,9 +134,5 @@
 
 </section>
 
-<section>
-  <title>Examples</title>
-
-</section>
 </body>
 </document>

Modified: tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeTableNodeViewDelegator.xml
URL: http://svn.apache.org/viewcvs/tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeTableNodeViewDelegator.xml?rev=405192&r1=405191&r2=405192&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeTableNodeViewDelegator.xml (original)
+++ tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeTableNodeViewDelegator.xml Mon May  8 15:04:50 2006
@@ -1,6 +1,6 @@
 <?xml version="1.0"?>
 <!-- 
-   Copyright 2005 The Apache Software Foundation
+   Copyright 2005, 2006 The Apache Software Foundation
 
    Licensed under the Apache License, Version 2.0 (the "License");
    you may not use this file except in compliance with the License.
@@ -27,45 +27,28 @@
   </header>
   
   <body>
-
-<p> <strong>THIS PAGE UNDER CONSTRUCTION</strong>
+    <p>The TreeTableNodeViewDelegator is used in conjunction with a &TreeNodeView; to render the &TreeNodeView;
 </p>
 
 <p>
-  <strong>See also:</strong> 
+  <strong>See also: &TreeNodeView;</strong> 
 </p>
 
 <section>
   <title>Parameters</title>
-  
-<table>
-  <tr> 
-    <th>Name</th>
-    <th>Type</th>
-	  <th>Direction</th>
-    <th>Required</th> 
-    <th>Default</th>
-    <th>Description</th>
-  </tr>
-
-	</table>
+    <p>None</p>
   
 <p>
-  Body: <strong>removed / allowed</strong>
+  Body: <strong>allowed</strong>
 </p>  
 
 <p>
-  Informal parameters: <strong>allowed  / forbidden</strong>
+  Informal parameters: <strong>allowed</strong>
 </p>
 
 <p>
   Reserved parameters: <em>none</em>
 </p>
-
-</section>
-
-<section>
-  <title>Examples</title>
 
 </section>
 </body>

Modified: tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeView.xml
URL: http://svn.apache.org/viewcvs/tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeView.xml?rev=405192&r1=405191&r2=405192&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeView.xml (original)
+++ tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/TreeView.xml Mon May  8 15:04:50 2006
@@ -28,11 +28,14 @@
   
   <body>
 
-<p> <strong>THIS PAGE UNDER CONSTRUCTION</strong>
+<p>
+	A low level Tree component that wraps all other low level Tree components. 
+	This component carries the <link href="&apicontrib;/contrib/tree/model/ITreeModel.html">ITreeModel</link>
+	that is used by the other Tree components. 
 </p>
 
 <p>
-  <strong>See also:</strong> 
+  <strong>See also: &Tree;, &TreeDataView;, &TreeNodeView;</strong> 
 </p>
 
 <section>
@@ -48,14 +51,67 @@
     <th>Description</th>
   </tr>
 
+<tr>
+      <td>sessionStateManager</td>
+      <td>
+		  <link href="&apicontrib;/contrib/tree/model/ITreeSessionStateManager.html">ITreeSessionStateManager</link>
+	  </td>
+	  <td>in</td>
+	  <td>no</td>
+	  <td>&nbsp;</td>
+      <td>
+        Manages the state of the tree (i.e. which nodes are open, closed or selected).
+      </td>
+    </tr>
+	
+	<tr>
+      <td>sessionStoreManager</td>
+      <td>
+		  <link href="&apicontrib;/contrib/tree/model/ISessionStoreManager.html">ISessionStoreManager</link>
+	  </td>
+	  <td>in</td>
+	  <td>no</td>
+	  <td>&nbsp;</td>
+      <td>
+        Allows storing the tree (or parts of it) to the session.
+      </td>
+    </tr>
+	
+	<tr>
+      <td>treeModel</td>
+      <td>
+		  <link href="&apicontrib;/contrib/tree/model/ITreeModel.html">ITreeModel</link>
+	  </td>
+	  <td>in</td>
+	  <td>yes</td>
+	  <td>&nbsp;</td>
+      <td>
+        Defines a model that can provide the nodes of the tree.
+      </td>
+    </tr>
+	
+	<tr>
+      <td>treeStateListener</td>
+      <td>
+		  <link href="&apicontrib;/contrib/tree/model/ITreeStateListener.html">ITreeStateListener</link>
+	  </td>
+	  <td>in</td>
+	  <td>no</td>
+	  <td>&nbsp;</td>
+      <td>
+        If specified, this object will receive events generated by the tree. 
+		  Such events are: SELECTED_NODE_CHANGED, NODE_EXPANDED and NODE_COLLAPSED.
+      </td>
+    </tr>	
+	
 	</table>
   
 <p>
-  Body: <strong>removed / allowed</strong>
+  Body: <strong>allowed</strong>
 </p>  
 
 <p>
-  Informal parameters: <strong>allowed  / forbidden</strong>
+  Informal parameters: <strong>allowed</strong>
 </p>
 
 <p>

Added: tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/XTile.xml
URL: http://svn.apache.org/viewcvs/tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/XTile.xml?rev=405192&view=auto
==============================================================================
--- tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/XTile.xml (added)
+++ tapestry/tapestry4/trunk/contrib/src/documentation/content/xdocs/tapestry-contrib/ComponentReference/XTile.xml Mon May  8 15:04:50 2006
@@ -0,0 +1,185 @@
+<?xml version="1.0"?>
+<!-- 
+   Copyright 2005, 2006 The Apache Software Foundation
+
+   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.
+-->
+
+<!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.2//EN" "./dtd/document-v12.dtd"
+[
+	<!ENTITY projectroot '../../'>
+	<!ENTITY % links.ent SYSTEM "../../links.ent">
+	%links.ent;
+]>
+<document>
+  <header>
+    <title>XTile</title>
+  </header>
+  
+  <body>
+
+<p>
+   A component providing the required JavaScript to pass some information to the server
+   and receive its response without reloading the page (Ajax)
+</p>
+
+<warning>
+	The <link href="&apicontrib;/contrib/ajax/XTileService.html">XTileService</link>
+	that this component uses does NOT activate any page - it simply calls the specified 
+	listener. This means that pageBeginRender() methods will not get called and that 
+	cycle.getPage() will return null.
+</warning>
+
+<section>
+  <title>Parameters</title>
+  
+<table>
+	<tr> 
+    	<th>Name</th>
+	    <th>Type</th>
+	 	<th>Direction</th>
+	    <th>Required</th> 
+    	<th>Default</th>
+	    <th>Description</th>
+	</tr>
+
+    <tr>
+		<td>listener</td>
+		<td>&IActionListener;</td> 
+		<td>in</td>
+		<td>yes</td>
+		<td></td>
+		<td>
+        The listener that will be invoked when the Javascript function with the given name is invoked.
+        Any parameters passed to the send function will be available from cycle.getListenerParameters(). 
+        In addition, the listener can perform cycle.setListenerParameters() to pass an array of
+        strings to the JavaScript receive function.
+		</td>
+    </tr>
+    
+    <tr>
+		<td>sendName</td>
+		<td>String</td> 
+		<td>in</td>
+		<td>yes</td>
+		<td></td>
+		<td>
+        The name of the JavaScript function that the script will define to allow the application
+        to send information to the server.
+     </td>
+     </tr>
+    
+    <tr>
+		<td>receiveName</td>
+		<td>String</td> 
+		<td>in</td>
+		<td>yes</td>
+		<td></td>
+		<td>
+        The name of the JavaScript function that the script will call to allow the application
+        to receive information from the server some time after the send function has been invoked.
+     </td>
+     </tr>
+    
+    <tr>
+		<td>errorName</td>
+		<td>String</td> 
+		<td>in</td>
+		<td>no</td>
+		<td>null</td>
+		<td>
+        The name of the JavaScript function that the script will call to indicate that
+        an error has occurred while sending the information to the server.
+     </td>
+     </tr>
+    
+    <tr>
+		<td>disableCaching</td>
+		<td>boolean</td> 
+		<td>in</td>
+		<td>no</td>
+		<td>false</td>
+		<td>
+        Some browsers cache repeated requests that have identical URLs.
+        Pass 'true' to this parameter to disable caching by making the URLs unique.
+     </td>
+     </tr>
+</table>
+  
+<p>
+  Body: <strong>removed</strong>
+</p>  
+
+<p>
+  Informal parameters: <strong>allowed</strong>
+</p>
+
+<p>
+  Reserved parameters: <em>none</em>
+</p>
+
+</section>
+
+<section>
+  <title>Examples</title>
+    <p>The XTile example has portions implemented in the HTML and a listener method
+       in the page class. They are broken down as follows:</p>
+       
+    <p>XTileExample.html</p>
+
+  	<source><![CDATA[
+<html>
+  <head>
+    <title>XTile Example</title>
+  </head>
+  <body>
+    <span jwcid="@contrib:XTile" listener="ognl:listeners.handleListRequest"
+        sendName="sendPrefix" receiveName="recvList"/>
+    <form action="Results.html" method="post">
+       <input type="text" onkeyup="sendPrefix(this.value)"/>
+       <br/>
+       <textarea name="listing" rows="5"></textarea>
+    </form>
+    <script>
+      function recvList(arr) {
+      	document.f.listing.value = arr.join("\n");
+      }
+    </script>
+
+  </body>
+</html>
+	]]></source>
+	
+	  <p>Then in your page class you just need to add the appropriate method.</p>
+	  
+    <p>XTileExample.java</p>
+  	<source><![CDATA[
+    .
+    .
+    .
+    public void handleListRequest(IRequestCycle cycle) {
+      Object[] params = cycle.getListenerParameters();
+      if (params.length == 0) return;
+
+      String typed = params[0].toString();
+      String[] ret = findCompletions(typed);
+      cycle.setListenerParameters(ret);
+    }
+    .
+    .
+    .
+	]]></source>
+
+</section>
+</body>
+</document>
\ No newline at end of file

Modified: tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/ActionLink.xml
URL: http://svn.apache.org/viewcvs/tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/ActionLink.xml?rev=405192&r1=405191&r2=405192&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/ActionLink.xml (original)
+++ tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/ActionLink.xml Mon May  8 15:04:50 2006
@@ -122,6 +122,19 @@
   </tr>
   
   <tr>
+    <td>port</td>
+    <td>Integer</td>
+    <td>in</td>
+    <td>no</td>
+    <td/>
+    <td> The required port (80, 443, 8080. 8443, typically) for the URL. This will force the creation of an
+      absolute URL when the current request's scheme does not match the value for this parameter. This is most
+      often used in conjunction with scheme to switch to "https:443"/"https:8443" for secure portions of an
+      application (such as a login page), before switching back to standard "http:80"/"http:80" for the majority
+      of an application. </td>
+  </tr>
+
+  <tr>
     <td>renderer</td>
     <td>&ILinkRenderer;</td>
     <td>in</td>

Modified: tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/Any.xml
URL: http://svn.apache.org/viewcvs/tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/Any.xml?rev=405192&r1=405191&r2=405192&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/Any.xml (original)
+++ tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/Any.xml Mon May  8 15:04:50 2006
@@ -122,7 +122,7 @@
 ]]></source>
 
 <p>
-The &RenderBody; component contains an extensive example that includes the use of the Any component.
+The &RenderBlock; component contains an extensive example that includes the use of the Any component.
 </p>
 
 </section>

Modified: tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/DirectLink.xml
URL: http://svn.apache.org/viewcvs/tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/DirectLink.xml?rev=405192&r1=405191&r2=405192&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/DirectLink.xml (original)
+++ tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/DirectLink.xml Mon May  8 15:04:50 2006
@@ -150,6 +150,19 @@
   </tr>
   
   <tr>
+    <td>port</td>
+    <td>Integer</td>
+    <td>in</td>
+    <td>no</td>
+    <td/>
+    <td> The required port (80, 443, 8080. 8443, typically) for the URL. This will force the creation of an
+      absolute URL when the current request's scheme does not match the value for this parameter. This is most
+      often used in conjunction with scheme to switch to "https:443"/"https:8443" for secure portions of an
+      application (such as a login page), before switching back to standard "http:80"/"http:80" for the majority
+      of an application. </td>
+  </tr>
+
+  <tr>
     <td>renderer</td>
     <td>&ILinkRenderer;</td>
     <td>in</td>

Modified: tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/ExternalLink.xml
URL: http://svn.apache.org/viewcvs/tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/ExternalLink.xml?rev=405192&r1=405191&r2=405192&view=diff
==============================================================================
--- tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/ExternalLink.xml (original)
+++ tapestry/tapestry4/trunk/framework/src/documentation/content/xdocs/tapestry/ComponentReference/ExternalLink.xml Mon May  8 15:04:50 2006
@@ -101,7 +101,19 @@
     </td>
   </tr>
   
-  
+  <tr>
+    <td>port</td>
+    <td>Integer</td>
+    <td>in</td>
+    <td>no</td>
+    <td/>
+    <td> The required port (80, 443, 8080. 8443, typically) for the URL. This will force the creation of an
+      absolute URL when the current request's scheme does not match the value for this parameter. This is most
+      often used in conjunction with scheme to switch to "https:443"/"https:8443" for secure portions of an
+      application (such as a login page), before switching back to standard "http:80"/"http:80" for the majority
+      of an application. </td>
+  </tr>
+
   <tr>
     <td>target</td>
     <td>String</td>