[richfaces-svn-commits] JBoss Rich Faces SVN: r15865 - root/docs/trunk/Component_Reference/en-US.

richfaces-svn-commits at lists.jboss.org richfaces-svn-commits at lists.jboss.org
Wed Nov 11 18:44:55 EST 2009


Author: SeanRogers
Date: 2009-11-11 18:44:55 -0500 (Wed, 11 Nov 2009)
New Revision: 15865

Modified:
   root/docs/trunk/Component_Reference/en-US/Book_Info.xml
   root/docs/trunk/Component_Reference/en-US/Component_Reference.xml
   root/docs/trunk/Component_Reference/en-US/Messages.xml
   root/docs/trunk/Component_Reference/en-US/Panels_and_containers.xml
   root/docs/trunk/Component_Reference/en-US/Preface.xml
   root/docs/trunk/Component_Reference/en-US/Tables_and_grids.xml
   root/docs/trunk/Component_Reference/en-US/all-Component_Reference.xml
Log:
More Component Reference work

Modified: root/docs/trunk/Component_Reference/en-US/Book_Info.xml
===================================================================
--- root/docs/trunk/Component_Reference/en-US/Book_Info.xml	2009-11-11 20:48:15 UTC (rev 15864)
+++ root/docs/trunk/Component_Reference/en-US/Book_Info.xml	2009-11-11 23:44:55 UTC (rev 15865)
@@ -27,7 +27,7 @@
 				<year>&YEAR;</year>
 				<holder>&HOLDER;</holder>
 			</copyright>
-			<!--    FOR PUBLICAN     --><xi:include href="Common_Content/Legal_Notice.xml" xmlns:xi="http://www.w3.org/2001/XInclude"><!--    FOR JDOCBOOK:    --><xi:fallback xmlns:xi="http://www.w3.org/2001/XInclude"><xi:include href="fallback_content/Legal_Notice.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>
+			<!--       FOR PUBLICAN        --><xi:include href="Common_Content/Legal_Notice.xml" xmlns:xi="http://www.w3.org/2001/XInclude"><!--       FOR JDOCBOOK:       --><xi:fallback xmlns:xi="http://www.w3.org/2001/XInclude"><xi:include href="fallback_content/Legal_Notice.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>
 			</xi:fallback>
 			</xi:include>
 			<xi:include href="Author_Group.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>

Modified: root/docs/trunk/Component_Reference/en-US/Component_Reference.xml
===================================================================
--- root/docs/trunk/Component_Reference/en-US/Component_Reference.xml	2009-11-11 20:48:15 UTC (rev 15864)
+++ root/docs/trunk/Component_Reference/en-US/Component_Reference.xml	2009-11-11 23:44:55 UTC (rev 15865)
@@ -4,8 +4,12 @@
 
 <book status="draft">
 	<xi:include href="Book_Info.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>
-	<!--     <xi:include href="Preface.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>     --><xi:include href="Introduction.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>
+	<!--
+	<xi:include href="Preface.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>
+	-->
+	<xi:include href="Introduction.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>
 	<xi:include href="Common_Ajax_attributes.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>
+	<xi:include href="Common_features.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>
 	<xi:include href="Rich_inputs.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>
 	<xi:include href="Panels_and_containers.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>
 	<xi:include href="Tables_and_grids.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>

Modified: root/docs/trunk/Component_Reference/en-US/Messages.xml
===================================================================
--- root/docs/trunk/Component_Reference/en-US/Messages.xml	2009-11-11 20:48:15 UTC (rev 15864)
+++ root/docs/trunk/Component_Reference/en-US/Messages.xml	2009-11-11 23:44:55 UTC (rev 15865)
@@ -24,7 +24,7 @@
 	<section id="sect-Component_Reference-Messages-richprogressBar">
 		<title>rich:progressBar</title>
 		<para>
-			Incomplete
+			The <classname>&lt;rich:progressBar&gt;</classname> component displays a progress bar to indicate the status of a process to the user. It can update either through Ajax or on the client side, and the look and feel can be fully customized.
 		</para>
 	</section>
 	

Modified: root/docs/trunk/Component_Reference/en-US/Panels_and_containers.xml
===================================================================
--- root/docs/trunk/Component_Reference/en-US/Panels_and_containers.xml	2009-11-11 20:48:15 UTC (rev 15864)
+++ root/docs/trunk/Component_Reference/en-US/Panels_and_containers.xml	2009-11-11 23:44:55 UTC (rev 15865)
@@ -80,7 +80,7 @@
 		<important>
 			<title>Important</title>
 			<para>
-				The <classname>&lt;rich:modalPanel&gt;</classname> component should always be placed outside the original <classname>&lt;h:form&gt;</classname>, and must include its own <classname>&lt;h:form&gt;</classname> if performing submits.
+				The <classname>&lt;rich:modalPanel&gt;</classname> component should always be placed outside the original <classname>&lt;h:form&gt;</classname>, and must include its own <classname>&lt;h:form&gt;</classname> if performing submissions.
 			</para>
 		</important>
 		<para>
@@ -139,7 +139,7 @@
 			By default, the event to expand the menu is a mouse click. This can be changed by setting <code>event</code> to specify the preferred event. Several sub-menus can be expanded a once unless the <code>expandSingle</code> is set to <literal>true</literal>, which only allows one sub-menu at a time to be expanded.
 		</para>
 		<para>
-			The <code>mode</code> attribute defines the submission mode for normal menu items, and the <code>expandMode</code> attribute defines the submission mode for menu items that expand and collapse. The settings for these attributes apply to the entire menu unless a menu item defines its own individual <code>mode</code> or <code>expandMode</code>. The values for <code>mode</code> and <code>expandMode</code> are:
+			The <code>mode</code> attribute defines the submission mode for normal menu items that link to content, and the <code>expandMode</code> attribute defines the submission mode for menu items that expand and collapse. The settings for these attributes apply to the entire menu unless a menu item defines its own individual <code>mode</code> or <code>expandMode</code>. The values for <code>mode</code> and <code>expandMode</code> are:
 		</para>
 		<itemizedlist>
 			<listitem>
@@ -169,58 +169,231 @@
 			If the <code>expandMode</code> is unspecified, the submission behavior for the group is inherited from the parent <classname>&lt;rich:panelMenu&gt;</classname>. Otherwise, the <code>expandMode</code> setting is used instead of the parent&#39;s behavior.
 		</para>
 		<para>
-			Icons for menu items can be chosen from a set of standard icons. There are three attributes that relate to the different menu states that the icon represents: <code>iconExpanded</code>, <code>iconCollapsed</code>, and <code>iconDisabled</code>. The standard icons are shown in <xref linkend="figu-Component_Reference-richpanelMenuGroup-Standard_icons" />.
+			Icons for the menu group can be chosen from a set of standard icons. There are three attributes that relate to the different menu states that the icon represents: <code>iconExpanded</code>, <code>iconCollapsed</code>, and <code>iconDisabled</code>. The standard icons are shown in <xref linkend="figu-Component_Reference-richpanelMenuGroup-Standard_icons" />.
 		</para>
 		<figure id="figu-Component_Reference-richpanelMenuGroup-Standard_icons">
 			<title>Standard icons</title>
 			<mediaobject>
 				<imageobject>
-					<imagedata fileref="images/panelMenuGroupIcons.png" format="PNG" />
+					<imagedata fileref="images/panelMenuIcons.png" format="PNG" />
 				</imageobject>
 			</mediaobject>
 		</figure>
+		<para>
+			Alternatively, a path can be defined that points to an image file to use as an icon.
+		</para>
+		<example id="exam-Component_Reference-richpanelMenuGroup-Using_custom_icons">
+			<title>Using custom icons</title>
+			
+<programlisting language="xml">
+&lt;rich:panelMenu&gt;
+  &lt;rich:PanelMenuGroup label="Group 1" iconExpanded="\images\img1.png" iconCollapsed="\images\img2.png"&gt;&gt;
+    &lt;!--Nested menu components--&gt;
+  &lt;/rich:panelMenuGroup&gt;
+&lt;/rich:panelMenu&gt;
+</programlisting>
+		</example>
 	</section>
 	
 	<section id="sect-Component_Reference-Panels_and_containers-richpanelMenuItem">
 		<title>&lt;rich:panelMenuItem&gt;</title>
 		<para>
-			Incomplete
+			The <classname>&lt;rich:panelMenuItem&gt;</classname> component represents a single item inside a <classname>&lt;rich:panelMenuGroup&gt;</classname> component, which is in turn part of a <classname>&lt;rich:panelMenu&gt;</classname> component.
 		</para>
+		<para>
+			If the <code>mode</code> is unspecified, the submission behavior for the item is inherited from the parent <classname>&lt;rich:panelMenu&gt;</classname>. Otherwise, the <code>mode</code> setting is used instead of the parent&#39;s behavior.
+		</para>
+		<para>
+			Icons for menu items can be chosen from a set of standard icons. There are two attributes that relate to the different menu states that the icon represents: <code>icon</code> and <code>iconDisabled</code>. The standard icons are shown in <xref linkend="figu-Component_Reference-richcolumn-Basic_column_example" />.
+		</para>
+		<figure id="figu-Component_Reference-richpanelMenuItem-Standard_icons">
+			<title>Standard icons</title>
+			<mediaobject>
+				<imageobject>
+					<imagedata fileref="images/panelMenuIcons.png" format="PNG" />
+				</imageobject>
+			</mediaobject>
+		</figure>
+		<para>
+			Alternatively, a path can be defined that points to an image file to use as an icon.
+		</para>
+		<example id="exam-Component_Reference-richpanelMenuItem-Using_custom_icons">
+			<title>Using custom icons</title>
+			
+<programlisting language="xml">
+&lt;rich:panelMenu&gt;
+  ...
+    &lt;rich:panelMenuItem value="Item 1.1" icon="\images\img1.png" iconDisabled="\images\img2.png" /&gt;
+  ...
+&lt;/rich:panelMenu&gt;
+</programlisting>
+		</example>
 	</section>
 	
 	<section id="sect-Component_Reference-Panels_and_containers-richsimpleTogglePanel">
 		<title>&lt;rich:simpleTogglePanel&gt;</title>
 		<para>
-			Incomplete
+			The <classname>&lt;rich:simpleTogglePanel&gt;</classname> component is a collapsible panel that shows or hides content when the header bar is activated. It is a simplified version of <classname>&lt;rich:togglePanel&gt;</classname> component.
 		</para>
+		<para>
+			Basic usage requires only the <code>label</code> attribute to be specified, which provides the title for the header element.
+		</para>
+		<para>
+			The switching mode for performing submissions is determined by the <code>switchType</code> attribute, which can have one of the following three values:
+		</para>
+		<itemizedlist>
+			<listitem>
+				<para>
+					<literal>server</literal>, the default setting, which causes the <classname>&lt;rich:simpleTogglePanel&gt;</classname> component to perform a common submission, completely re-rendering the page. Only one panel at a time is uploaded to the client side.
+				</para>
+			</listitem>
+			<listitem>
+				<para>
+					<literal>ajax</literal>, which causes the <classname>&lt;rich:simpleTogglePanel&gt;</classname> component to perform an Ajax form submission, and the content of the panel is rendered. Only one panel at a time is uploaded to the client side.
+				</para>
+			</listitem>
+			<listitem>
+				<para>
+					<literal>client</literal>, which causes <classname>&lt;rich:simpleTogglePanel&gt;</classname> components to update on the client side, re-rendering themselves and any additional components listed with the <code>render</code> attribute.
+				</para>
+			</listitem>
+		</itemizedlist>
+		<para>
+			If the <classname>&lt;rich:simpleTogglePanel&gt;</classname> component uses <code>opened="true"</code>, the panel is open and expanded, otherwise it is closed and collapsed.
+		</para>
+		<para>
+			The <code>openMarker</code> and <code>closeMarker</code> attributes can be used to define custom icons for the expanding header.
+		</para>
 	</section>
 	
 	<section id="sect-Component_Reference-Panels_and_containers-richtabPanel">
 		<title>&lt;rich:tabPanel&gt;</title>
 		<para>
-			Incomplete
+			The <classname>&lt;rich:tabPanel&gt;</classname> component provides a set of tabbed panels for displaying one panel of content at a time. The tabs can be highly customized and themed.
 		</para>
+		<note>
+			<title>Note</title>
+			<para>
+				All <classname>&lt;rich:tabPanel&gt;</classname> components should be wrapped in a form element so that content is correctly submitted.
+			</para>
+		</note>
+		<para>
+			The switching mode for performing submissions is determined by the <code>switchType</code> attribute, which can have one of the following three values:
+		</para>
+		<itemizedlist>
+			<listitem>
+				<para>
+					<literal>server</literal>, the default setting, which causes the <classname>&lt;rich:tabPanel&gt;</classname> component to perform a common submission, completely re-rendering the page. Only one panel at a time is uploaded to the client side.
+				</para>
+			</listitem>
+			<listitem>
+				<para>
+					<literal>ajax</literal>, which causes the <classname>&lt;rich:tabPanel&gt;</classname> component to perform an Ajax form submission, and the content of the panel is rendered. Only one panel at a time is uploaded to the client side.
+				</para>
+			</listitem>
+			<listitem>
+				<para>
+					<literal>client</literal>, which causes <classname>&lt;rich:tabPanel&gt;</classname> components to update on the client side, re-rendering themselves and any additional components listed with the <code>render</code> attribute.
+				</para>
+			</listitem>
+		</itemizedlist>
+		<para>
+			The <code>selectedTab</code> attribute holds the active tab name.
+		</para>
+		<para>
+			The tabs themselves can be aligned using the <code>headerAlignment</code> attribute. The attribute can be set to <code>left</code>, <code>center</code>, or <code>right</code>, aligning the header tabs to the left, center, or right of the top edge of the panel respectively. If no alignment is specified, left-alignment is the default behavior.
+		</para>
 	</section>
 	
 	<section id="sect-Component_Reference-Panels_and_containers-richtab">
 		<title>&lt;rich:tab&gt;</title>
 		<para>
-			Incomplete
+			The <classname>&lt;rich:tab&gt;</classname> component represents an individual tab inside a <classname>&lt;rich:tabPanel&gt;</classname> component, including the tab&#39;s content. Clicking on the tab header will bring its corresponding content to the front of other tabs.
 		</para>
+		<para>
+			Basic usage of the <classname>&lt;rich:tab&gt;</classname> component requires the <code>label</code> attribute, which provides the text on the tab header. The content of the tab is then detailed inside the <classname>&lt;rich:tab&gt;</classname> tags.
+		</para>
+		<para>
+			An individual tab can be disabled by setting <code>disabled="true"</code>. Disabled tabs cannot be activated or switched to.
+		</para>
+		<para>
+			The switching mode for performing submissions can be inherited from <code>switchMode</code> attribute of the parent <classname>&lt;rich:tabPanel&gt;</classname> component, or set individually for each <classname>&lt;rich:tab&gt;</classname> component. Refer to <xref linkend="sect-Component_Reference-Panels_and_containers-richtabPanel" /> for details on the <code>switchMode</code> attribute.
+		</para>
+		<para>
+			There are two event handlers that are unique to the <classname>&lt;rich:tab&gt;</classname> component. The <code>ontabenter</code> attribute points to the function to perform when the mouse enters the tab, while the <code>ontableave</code> attribute points to the function to perform when the mouse leaves the tab.
+		</para>
 	</section>
 	
 	<section id="sect-Component_Reference-Panels_and_containers-richtogglePanel">
 		<title>&lt;rich:togglePanel&gt;</title>
 		<para>
-			Incomplete
+			The <classname>&lt;rich:togglePanel&gt;</classname> component is a wrapper component with named facets. Each facet is displayed after activating a corresponding <classname>&lt;rich:toggleControl&gt;</classname> component.
 		</para>
+		<para>
+			The initial state of the component can be configured using the <code>initialState</code> attribute, which points to a facet name to display. Alternatively, setting <code>initialState="empty"</code>, the initial state will be blank until the user selects an option.
+		</para>
+		<para>
+			The order in which the facets are shown can be defined using the <code>statusOrder</code> attribute, listing the facet names separated by commas, as shown in <xref linkend="exam-Component_Reference-richtogglePanel-State_order_example" />.
+		</para>
+		<example id="exam-Component_Reference-richtogglePanel-State_order_example">
+			<title>State order example</title>
+			
+<programlisting language="xml">
+&gt;rich:togglePanel id="panel" initialState="panelB" switchType="client" stateOrder="panelA,panelB,panelC"&lt;
+  &gt;f:facet name="panelA"&lt;
+    ...
+  &gt;/f:facet&lt;
+  &gt;f:facet name="panelB"&lt;
+    ...
+  &gt;/f:facet&lt;
+  &gt;f:facet name="panelC"&lt;
+    ...
+  &gt;/f:facet&lt;
+&gt;/rich:togglePanel&lt; 
+&gt;rich:toggleControl for="panel" value="Switch"/&lt;
+</programlisting>
+		</example>
 	</section>
 	
 	<section id="sect-Component_Reference-Panels_and_containers-richtoggleControl">
 		<title>&lt;rich:toggleControl&gt;</title>
 		<para>
-			Incomplete
+			The <classname>&lt;rich:toggleControl&gt;</classname> component works with a <classname>&lt;rich:togglePanel&gt;</classname> component to switch between panel states. It can be located either inside or outside the <classname>&lt;rich:togglePanel&gt;</classname> component, and can be used to switch to a specific state or cycle through a set of states.
 		</para>
+		<para>
+			Basic usage for the <classname>&lt;rich:toggleControl&gt;</classname> requires the <code>for</code> attribute, which points to the <code>id</code> attribute of the <classname>&lt;rich:togglePanel&gt;</classname> that it controls. The <code>value</code> attribute specifies the label of the toggle button.
+		</para>
+		<para>
+			The <code>switchToState</code> attribute can be used to explicitly set a target panel for the toggle to activate. If no <code>switchToState</code> attribute is defined, the toggle will switch to the next panel listed in the <code>switchOrder</code> attribute of the <classname>&lt;rich:toggleControl&gt;</classname> component. <xref linkend="exam-Component_Reference-richtoggleControl-Switching_panel_states" /> shows the use of the <code>switchToState</code> attribute.
+		</para>
+		<example id="exam-Component_Reference-richtoggleControl-Switching_panel_states">
+			<title>Switching panel states</title>
+			
+<programlisting language="xml">
+&lt;rich:togglePanel id="panel" initialState="empty" switchType="client"&gt;
+  &lt;f:facet name="first"&gt;
+    &lt;h:panelGroup&gt;
+      &lt;rich:toggleControl for="helloForm:panel" value="Empty" switchToState="empty"/&gt;
+      &lt;rich:toggleControl for="helloForm:panel" value=" Second" switchToState="second"/&gt;
+      &lt;!--Some content--&gt;
+    &lt;/h:panelGroup&gt;
+  &lt;/f:facet&gt;
+  &lt;f:facet name="second"&gt;
+    &lt;h:panelGroup&gt;
+      &lt;rich:toggleControl for="helloForm:panel" value="Empty" switchToState="empty"/&gt;
+      &lt;rich:toggleControl for="helloForm:panel" value=" first" switchToState="first"/&gt;
+      &lt;!--Some content--&gt;
+    &lt;/h:panelGroup&gt;
+  &lt;/f:facet&gt;
+  &lt;f:facet name="empty"&gt;
+    &lt;h:panelGroup&gt;
+      &lt;rich:toggleControl for="helloForm:panel" value="first" switchToState="first"/&gt;
+      &lt;rich:toggleControl for="helloForm:panel" value=" second" switchToState="second"/&gt;
+    &lt;/h:panelGroup&gt;
+  &lt;/f:facet&gt;
+&lt;/rich:togglePanel&gt;
+</programlisting>
+		</example>
 	</section>
 
 </chapter>

Modified: root/docs/trunk/Component_Reference/en-US/Preface.xml
===================================================================
--- root/docs/trunk/Component_Reference/en-US/Preface.xml	2009-11-11 20:48:15 UTC (rev 15864)
+++ root/docs/trunk/Component_Reference/en-US/Preface.xml	2009-11-11 23:44:55 UTC (rev 15865)
@@ -4,10 +4,10 @@
 
 <preface id="pref-Component_Reference-Preface">
 	<title>Preface</title>
-	<!--    FOR JDOCBOOK    --><xi:include href="Common_Content/Conventions.xml" xmlns:xi="http://www.w3.org/2001/XInclude"><!--    FOR PUBLICAN    --><xi:fallback xmlns:xi="http://www.w3.org/2001/XInclude"><xi:include href="fallback_content/Conventions.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>
+	<!--       FOR JDOCBOOK       --><xi:include href="Common_Content/Conventions.xml" xmlns:xi="http://www.w3.org/2001/XInclude"><!--       FOR PUBLICAN       --><xi:fallback xmlns:xi="http://www.w3.org/2001/XInclude"><xi:include href="fallback_content/Conventions.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>
 	</xi:fallback>
 	</xi:include>
-	<!--    PUBLICAN'S ORIGINAL XINCLUDES    --><xi:include href="Feedback.xml" xmlns:xi="http://www.w3.org/2001/XInclude"><xi:fallback xmlns:xi="http://www.w3.org/2001/XInclude"><xi:include href="Common_Content/Feedback.xml" xmlns:xi="http://www.w3.org/2001/XInclude"><!--    FOR JDOCBOOK    --><xi:fallback xmlns:xi="http://www.w3.org/2001/XInclude"><xi:include href="fallback_content/Feedback.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>
+	<!--       PUBLICAN'S ORIGINAL XINCLUDES       --><xi:include href="Feedback.xml" xmlns:xi="http://www.w3.org/2001/XInclude"><xi:fallback xmlns:xi="http://www.w3.org/2001/XInclude"><xi:include href="Common_Content/Feedback.xml" xmlns:xi="http://www.w3.org/2001/XInclude"><!--       FOR JDOCBOOK       --><xi:fallback xmlns:xi="http://www.w3.org/2001/XInclude"><xi:include href="fallback_content/Feedback.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>
 	</xi:fallback>
 	</xi:include>
 	</xi:fallback>

Modified: root/docs/trunk/Component_Reference/en-US/Tables_and_grids.xml
===================================================================
--- root/docs/trunk/Component_Reference/en-US/Tables_and_grids.xml	2009-11-11 20:48:15 UTC (rev 15864)
+++ root/docs/trunk/Component_Reference/en-US/Tables_and_grids.xml	2009-11-11 23:44:55 UTC (rev 15865)
@@ -5,33 +5,209 @@
 <chapter id="chap-Component_Reference-Tables_and_grids">
 	<title>Tables and grids</title>
 	<para>
-		Incomplete
+		This chapter covers all components related to the display of tables and grids.
 	</para>
 	<section id="sect-Component_Reference-Tables_and_grids-richcolumn">
 		<title>rich:column</title>
 		<para>
-			Incomplete
+			The <classname>&lt;rich:column&gt;</classname> component facilitates columns in a table or other <classname>UIData</classname> component. It supports merging columns and rows, sorting, filtering, and customized skinning.
 		</para>
+		<para>
+			In general usage, the the <classname>&lt;rich:column&gt;</classname> component is used in the same was as the JavaServer Faces (<acronym>JSF</acronym>) <classname>&lt;h:column&gt;</classname> component. It requires no extra attributes for basic usage, as shown in <xref linkend="exam-Component_Reference-richcolumn-Basic_column_example" /> and the resulting <xref linkend="figu-Component_Reference-richcolumn-Basic_column_example" />.
+		</para>
+		<example id="exam-Component_Reference-richcolumn-Basic_column_example">
+			<title>Basic column example</title>
+			
+<programlisting language="xml">
+&lt;rich:dataTable value="#{capitalsBean.capitals}" var="cap" rows="5"&gt; 
+  &lt;rich:column&gt;
+    &lt;f:facet name="header"&gt;State Flag&lt;/f:facet&gt;
+    &lt;h:graphicImage value="#{cap.stateFlag}"/&gt;
+  &lt;/rich:column&gt;
+  &lt;rich:column&gt;
+    &lt;f:facet name="header"&gt;State Name&lt;/f:facet&gt;
+    &lt;h:outputText value="#{cap.state}"/&gt;
+  &lt;/rich:column&gt;
+  &lt;rich:column &gt;
+    &lt;f:facet name="header"&gt;State Capital&lt;/f:facet&gt;
+    &lt;h:outputText value="#{cap.name}"/&gt;
+  &lt;/rich:column&gt;
+  &lt;rich:column&gt;
+    &lt;f:facet name="header"&gt;Time Zone&lt;/f:facet&gt;
+    &lt;h:outputText value="#{cap.timeZone}"/&gt;
+  &lt;/rich:column&gt;
+&lt;/rich:dataTable&gt;
+</programlisting>
+		</example>
+		<figure id="figu-Component_Reference-richcolumn-Basic_column_example">
+			<title>Basic column example</title>
+			<mediaobject>
+				<imageobject>
+					<imagedata fileref="images/figu-Component_Reference-richcolumn-Basic_column_example.png" format="PNG" />
+				</imageobject>
+			</mediaobject>
+		</figure>
+		<para>
+			Columns can be merged by using the <code>colspan</code> attribute to specify how many normal columns to span. The <code>colspan</code> attribute is used in conjunction with the <code>breakBefore</code> attribute on the next column to determine how the merged columns are laid out. <xref linkend="exam-Component_Reference-richcolumn-Column_spanning_example" /> and the resulting <xref linkend="figu-Component_Reference-richcolumn-Column_spanning_example" /> show the first column spanning a width of three columns, with the others broken on to the following line.
+		</para>
+		<example id="exam-Component_Reference-richcolumn-Column_spanning_example">
+			<title>Column spanning example</title>
+			
+<programlisting language="xml">
+&lt;rich:dataTable value="#{capitalsBean.capitals}" var="cap" rows="5"&gt; 
+  &lt;rich:column colspan="3"&gt;
+    &lt;h:graphicImage value="#{cap.stateFlag}"/&gt;
+  &lt;/rich:column&gt;
+  &lt;rich:column breakBefore="true"&gt; 
+    &lt;h:outputText value="#{cap.state}"/&gt;
+  &lt;/rich:column&gt;
+  &lt;rich:column &gt;
+    &lt;h:outputText value="#{cap.name}"/&gt;
+  &lt;/rich:column&gt;
+  &lt;rich:column&gt;
+    &lt;h:outputText value="#{cap.timeZone}"/&gt;
+  &lt;/rich:column&gt;
+&lt;/rich:dataTable&gt;
+</programlisting>
+		</example>
+		<figure id="figu-Component_Reference-richcolumn-Column_spanning_example">
+			<title>Column spanning example</title>
+			<mediaobject>
+				<imageobject>
+					<imagedata fileref="images/figu-Component_Reference-richcolumn-Column_spanning_example.png" format="PNG" />
+				</imageobject>
+			</mediaobject>
+		</figure>
+		<para>
+			Similarly, the <code>rowspan</code> attribute can be used to merge and span rows. Again the <code>breakBefore</code> attribute needs to be used on related <classname>&lt;rich:column&gt;</classname> components to define the layout. <xref linkend="exam-Component_Reference-richcolumn-Row_spanning_example" /> and the resulting <xref linkend="figu-Component_Reference-richcolumnGroup-Complex_headers_using_column_groups" /> show the first column of the table spanning three rows.
+		</para>
+		<example id="exam-Component_Reference-richcolumn-Row_spanning_example">
+			<title>Row spanning example</title>
+			
+<programlisting language="xml">
+&lt;rich:dataTable value="#{capitalsBean.capitals}" var="cap" rows="5"&gt; 
+  &lt;rich:column rowspan="3"&gt;
+    &lt;f:facet name="header"&gt;State Flag&lt;/f:facet&gt;
+    &lt;h:graphicImage value="#{cap.stateFlag}"/&gt;
+  &lt;/rich:column&gt;
+  &lt;rich:column&gt; 
+    &lt;f:facet name="header"&gt;State Info&lt;/f:facet&gt;
+    &lt;h:outputText value="#{cap.state}"/&gt;
+  &lt;/rich:column&gt;
+  &lt;rich:column breakBefore="true"&gt;
+    &lt;h:outputText value="#{cap.name}"/&gt;
+  &lt;/rich:column&gt;
+  &lt;rich:column breakBefore="true"&gt;
+    &lt;h:outputText value="#{cap.timeZone}"/&gt;
+  &lt;/rich:column&gt;
+&lt;/rich:dataTable&gt;
+</programlisting>
+		</example>
+		<figure id="figu-Component_Reference-richcolumn-Row_spanning_example">
+			<title>Row spanning example</title>
+			<mediaobject>
+				<imageobject>
+					<imagedata fileref="images/figu-Component_Reference-richcolumn-Row_spanning_example.png" format="PNG" />
+				</imageobject>
+			</mediaobject>
+		</figure>
+		<para>
+			For details on filtering and sorting columns, refer to <xref linkend="sect-Component_Reference-Tables_and_grids-Table_filtering" /> and <xref linkend="sect-Component_Reference-Tables_and_grids-Table_sorting" />.
+		</para>
 	</section>
 	
 	<section id="sect-Component_Reference-Tables_and_grids-richcolumnGroup">
 		<title>rich:columnGroup</title>
 		<para>
-			Incomplete
+			The <classname>&lt;rich:columnGroup&gt;</classname> component combines multiple columns in a single row to organize complex parts of a table. The resulting effect is similar to using the <code>breakBefore</code> attribute of the <classname>&lt;rich:column&gt;</classname> component, but is clearer and easier to follow in the source code.
 		</para>
+		<para>
+			The <classname>&lt;rich:columnGroup&gt;</classname> can also be used to create complex headers in a table. <xref linkend="exam-Component_Reference-richcolumnGroup-Complex_headers_using_column_groups" /> and the resulting <xref linkend="figu-Component_Reference-richcolumnGroup-Complex_headers_using_column_groups" /> demonstrate how complex headers can be achieved.
+		</para>
+		<example id="exam-Component_Reference-richcolumnGroup-Complex_headers_using_column_groups">
+			<title>Complex headers using column groups</title>
+			
+<programlisting language="xml">
+&lt;rich:dataTable value="#{capitalsBean.capitals}" var="cap" rows="5" id="sublist"&gt; 
+  &lt;f:facet name="header"&gt;
+    &lt;rich:columnGroup&gt;
+      &lt;rich:column rowspan="2"&gt;
+        &lt;h:outputText value="State Flag"/&gt;
+      &lt;/rich:column&gt;
+      &lt;rich:column colspan="3"&gt;
+        &lt;h:outputText value="State Info"/&gt;
+      &lt;/rich:column&gt;
+      &lt;rich:column breakBefore="true"&gt;
+        &lt;h:outputText value="State Name"/&gt;
+      &lt;/rich:column&gt;
+      &lt;rich:column&gt;
+        &lt;h:outputText value="State Capital"/&gt;
+      &lt;/rich:column&gt;
+      &lt;rich:column&gt;
+        &lt;h:outputText value="Time Zone"/&gt;
+      &lt;/rich:column&gt;
+    &lt;/rich:columnGroup&gt;
+  &lt;/f:facet&gt;
+  &lt;rich:column&gt;
+    &lt;h:graphicImage value="#{cap.stateFlag}"/&gt;
+      &lt;/rich:column&gt;
+      &lt;rich:column&gt;
+    &lt;h:outputText value="#{cap.state}"/&gt;
+      &lt;/rich:column&gt;
+      &lt;rich:column&gt;
+    &lt;h:outputText value="#{cap.name}"/&gt;
+      &lt;/rich:column&gt;
+      &lt;rich:column&gt;
+    &lt;h:outputText value="#{cap.timeZone}"/&gt;
+  &lt;/rich:column&gt;
+&lt;/rich:dataTable&gt;
+</programlisting>
+		</example>
+		<figure id="figu-Component_Reference-richcolumnGroup-Complex_headers_using_column_groups">
+			<title>Complex headers using column groups</title>
+			<mediaobject>
+				<imageobject>
+					<imagedata fileref="images/figu-Component_Reference-richcolumnGroup-Complex_headers_using_column_groups.png" format="PNG" />
+				</imageobject>
+			</mediaobject>
+		</figure>
 	</section>
 	
 	<section id="sect-Component_Reference-Tables_and_grids-richcolumns">
 		<title>rich:columns</title>
 		<para>
-			Incomplete
+			The <classname>&lt;rich:columns&gt;</classname> component allows for dynamic sets of columns for tables. Columns and rows can be merged, and the look and feel can be highly customized. The component gets a list from a data model and creates a corresponding set of columns in a <classname>&lt;rich:dataTable&gt;</classname> component. The <classname>&lt;rich:columns&gt;</classname> component also supports header and footer facets.
 		</para>
+		<para>
+			Basic usage of the <classname>&lt;rich:columns&gt;</classname> component requires the <code>value</code> attribute, which points to the data model; the <code>var</code> attribute, which holds the current variable for the collection of data; and the <code>index</code> attribute, which holds the current counter. The <code>id</code> attribute is used for when the individuals rows require identifiers for Ajax events. 
+		</para>
+		<example id="exam-Component_Reference-richcolumns-Complex_headers_using_column_groups">
+			<title>Basic columns example</title>
+<programlisting language="xml">
+&lt;rich:dataTable value="#{dataTableScrollerBean.model}" var="model" width="750"&gt;
+  &lt;rich:columns value="#{dataTableScrollerBean.columns}" var="columns" index="ind" id="column#{ind}"&gt; 
+    &lt;f:facet name="header"&gt;
+      &lt;h:outputText value="#{columns.header}" /&gt;
+    &lt;/f:facet&gt;
+    &lt;h:outputText value="#{model[ind].model} " /&gt;
+    &lt;h:outputText value="#{model[ind].mileage} miles " /&gt;
+    &lt;h:outputText value="#{model[ind].price}$" /&gt;       
+  &lt;/rich:columns&gt; 
+&lt;/rich:dataTable&gt;     
+</programlisting>
+		</example>
+		<para>
+			The <code>columns</code> attribute 
+		</para>
+		<para>
+			For details on filtering and sorting columns, refer to <xref linkend="sect-Component_Reference-Tables_and_grids-Table_filtering" /> and <xref linkend="sect-Component_Reference-Tables_and_grids-Table_sorting" />.
+		</para>
 	</section>
 	
 	<section id="sect-Component_Reference-Tables_and_grids-richdataFilterSlider">
 		<title>rich:dataFilterSlider</title>
 		<para>
-			Incomplete
+			The <classname>&lt;rich:dataFilterSlider&gt;</classname> components is a slider control that can be used for filtering data in a table.
 		</para>
 	</section>
 	

Modified: root/docs/trunk/Component_Reference/en-US/all-Component_Reference.xml
===================================================================
--- root/docs/trunk/Component_Reference/en-US/all-Component_Reference.xml	2009-11-11 20:48:15 UTC (rev 15864)
+++ root/docs/trunk/Component_Reference/en-US/all-Component_Reference.xml	2009-11-11 23:44:55 UTC (rev 15865)
@@ -1,96 +1,92 @@
-<?xml version="1.0" encoding="utf-8"?>
+<?xml version='1.0' encoding='utf-8' ?>
 <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN" "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
-<!ENTITY % BOOK_ENTITIES SYSTEM "Component_Reference.ent">
-<!ENTITY PRODUCT "RichFaces">
-<!ENTITY VERSION "4.0">
-<!ENTITY VERSION_LONG "4.0.0.ALPHA2">
-<!ENTITY BOOKID "Component_Reference">
-<!ENTITY HOLDER "Red Hat">
-<!ENTITY YEAR "2009">
 ]>
-<book lang="en-US" status="draft">
+
+<book status="draft">
 	<bookinfo id="book-Component_Reference-Component_Reference" lang="en-US">
-	<title>Component Reference</title>
-	<subtitle>A reference guide to the components of the RichFaces 4.0.0.ALPHA2<remark> (draft)</remark>
-	 framework</subtitle>
-	<productname>RichFaces</productname>
-	<productnumber>4.0</productnumber>
-	<edition>0.1</edition>
-	<pubsnumber>0</pubsnumber>
-	<abstract>
-		<para>This book details each component in the RichFaces 4.0
-framework, including examples of their use in applications.</para></abstract>
-			<corpauthor>
-				<inlinemediaobject>
-					<imageobject>
-						<imagedata fileref="./images/rf_logo.png" format="PNG" scalefit="1"/>
-					</imageobject>
-					<textobject>
-						<phrase>Logo</phrase>
-					</textobject>
-				</inlinemediaobject>
-			</corpauthor>
-			<copyright>
-				<year>2009</year>
-				<holder>Red Hat</holder>
-			</copyright>
-			<!--     FOR PUBLICAN      --><legalnotice xml:base="Common_Content/Legal_Notice.xml">
-	<para>
-		Copyright <trademark class="copyright"/> 2009 Red Hat This material may only be distributed subject to the terms and conditions set forth in the GNU Free Documentation License (GFDL), V1.2 or later (the latest version is presently available at <ulink url="http://www.gnu.org/licenses/fdl.txt">http://www.gnu.org/licenses/fdl.txt</ulink>).
-	</para>
-</legalnotice>
-			<authorgroup lang="en-US">
-	<author>
-		<firstname>Sean</firstname>
-		<surname>Rogers</surname>
-		<affiliation>
-			<orgname>Red Hat</orgname>
-			<orgdiv>Engineering Content Services</orgdiv>
-		</affiliation>
-		<email>serogers at redhat.com</email>
-	</author>
-</authorgroup>
-		</bookinfo>
-	<!--      <xi:include href="Preface.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>      --><chapter id="chap-Component_Reference-Introduction" lang="en-US">
-	<title>Introduction</title>
-	<para>
-		This book is a guide to the various components available in the RichFaces 4.0 framework. It includes descriptions of the role of the components, details on how best to use them, coded examples of their use, and basic references of their properties and attributes.
-	</para>
-	<para>
-		For full in-depth references for all component classes and properties, refer to the <citetitle>API Reference</citetitle> available from the RichFaces website.
-	</para>
-	<section id="sect-Component_Reference-Introduction-Libraries">
-		<title>Libraries</title>
-		<para>
-			The RichFaces framework as it now stands is made up of two tag libraries: the <classname>a4j</classname> library and the <classname>rich</classname> library. The <classname>a4j</classname> tag library represents Ajax4jsf, which provides page-level Ajax support with core Ajax components. This allows developers to make use of custom Ajax behavior with existing components. The <classname>rich</classname> tag library provides Ajax support at the component level instead, and includes ready-made, self-contained components. These components don't require additional configuration in order to send requests or update.
-		</para>
-		<note>
-			<title>Note</title>
-			<para>
-				All components in the <classname>a4j</classname> library feature built-in Ajax support, so it is unnecessary to add the <classname>&lt;a4j:ajax&gt;</classname> behavior.
-			</para>
-		</note>
-	</section>
+		<title>Component Reference</title>
+		<subtitle>A reference guide to the components of the RichFaces 4.0.0.ALPHA2<remark> (draft)</remark>
+		 framework</subtitle>
+		<productname>RichFaces</productname>
+		<productnumber>4.0</productnumber>
+		<edition>0.1</edition>
+		<pubsnumber>0</pubsnumber>
+		<abstract>
+			<para>This book details each component in the RichFaces 4.0 framework,
+including examples of their use in applications.</para></abstract>
+				<corpauthor>
+					<inlinemediaobject>
+						<imageobject>
+							<imagedata fileref="./images/rf_logo.png" format="PNG" scalefit="1" />
+						</imageobject>
+						<textobject>
+							<phrase>Logo</phrase>
+						</textobject>
+					</inlinemediaobject>
+				</corpauthor>
+				<copyright>
+					<year>2009</year>
+					<holder>Red Hat</holder>
+				</copyright>
+				<!--        FOR PUBLICAN         -->
+				<legalnotice xml:base="Common_Content/Legal_Notice.xml">
+					<para>
+						Copyright <trademark class="copyright"></trademark> 2009 Red Hat This material may only be distributed subject to the terms and conditions set forth in the GNU Free Documentation License (GFDL), V1.2 or later (the latest version is presently available at <ulink url="http://www.gnu.org/licenses/fdl.txt">http://www.gnu.org/licenses/fdl.txt</ulink>).
+					</para>
+				</legalnotice>
+				<authorgroup lang="en-US">
+					<author>
+						<firstname>Sean</firstname>
+						<surname>Rogers</surname>
+						<affiliation>
+							<orgname>Red Hat</orgname>
+							<orgdiv>Engineering Content Services</orgdiv>
+						</affiliation>
+						<email>serogers at redhat.com</email>
+					</author>
+				</authorgroup>
+			</bookinfo>
+			<!--         <xi:include href="Preface.xml" xmlns:xi="http://www.w3.org/2001/XInclude"></xi:include>         -->
+			<chapter id="chap-Component_Reference-Introduction" lang="en-US">
+				<title>Introduction</title>
+				<para>
+					This book is a guide to the various components available in the RichFaces 4.0 framework. It includes descriptions of the role of the components, details on how best to use them, coded examples of their use, and basic references of their properties and attributes.
+				</para>
+				<para>
+					For full in-depth references for all component classes and properties, refer to the <citetitle>API Reference</citetitle> available from the RichFaces website.
+				</para>
+				<section id="sect-Component_Reference-Introduction-Libraries">
+					<title>Libraries</title>
+					<para>
+						The RichFaces framework as it now stands is made up of two tag libraries: the <classname>a4j</classname> library and the <classname>rich</classname> library. The <classname>a4j</classname> tag library represents Ajax4jsf, which provides page-level Ajax support with core Ajax components. This allows developers to make use of custom Ajax behavior with existing components. The <classname>rich</classname> tag library provides Ajax support at the component level instead, and includes ready-made, self-contained components. These components don&#39;t require additional configuration in order to send requests or update.
+					</para>
+					<note>
+						<title>Note</title>
+						<para>
+							All components in the <classname>a4j</classname> library feature built-in Ajax support, so it is unnecessary to add the <classname>&lt;a4j:ajax&gt;</classname> behavior.
+						</para>
+					</note>
+				</section>
 
-</chapter>
-	<chapter id="chap-Component_Reference-Common_Ajax_attributes" lang="en-US">
-	<title>Common Ajax attributes</title>
-	<para>
-		The Ajax components in the <classname>a4j</classname> library share common attributes to perform similar functionality. Most RichFaces components in the <classname>rich</classname> library that feature built-in Ajax support share these common attributes as well.
-	</para>
-	<para>
-		Most attributes have default values, so they need not be explicitly set for the component to function in its default state. These attributes can be altered to customize the behavior of the component if necessary.
-	</para>
-	<section id="sect-Component_Reference-Common_Ajax_attributes-Rendering">
-		<title>Rendering</title>
-		<section id="sect-Component_Reference-Rendering-render">
-			<title><code>render</code></title>
-			<para>
-				The <code>render</code> attribute provides a reference to one or more areas on the page that need updating after an Ajax interaction. It uses the <code>UIComponent.findComponent()</code> algorithm to find the components in the component tree using their <code>id</code> attributes as a reference. Components can be referenced by their <code>id</code> attribute alone, or by a hierarchy of components' <code>id</code> attributes to make locating components more efficient. <xref linkend="exam-Component_Reference-render-render_example"/> shows both ways of referencing components. Each command button will correctly render the referenced panel grids, but the second button locates the references more efficiently with explicit hierarchy paths.
-			</para>
-			<example id="exam-Component_Reference-render-render_example">
-				<title>render example</title>
-				
+			</chapter>
+			<chapter id="chap-Component_Reference-Common_Ajax_attributes" lang="en-US">
+				<title>Common Ajax attributes</title>
+				<para>
+					The Ajax components in the <classname>a4j</classname> library share common attributes to perform similar functionality. Most RichFaces components in the <classname>rich</classname> library that feature built-in Ajax support share these common attributes as well.
+				</para>
+				<para>
+					Most attributes have default values, so they need not be explicitly set for the component to function in its default state. These attributes can be altered to customize the behavior of the component if necessary.
+				</para>
+				<section id="sect-Component_Reference-Common_Ajax_attributes-Rendering">
+					<title>Rendering</title>
+					<section id="sect-Component_Reference-Rendering-render">
+						<title><code>render</code></title>
+						<para>
+							The <code>render</code> attribute provides a reference to one or more areas on the page that need updating after an Ajax interaction. It uses the <code>UIComponent.findComponent()</code> algorithm to find the components in the component tree using their <code>id</code> attributes as a reference. Components can be referenced by their <code>id</code> attribute alone, or by a hierarchy of components&#39; <code>id</code> attributes to make locating components more efficient. <xref linkend="exam-Component_Reference-render-render_example" /> shows both ways of referencing components. Each command button will correctly render the referenced panel grids, but the second button locates the references more efficiently with explicit hierarchy paths.
+						</para>
+						<example id="exam-Component_Reference-render-render_example">
+							<title>render example</title>
+							
 <programlisting language="xml">
 &lt;h:form id="form1"&gt;
     &lt;a4j:commandButton value="Basic reference" render="infoBlock, infoBlock2" /&gt;
@@ -107,42 +103,42 @@
     &lt;/h:panelGrid&gt;
 &lt;/f:subview&gt;
 </programlisting>
-			</example>
-			<para>
-				The value of the <code>render</code> attribute can also be an expression written using JavaServer Faces' Expression Language (<acronym>EL</acronym>); this can either be a <type>Set</type>, <type>Collection</type>, <type>Array</type>, or <type>String</type>.
-			</para>
-			<important>
-				<title>Important</title>
-				<para>
-					A common problem with using <code>render</code> occurs when the referenced component has a <code>rendered</code> attribute. <acronym>JSF</acronym> does not mark the place in the browser's Document Object Model (<acronym>DOM</acronym>) where the rendered component would be placed in case the <code>rendered</code> attribute returns <literal>false</literal>. As such, when RichFaces sends the render code to the client, the page does not update as the place for the update is not known.
-				</para>
-				<para>
-					To work around this issue, wrap the component to be rendered in an <classname>&lt;a4j:outputPanel&gt;</classname> with <code>layout="none"</code>. The <classname>&lt;a4j:outputPanel&gt;</classname> will receive the update and render the component as required.
-				</para>
-			</important>
-		</section>
-		
-		<section id="sect-Component_Reference-Rendering-ajaxRendered">
-			<title>ajaxRendered</title>
-			<para>
-				A component with <code>ajaxRendered="true"</code> will be re-rendered with <emphasis>every</emphasis> Ajax request, even when not referenced by the requesting component's <code>render</code> attribute. This can be useful for updating a status display or error message without explicitly requesting it.
-			</para>
-			<para>
-				Rendering of components in this way can be repressed by adding <code>limitRender="true"</code> to the requesting component, as described in <xref linkend="sect-Component_Reference-Rendering-limitRender"/>.
-			</para>
-		</section>
-		
-		<section id="sect-Component_Reference-Rendering-limitRender">
-			<title>limitRender</title>
-			<para>
-				A component with <code>limitRender="true"</code> specified will <emphasis>not</emphasis> cause components with <code>ajaxRendered="true"</code> to re-render, and only those components listed in the <code>render</code> attribute will be updated. This essentially overrides the <code>ajaxRendered</code> attribute in other components.
-			</para>
-			<para>
-				<xref linkend="exam-Component_Reference-data-Data_reference_example"/> describes two command buttons, a panel grid rendered by the buttons, and an output panel showing error messages. When the first button is clicked, the output panel is rendered even though it is not explicitly referenced with the <code>render</code> attribute. The second button, however, uses <code>limitRender="true"</code> to override the output panel's rendering and only render the panel grid.
-			</para>
-			<example id="exam-Component_Reference-limitRender-Rendering_example">
-				<title>Rendering example</title>
-				
+						</example>
+						<para>
+							The value of the <code>render</code> attribute can also be an expression written using JavaServer Faces&#39; Expression Language (<acronym>EL</acronym>); this can either be a <type>Set</type>, <type>Collection</type>, <type>Array</type>, or <type>String</type>.
+						</para>
+						<important>
+							<title>Important</title>
+							<para>
+								A common problem with using <code>render</code> occurs when the referenced component has a <code>rendered</code> attribute. <acronym>JSF</acronym> does not mark the place in the browser&#39;s Document Object Model (<acronym>DOM</acronym>) where the rendered component would be placed in case the <code>rendered</code> attribute returns <literal>false</literal>. As such, when RichFaces sends the render code to the client, the page does not update as the place for the update is not known.
+							</para>
+							<para>
+								To work around this issue, wrap the component to be rendered in an <classname>&lt;a4j:outputPanel&gt;</classname> with <code>layout="none"</code>. The <classname>&lt;a4j:outputPanel&gt;</classname> will receive the update and render the component as required.
+							</para>
+						</important>
+					</section>
+					
+					<section id="sect-Component_Reference-Rendering-ajaxRendered">
+						<title>ajaxRendered</title>
+						<para>
+							A component with <code>ajaxRendered="true"</code> will be re-rendered with <emphasis>every</emphasis> Ajax request, even when not referenced by the requesting component&#39;s <code>render</code> attribute. This can be useful for updating a status display or error message without explicitly requesting it.
+						</para>
+						<para>
+							Rendering of components in this way can be repressed by adding <code>limitRender="true"</code> to the requesting component, as described in <xref linkend="sect-Component_Reference-Rendering-limitRender" />.
+						</para>
+					</section>
+					
+					<section id="sect-Component_Reference-Rendering-limitRender">
+						<title>limitRender</title>
+						<para>
+							A component with <code>limitRender="true"</code> specified will <emphasis>not</emphasis> cause components with <code>ajaxRendered="true"</code> to re-render, and only those components listed in the <code>render</code> attribute will be updated. This essentially overrides the <code>ajaxRendered</code> attribute in other components.
+						</para>
+						<para>
+							<xref linkend="exam-Component_Reference-data-Data_reference_example" /> describes two command buttons, a panel grid rendered by the buttons, and an output panel showing error messages. When the first button is clicked, the output panel is rendered even though it is not explicitly referenced with the <code>render</code> attribute. The second button, however, uses <code>limitRender="true"</code> to override the output panel&#39;s rendering and only render the panel grid.
+						</para>
+						<example id="exam-Component_Reference-limitRender-Rendering_example">
+							<title>Rendering example</title>
+							
 <programlisting language="XML">
 &lt;h:form id="form1"&gt;
     &lt;a4j:commandButton value="Normal rendering" render="infoBlock" /&gt;
@@ -157,281 +153,281 @@
     &lt;h:messages /&gt;
 &lt;/a4j:outputPanel&gt;
 </programlisting>
-			</example>
-		</section>
+						</example>
+					</section>
 
-	</section>
-	
-	<section id="sect-Component_Reference-Common_Ajax_attributes-Queuing_and_traffic_control">
-		<title>Queuing and traffic control</title>
-		<section id="sect-Component_Reference-Queuing_and_traffic_control-queue">
-			<title>queue</title>
-			<para>
-				The <code>queue</code> attribute defines the name of the queue that will be used to schedule upcoming Ajax requests. Typically RichFaces does not queue Ajax requests, so if events are produced simultaneously they will arrive at the server simultaneously. This can potentially lead to unpredictable results when the responses are returned. The <code>queue</code> attribute ensures that the requests are responded to in a set order.
-			</para>
-			<para>
-				A queue name is specified with the <code>queue</code> attribute, and each request added to the named queue is completed one at a time in the order they were sent. In addition, RichFaces intelligently removes similar requests produced by the same event from a queue to improve performance, protecting against unnecessary traffic flooding and
-			</para>
-		</section>
-		
-		<section id="sect-Component_Reference-Queuing_and_traffic_control-requestDelay">
-			<title>requestDelay</title>
-			<para>
-				The <code>requestDelay</code> attribute specifies an amount of time in milliseconds for the request to wait in the queue before being sent to the server. If a similar request is added to the queue before the delay is over, the original request is removed from the queue and not sent.
-			</para>
-		</section>
-		
-		<section id="sect-Component_Reference-Queuing_and_traffic_control-ignoreDupResponses">
-			<title>ignoreDupResponses</title>
-			<para>
-				When set to <literal>true</literal>, the <code>ignoreDupResponses</code> attribute causes responses from the server for the request to be ignored if there is another similar request in the queue. This avoids unnecessary updates on the client when another update is expected. The request is still processed on the server, but if another similar request has been queued then no updates are made on the client.
-			</para>
-		</section>
+				</section>
+				
+				<section id="sect-Component_Reference-Common_Ajax_attributes-Queuing_and_traffic_control">
+					<title>Queuing and traffic control</title>
+					<section id="sect-Component_Reference-Queuing_and_traffic_control-queue">
+						<title>queue</title>
+						<para>
+							The <code>queue</code> attribute defines the name of the queue that will be used to schedule upcoming Ajax requests. Typically RichFaces does not queue Ajax requests, so if events are produced simultaneously they will arrive at the server simultaneously. This can potentially lead to unpredictable results when the responses are returned. The <code>queue</code> attribute ensures that the requests are responded to in a set order.
+						</para>
+						<para>
+							A queue name is specified with the <code>queue</code> attribute, and each request added to the named queue is completed one at a time in the order they were sent. In addition, RichFaces intelligently removes similar requests produced by the same event from a queue to improve performance, protecting against unnecessary traffic flooding and
+						</para>
+					</section>
+					
+					<section id="sect-Component_Reference-Queuing_and_traffic_control-requestDelay">
+						<title>requestDelay</title>
+						<para>
+							The <code>requestDelay</code> attribute specifies an amount of time in milliseconds for the request to wait in the queue before being sent to the server. If a similar request is added to the queue before the delay is over, the original request is removed from the queue and not sent.
+						</para>
+					</section>
+					
+					<section id="sect-Component_Reference-Queuing_and_traffic_control-ignoreDupResponses">
+						<title>ignoreDupResponses</title>
+						<para>
+							When set to <literal>true</literal>, the <code>ignoreDupResponses</code> attribute causes responses from the server for the request to be ignored if there is another similar request in the queue. This avoids unnecessary updates on the client when another update is expected. The request is still processed on the server, but if another similar request has been queued then no updates are made on the client.
+						</para>
+					</section>
 
-	</section>
-	
-	<section id="sect-Component_Reference-Common_Ajax_attributes-Data_processing">
-		<title>Data processing</title>
-		<para>
-			RichFaces uses a form-based approach for sending Ajax requests. As such, each time a request is sent the data from the requesting component's parent <acronym>JSF</acronym> form is submitted along with the <acronym>XMLHTTPRequest</acronym> object. The form data contains values from the input element and auxiliary information such as state-saving data.
-		</para>
-		<section id="sect-Component_Reference-Data_processing-process">
-			<title>process</title>
-			<para>
-				The <code>process</code> attribute allows <acronym>JSF</acronym> processing to be limited to defined components. To only process the requesting component, <code>process="@this"</code> can be used.
-			</para>
-		</section>
-		
-		<section id="sect-Component_Reference-Data_processing-immediate">
-			<title>immediate</title>
-			<para>
-				If the <code>immediate</code> attribute is set to <literal>true</literal>, the default ActionListener is executed immediately during the Apply Request Values phase of the request processing lifecycle, rather than waitingfor the Invoke Application phase. This allows some data model values to be updated regardless of whether the Validation phase is successful or not.
-			</para>
-		</section>
-		
-		<section id="sect-Component_Reference-Data_processing-bypassUpdates">
-			<title>bypassUpdates</title>
-			<para>
-				If the <code>bypassUpdates</code> attribute is set to <literal>true</literal>, the Update Model phase of the request processing lifecycle is bypassed. This is useful if user input needs to be validated but the model does not need to be updated.
-			</para>
-		</section>
+				</section>
+				
+				<section id="sect-Component_Reference-Common_Ajax_attributes-Data_processing">
+					<title>Data processing</title>
+					<para>
+						RichFaces uses a form-based approach for sending Ajax requests. As such, each time a request is sent the data from the requesting component&#39;s parent <acronym>JSF</acronym> form is submitted along with the <acronym>XMLHTTPRequest</acronym> object. The form data contains values from the input element and auxiliary information such as state-saving data.
+					</para>
+					<section id="sect-Component_Reference-Data_processing-process">
+						<title>process</title>
+						<para>
+							The <code>process</code> attribute allows <acronym>JSF</acronym> processing to be limited to defined components. To only process the requesting component, <code>process="@this"</code> can be used.
+						</para>
+					</section>
+					
+					<section id="sect-Component_Reference-Data_processing-immediate">
+						<title>immediate</title>
+						<para>
+							If the <code>immediate</code> attribute is set to <literal>true</literal>, the default ActionListener is executed immediately during the Apply Request Values phase of the request processing lifecycle, rather than waitingfor the Invoke Application phase. This allows some data model values to be updated regardless of whether the Validation phase is successful or not.
+						</para>
+					</section>
+					
+					<section id="sect-Component_Reference-Data_processing-bypassUpdates">
+						<title>bypassUpdates</title>
+						<para>
+							If the <code>bypassUpdates</code> attribute is set to <literal>true</literal>, the Update Model phase of the request processing lifecycle is bypassed. This is useful if user input needs to be validated but the model does not need to be updated.
+						</para>
+					</section>
 
-	</section>
-	
-	<section id="sect-Component_Reference-Common_Ajax_attributes-Action_and_navigation">
-		<title>Action and navigation</title>
-		<para>
-			The <code>action</code> and <code>actionListener</code> attributes can be used to invoke action methods and define action events.
-		</para>
-		<section id="sect-Component_Reference-Action_and_navigation-action">
-			<title>action</title>
-			<para>
-				The <code>action</code> attribute is a method binding that points to the application action to be invoked. The method can be activated during the Apply Request Values phase or the Invoke Application phase of the request processing lifecycle.
-			</para>
-			<para>
-				The method specified in the <code>action</code> attribute must return <literal>null</literal> for an Ajax response with a partial page update.
-			</para>
-		</section>
-		
-		<section id="sect-Component_Reference-Action_and_navigation-actionListener">
-			<title>actionListener</title>
-			<para>
-				The <code>actionListener</code> attribute is a method binding for <classname>ActionEvent</classname> methods with a return type of <literal>void</literal>.
-			</para>
-		</section>
+				</section>
+				
+				<section id="sect-Component_Reference-Common_Ajax_attributes-Action_and_navigation">
+					<title>Action and navigation</title>
+					<para>
+						The <code>action</code> and <code>actionListener</code> attributes can be used to invoke action methods and define action events.
+					</para>
+					<section id="sect-Component_Reference-Action_and_navigation-action">
+						<title>action</title>
+						<para>
+							The <code>action</code> attribute is a method binding that points to the application action to be invoked. The method can be activated during the Apply Request Values phase or the Invoke Application phase of the request processing lifecycle.
+						</para>
+						<para>
+							The method specified in the <code>action</code> attribute must return <literal>null</literal> for an Ajax response with a partial page update.
+						</para>
+					</section>
+					
+					<section id="sect-Component_Reference-Action_and_navigation-actionListener">
+						<title>actionListener</title>
+						<para>
+							The <code>actionListener</code> attribute is a method binding for <classname>ActionEvent</classname> methods with a return type of <literal>void</literal>.
+						</para>
+					</section>
 
-	</section>
-	
-	<section id="sect-Component_Reference-Common_Ajax_attributes-Events_and_JavaScript_interactions">
-		<title>Events and JavaScript interactions</title>
-		<para>
-			RichFaces allows for Ajax-enabled <acronym>JSF</acronym> applications to be developed without using any additional JavaScript code. However it is still possible to invoke custom JavaScript code through Ajax events.
-		</para>
-		<section id="sect-Component_Reference-Events_and_JavaScript_interactions-onsubmit">
-			<title>onsubmit</title>
-			<para>
-				The <code>onsubmit</code> attribute will invoke the JavaScript code before the Ajax request is sent. The request is canceled if the JavaScript code defined for <code>onsubmit</code> returns <literal>false</literal>.
-			</para>
-		</section>
-		
-		<section id="sect-Component_Reference-Events_and_JavaScript_interactions-onclick">
-			<title>onclick</title>
-			<para>
-				The <code>onclick</code> attribute functions similarly to the <code>onsubmit</code> attribute for those components that can be clicked, such as <classname>&lt;a4j:commandButton&gt;</classname> and <classname>&lt;a4j:commandLink&gt;</classname>. It invokes the defined JavaScript before the Ajax request, and the request will be canceled if the defined code returns <literal>false</literal>.
-			</para>
-		</section>
-		
-		<section id="sect-Component_Reference-Events_and_JavaScript_interactions-oncomplete">
-			<title>oncomplete</title>
-			<para>
-				The <code>oncomplete</code> attribute invokes the JavaScript code after the Ajax response has been returned and the <acronym>DOM</acronym> tree of the browser has been updated. The code is registered for further invocation of the <acronym>XMLHTTP</acronym> request object before an Ajax request is sent. As such, using <acronym>JSF</acronym> Expression Language (<acronym>EL</acronym>) value binding means the code will not be changed during processing of the request on the server. Additionally the <code>oncomplete</code> attribute cannot use the <literal>this</literal> keyword as it will not point to the component from which the Ajax request was initiated.
-			</para>
-		</section>
-		
-		<section id="sect-Component_Reference-Events_and_JavaScript_interactions-onbegin">
-			<title>onbegin</title>
-			<para>
-				Incomplete
-			</para>
-		</section>
-		
-		<section id="sect-Component_Reference-Events_and_JavaScript_interactions-onsuccess">
-			<title>onsuccess</title>
-			<para>
-				Incomplete
-			</para>
-		</section>
-		
-		<section id="sect-Component_Reference-Events_and_JavaScript_interactions-onerror">
-			<title>onerror</title>
-			<para>
-				Incomplete
-			</para>
-		</section>
-		
-		<section id="sect-Component_Reference-Events_and_JavaScript_interactions-data">
-			<title>data</title>
-			<para>
-				The <code>data</code> attribute allows the use of additional data during an Ajax call. <acronym>JSF</acronym> Expression Language (<acronym>EL</acronym>) can be used to reference the property of the managed bean, and its value will be serialized in JavaScript Object Notation (<acronym>JSON</acronym>) and returned to the client side. The property can then be referenced through the <code>data</code> variable in the event attribute definitions. Both primitive types and complex types such as arrays and collections can be serialized and used with <code>data</code>.
-			</para>
-			<example id="exam-Component_Reference-data-Data_reference_example">
-				<title>Data reference example</title>
+				</section>
 				
+				<section id="sect-Component_Reference-Common_Ajax_attributes-Events_and_JavaScript_interactions">
+					<title>Events and JavaScript interactions</title>
+					<para>
+						RichFaces allows for Ajax-enabled <acronym>JSF</acronym> applications to be developed without using any additional JavaScript code. However it is still possible to invoke custom JavaScript code through Ajax events.
+					</para>
+					<section id="sect-Component_Reference-Events_and_JavaScript_interactions-onsubmit">
+						<title>onsubmit</title>
+						<para>
+							The <code>onsubmit</code> attribute will invoke the JavaScript code before the Ajax request is sent. The request is canceled if the JavaScript code defined for <code>onsubmit</code> returns <literal>false</literal>.
+						</para>
+					</section>
+					
+					<section id="sect-Component_Reference-Events_and_JavaScript_interactions-onclick">
+						<title>onclick</title>
+						<para>
+							The <code>onclick</code> attribute functions similarly to the <code>onsubmit</code> attribute for those components that can be clicked, such as <classname>&lt;a4j:commandButton&gt;</classname> and <classname>&lt;a4j:commandLink&gt;</classname>. It invokes the defined JavaScript before the Ajax request, and the request will be canceled if the defined code returns <literal>false</literal>.
+						</para>
+					</section>
+					
+					<section id="sect-Component_Reference-Events_and_JavaScript_interactions-oncomplete">
+						<title>oncomplete</title>
+						<para>
+							The <code>oncomplete</code> attribute invokes the JavaScript code after the Ajax response has been returned and the <acronym>DOM</acronym> tree of the browser has been updated. The code is registered for further invocation of the <acronym>XMLHTTP</acronym> request object before an Ajax request is sent. As such, using <acronym>JSF</acronym> Expression Language (<acronym>EL</acronym>) value binding means the code will not be changed during processing of the request on the server. Additionally the <code>oncomplete</code> attribute cannot use the <literal>this</literal> keyword as it will not point to the component from which the Ajax request was initiated.
+						</para>
+					</section>
+					
+					<section id="sect-Component_Reference-Events_and_JavaScript_interactions-onbegin">
+						<title>onbegin</title>
+						<para>
+							Incomplete
+						</para>
+					</section>
+					
+					<section id="sect-Component_Reference-Events_and_JavaScript_interactions-onsuccess">
+						<title>onsuccess</title>
+						<para>
+							Incomplete
+						</para>
+					</section>
+					
+					<section id="sect-Component_Reference-Events_and_JavaScript_interactions-onerror">
+						<title>onerror</title>
+						<para>
+							Incomplete
+						</para>
+					</section>
+					
+					<section id="sect-Component_Reference-Events_and_JavaScript_interactions-data">
+						<title>data</title>
+						<para>
+							The <code>data</code> attribute allows the use of additional data during an Ajax call. <acronym>JSF</acronym> Expression Language (<acronym>EL</acronym>) can be used to reference the property of the managed bean, and its value will be serialized in JavaScript Object Notation (<acronym>JSON</acronym>) and returned to the client side. The property can then be referenced through the <code>data</code> variable in the event attribute definitions. Both primitive types and complex types such as arrays and collections can be serialized and used with <code>data</code>.
+						</para>
+						<example id="exam-Component_Reference-data-Data_reference_example">
+							<title>Data reference example</title>
+							
 <programlisting language="XML">
 &lt;a4j:commandButton value="Update" data="#{userBean.name}" oncomplete="showTheName(data.name)" /&gt;
 </programlisting>
-			</example>
-		</section>
+						</example>
+					</section>
 
-	</section>
+				</section>
 
-</chapter>
-	<chapter id="chap-Component_Reference-Rich_inputs" lang="en-US">
-	<title>Rich inputs</title>
-	<para>
-		This chapter details rich components for user input and interaction.
-	</para>
-	<section id="sect-Component_Reference-Rich_inputs-richCalendar">
-		<title>&lt;rich:Calendar&gt;</title>
-		<para>
-			The <classname>&lt;rich:calendar&gt;</classname> component allows the user to enter a date and time through an in-line or pop-up calendar. The pop-up calendar can navigate through months and years, and its look and feel can be highly customized.
-		</para>
-		<para>
-			The <classname>&lt;rich:calendar&gt;</classname> component supports two different ways of loading data through defining the <code>mode</code> attribute. When not specified, the component uses <literal>client</literal> mode, which loads an initial portion of data within a set date range. The range can be defined by using the <code>preloadDateRangeBegin</code> and <code>preloadDateRangeEnd</code> attributes. Additional data requests are not sent. Alternatively, with <code>mode="ajax"</code> the <classname>&lt;rich:calendar&gt;</classname> requests portions of data for rendering from a special data model. The data model can be defined through the <code>dataModel</code> attribute, which points to an object that implements the <classname>CalendarDataModel</classname> interface. If the <code>dataModel</code> attribute is not defined or has a value of <literal>null</literal>, the <literal>ajax</literal> mode functions the same as the <literal>client</literal> mode.
-		</para>
-		<para>
-			The <classname>&lt;rich:calendar&gt;</classname> component is presented as a pop-up by default, appearing as a text field with a button to expand the full pop-up calendar. Specifying <code>popup="false</code> will render the calendar in-line on the page instead, which displays the full calendar without the text field or display button. The appearance of the display button can be altered from the standard calendar icon by defining the <code>buttonIcon</code> and <code>buttonIconDisabled</code> attributes to replace the icon with a specified file, or by defining the <code>buttonLabel</code> attribute to display text on the button without an icon. If <code>buttonLabel</code> is specified then both <code>buttonIcon</code> and <code>buttonIconDisabled</code> attributes are ignored. The text field box can also be hidden by setting <code>showInput="false"</code>.
-		</para>
-		<para>
-			The position at which the pop-up calendar displays relative to the text field and button can be configured using the <code>jointPoint</code> and <code>direction</code> attributes. The <code>jointPoint</code> attribute refers to the corner of the text field and button with which the calendar will be aligned and the <code>direction</code> specifies which direction the pop-up calendar will span relative to the joint point. The default settings are <code>jointPoint="bottom-left"</code> and <code>direction="bottom-right"</code>, causing the pop-up calendar to align with the bottom-left corner of the text field and span to the bottom-right, underneath the text field and button. The diagram shows the joint points and directions that can be used. Alternatively, both <code>jointPoint</code> and <code>direction</code> can be set to <literal>auto</literal> to allow smart pop-up positioning.
-		</para>
-		<para>
-			The calendar features a <guibutton>Today</guibutton> button for locating today's date on the calendar. This can be set to three different values using the <code>todayControlMode</code> attribute:
-		</para>
-		<itemizedlist>
-			<listitem>
+			</chapter>
+			<chapter id="chap-Component_Reference-Rich_inputs" lang="en-US">
+				<title>Rich inputs</title>
 				<para>
-					<literal>hidden</literal>, which does not display the button;
+					This chapter details rich components for user input and interaction.
 				</para>
-			</listitem>
-			<listitem>
-				<para>
-					<literal>select</literal>, the default setting, which scrolls the calendar to the current month and selects today's date; and
-				</para>
-			</listitem>
-			<listitem>
-				<para>
-					<literal>scroll</literal>, which scrolls the calendar to the current month but does not select today's date.
-				</para>
-			</listitem>
-		</itemizedlist>
-		<para>
-			The <classname>&lt;rich:calendar&gt;</classname> component can additionally allow a time of day to be specified with the date. After selecting a date the option to set a time becomes available. The default time can be set with the <code>defaultTime</code> attribute. If the time is altered and a new date is selected, it will not reset unless <code>resetTimeOnDateSelect="true"</code> is specified.
-		</para>
-		<para>
-			There are several event handlers that are unique to the <classname>&lt;rich:calendar&gt;</classname> component.
-		</para>
-		<itemizedlist>
-			<listitem>
-				<para>
-					<code>ondateselect</code> is triggered when the date is selected by the user, before the update request is sent.
-				</para>
-			</listitem>
-			<listitem>
-				<para>
-					<code>ondateselected</code> is triggered after the date is selected by the user.
-				</para>
-			</listitem>
-			<listitem>
-				<para>
-					<code>oncurrentdateselect</code> is triggered when any of the year- or month-changing buttons are pressed, before the update request is sent.
-				</para>
-			</listitem>
-			<listitem>
-				<para>
-					<code>oncurrentdateselected</code> is triggered after any of the year- or month-changing buttons are pressed.
-				</para>
-			</listitem>
-			<listitem>
-				<para>
-					<code>ontimeselect</code> is triggered when the time is set by the user, before the update request is sent.
-				</para>
-			</listitem>
-			<listitem>
-				<para>
-					<code>ontimeselected</code> is triggered after the time has been set by the user.
-				</para>
-			</listitem>
-		</itemizedlist>
-		<para>
-			The entire calendar can be set as read-only with <code>readonly="true"</code>. This allows months and years to be browsed through with the arrow controls, but dates and times cannot be selected.
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Rich_inputs-richcolorPicker">
-		<title>&lt;rich:colorPicker&gt;</title>
-		<para>
-			The <classname>&lt;rich:colorPicker&gt;</classname> component allows the selection of a color, either by picking the color from the spectrum, defining it through decimal or hexadecimal <acronym>RGB</acronym> (red-green-blue) values, or defining it through <acronym>HSB</acronym> (hue-saturation-brightness) values. The <classname>&lt;rich:colorPicker&gt;</classname> component can appear either in-line with a pop-up or flat, and the look and feel can be highly customized.
-		</para>
-		<para>
-			The <code>value</code> attribute stores the currently selected color. The <code>colorMode</code> attribute defines whether the <code>value</code> is saved as <literal>hex</literal> (hexadecimal) or <literal>rgb</literal> (red-green-blue).
-		</para>
-		<para>
-			The <classname>&lt;rich:colorPicker&gt;</classname> appears in-line by default, where the color picker spectrum is only shown once the component is clicked on. The component can appear "flat", where the whole color picker is shown, by setting <code>flat="true"</code>.
-		</para>
-		<para>
-			The <classname>&lt;rich:colorPicker&gt;</classname> component has the unique event handler <code>onbeforeshow</code>, which is triggered immediately before the color picker is opened. The <code>showEvent</code> attribute can be used to bind the opening of the color picker to a specific event; it is bound to the <code>onclick</code> event by default.
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Rich_inputs-richcomboBox">
-		<title>&lt;rich:comboBox&gt;</title>
-		<para>
-			The <classname>&lt;rich:comboBox&gt;</classname> component is a typical combo-box with built-in Ajax capabilities. It supports client-side suggestions, browser-like selection, Seam entity converter support, and customization of the look and feel.
-		</para>
-		<para>
-			The <code>value</code> attribute stores the selected value for the combo-box. Suggestions shown in the drop-down list for the combo-box can be specified in one of two ways:
-		</para>
-		<itemizedlist>
-			<listitem>
-				<para>
-					Using the <code>suggestionValues</code> attribute, and defining a collection of suggestions:
-				</para>
-				<example id="exam-Component_Reference-richcomboBox-Defining_suggestion_values">
-					<title>Defining suggestion values</title>
-					
+				<section id="sect-Component_Reference-Rich_inputs-richCalendar">
+					<title>&lt;rich:Calendar&gt;</title>
+					<para>
+						The <classname>&lt;rich:calendar&gt;</classname> component allows the user to enter a date and time through an in-line or pop-up calendar. The pop-up calendar can navigate through months and years, and its look and feel can be highly customized.
+					</para>
+					<para>
+						The <classname>&lt;rich:calendar&gt;</classname> component supports two different ways of loading data through defining the <code>mode</code> attribute. When not specified, the component uses <literal>client</literal> mode, which loads an initial portion of data within a set date range. The range can be defined by using the <code>preloadDateRangeBegin</code> and <code>preloadDateRangeEnd</code> attributes. Additional data requests are not sent. Alternatively, with <code>mode="ajax"</code> the <classname>&lt;rich:calendar&gt;</classname> requests portions of data for rendering from a special data model. The data model can be defined through the <code>dataModel</code> attribute, which points to an object that implements the <classname>CalendarDataModel</classname> interface. If the <code>dataModel</code> attribute is not defined or has a value of <literal>null</literal>, the <literal>ajax</literal> mode functions the same as the <literal>client</literal> mode.
+					</para>
+					<para>
+						The <classname>&lt;rich:calendar&gt;</classname> component is presented as a pop-up by default, appearing as a text field with a button to expand the full pop-up calendar. Specifying <code>popup="false</code> will render the calendar in-line on the page instead, which displays the full calendar without the text field or display button. The appearance of the display button can be altered from the standard calendar icon by defining the <code>buttonIcon</code> and <code>buttonIconDisabled</code> attributes to replace the icon with a specified file, or by defining the <code>buttonLabel</code> attribute to display text on the button without an icon. If <code>buttonLabel</code> is specified then both <code>buttonIcon</code> and <code>buttonIconDisabled</code> attributes are ignored. The text field box can also be hidden by setting <code>showInput="false"</code>.
+					</para>
+					<para>
+						The position at which the pop-up calendar displays relative to the text field and button can be configured using the <code>jointPoint</code> and <code>direction</code> attributes. The <code>jointPoint</code> attribute refers to the corner of the text field and button with which the calendar will be aligned and the <code>direction</code> specifies which direction the pop-up calendar will span relative to the joint point. The default settings are <code>jointPoint="bottom-left"</code> and <code>direction="bottom-right"</code>, causing the pop-up calendar to align with the bottom-left corner of the text field and span to the bottom-right, underneath the text field and button. The diagram shows the joint points and directions that can be used. Alternatively, both <code>jointPoint</code> and <code>direction</code> can be set to <literal>auto</literal> to allow smart pop-up positioning.
+					</para>
+					<para>
+						The calendar features a <guibutton>Today</guibutton> button for locating today&#39;s date on the calendar. This can be set to three different values using the <code>todayControlMode</code> attribute:
+					</para>
+					<itemizedlist>
+						<listitem>
+							<para>
+								<literal>hidden</literal>, which does not display the button;
+							</para>
+						</listitem>
+						<listitem>
+							<para>
+								<literal>select</literal>, the default setting, which scrolls the calendar to the current month and selects today&#39;s date; and
+							</para>
+						</listitem>
+						<listitem>
+							<para>
+								<literal>scroll</literal>, which scrolls the calendar to the current month but does not select today&#39;s date.
+							</para>
+						</listitem>
+					</itemizedlist>
+					<para>
+						The <classname>&lt;rich:calendar&gt;</classname> component can additionally allow a time of day to be specified with the date. After selecting a date the option to set a time becomes available. The default time can be set with the <code>defaultTime</code> attribute. If the time is altered and a new date is selected, it will not reset unless <code>resetTimeOnDateSelect="true"</code> is specified.
+					</para>
+					<para>
+						There are several event handlers that are unique to the <classname>&lt;rich:calendar&gt;</classname> component.
+					</para>
+					<itemizedlist>
+						<listitem>
+							<para>
+								<code>ondateselect</code> is triggered when the date is selected by the user, before the update request is sent.
+							</para>
+						</listitem>
+						<listitem>
+							<para>
+								<code>ondateselected</code> is triggered after the date is selected by the user.
+							</para>
+						</listitem>
+						<listitem>
+							<para>
+								<code>oncurrentdateselect</code> is triggered when any of the year- or month-changing buttons are pressed, before the update request is sent.
+							</para>
+						</listitem>
+						<listitem>
+							<para>
+								<code>oncurrentdateselected</code> is triggered after any of the year- or month-changing buttons are pressed.
+							</para>
+						</listitem>
+						<listitem>
+							<para>
+								<code>ontimeselect</code> is triggered when the time is set by the user, before the update request is sent.
+							</para>
+						</listitem>
+						<listitem>
+							<para>
+								<code>ontimeselected</code> is triggered after the time has been set by the user.
+							</para>
+						</listitem>
+					</itemizedlist>
+					<para>
+						The entire calendar can be set as read-only with <code>readonly="true"</code>. This allows months and years to be browsed through with the arrow controls, but dates and times cannot be selected.
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Rich_inputs-richcolorPicker">
+					<title>&lt;rich:colorPicker&gt;</title>
+					<para>
+						The <classname>&lt;rich:colorPicker&gt;</classname> component allows the selection of a color, either by picking the color from the spectrum, defining it through decimal or hexadecimal <acronym>RGB</acronym> (red-green-blue) values, or defining it through <acronym>HSB</acronym> (hue-saturation-brightness) values. The <classname>&lt;rich:colorPicker&gt;</classname> component can appear either in-line with a pop-up or flat, and the look and feel can be highly customized.
+					</para>
+					<para>
+						The <code>value</code> attribute stores the currently selected color. The <code>colorMode</code> attribute defines whether the <code>value</code> is saved as <literal>hex</literal> (hexadecimal) or <literal>rgb</literal> (red-green-blue).
+					</para>
+					<para>
+						The <classname>&lt;rich:colorPicker&gt;</classname> appears in-line by default, where the color picker spectrum is only shown once the component is clicked on. The component can appear "flat", where the whole color picker is shown, by setting <code>flat="true"</code>.
+					</para>
+					<para>
+						The <classname>&lt;rich:colorPicker&gt;</classname> component has the unique event handler <code>onbeforeshow</code>, which is triggered immediately before the color picker is opened. The <code>showEvent</code> attribute can be used to bind the opening of the color picker to a specific event; it is bound to the <code>onclick</code> event by default.
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Rich_inputs-richcomboBox">
+					<title>&lt;rich:comboBox&gt;</title>
+					<para>
+						The <classname>&lt;rich:comboBox&gt;</classname> component is a typical combo-box with built-in Ajax capabilities. It supports client-side suggestions, browser-like selection, Seam entity converter support, and customization of the look and feel.
+					</para>
+					<para>
+						The <code>value</code> attribute stores the selected value for the combo-box. Suggestions shown in the drop-down list for the combo-box can be specified in one of two ways:
+					</para>
+					<itemizedlist>
+						<listitem>
+							<para>
+								Using the <code>suggestionValues</code> attribute, and defining a collection of suggestions:
+							</para>
+							<example id="exam-Component_Reference-richcomboBox-Defining_suggestion_values">
+								<title>Defining suggestion values</title>
+								
 <programlisting language="XML">
 &lt;rich:comboBox value="#{bean.state}" suggestionValues="#{bean.suggestions}"
 </programlisting>
-				</example>
-			</listitem>
-			<listitem>
-				<para>
-					Using the JSF components <classname>&lt;f:selectItem /&gt;</classname> and <classname>&lt;f:selectItems /&gt;</classname> to define a list of items:
-				</para>
-				<example id="exam-Component_Reference-richcomboBox-Defining_list_items_for_richinplaceSelect">
-					<title>Defining list items for &lt;rich:inplaceSelect&gt;</title>
-					
+							</example>
+						</listitem>
+						<listitem>
+							<para>
+								Using the JSF components <classname>&lt;f:selectItem /&gt;</classname> and <classname>&lt;f:selectItems /&gt;</classname> to define a list of items:
+							</para>
+							<example id="exam-Component_Reference-richcomboBox-Defining_list_items_for_richinplaceSelect">
+								<title>Defining list items for &lt;rich:inplaceSelect&gt;</title>
+								
 <programlisting language="XML">
 &lt;rich:comboBox value="#{bean.item}" valueChangeListener="#{bean.selectionChanged}" &gt;
     &lt;f:selectItems value="#{bean.selectItems}" /&gt;
@@ -441,176 +437,176 @@
     &lt;f.selectItem itemValue="Item 4" /&gt;
 &lt;/rich:comboBox&gt;
 </programlisting>
-				</example>
-			</listitem>
-		</itemizedlist>
-		<para>
-			Users can type into the combo-box's text field to enter a value, which also searches through the suggestion items in the drop-down box. By default, the first suggestion item is selected as the user types. This behavior can be deactivated by setting <code>selectFirstOnUpdate="false"</code>. Setting <code>directInputSuggestions="true"</code> causes the combo-box to fill the text field box with a matching suggestion as the user types. Alternatively, the text field can be disabled by setting <code>enableManualInput="false"</code>, which forces the users to pick from items in the drop-down box.
-		</para>
-		<para>
-			The <classname>&lt;rich:comboBox&gt;</classname> component has two unique event handlers:
-		</para>
-		<itemizedlist>
-			<listitem>
-				<para>
-					<code>onlistcall</code> triggers before the drop-down list is shown, allowing the operation to be canceled.
-				</para>
-			</listitem>
-			<listitem>
-				<para>
-					<code>onselect</code> triggers when a suggestion is selected from the drop-down list, before the update request is sent.
-				</para>
-			</listitem>
-		</itemizedlist>
-	</section>
-	
-	<section id="sect-Component_Reference-Rich_inputs-richeditor">
-		<title>&lt;rich:editor&gt;</title>
-		<para>
-			The <classname>&lt;rich:editor&gt;</classname> component provides a fully-featured word processor. It features manageable global configurations, and support for Seam text, custom plug-ins, and a customized look and feel. The editor is fully based on the TinyMCE JavaScript editor control, supporting all TinyMCE's parameters, and is adapted for the <acronym>JSF</acronym> environment with some additional capabilities.
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Rich_inputs-richfileUpload">
-		<title>&lt;rich:fileUpload&gt;</title>
-		<para>
-			The <classname>&lt;rich:fileUpload&gt;</classname> component allows the user to upload files to a server. It features multiple uploads, automatic uploads, progress bars, restrictions on file types and sizes to be uploaded, and an embedded flash module.
-		</para>
-		<para>
-			Files are uploaded to either the temporary folder (different for each operating system) or to <acronym>RAM</acronym> (random-access memory), depending on the value of the <code>createTempFile</code> parameter of the Ajax4jsf Filter section in the <filename>web.xml</filename> for the project.
-		</para>
-		<para>
-			Basic usage requires the <code>uploadData</code> attribute, pointing to the collection of uploaded files.
-		</para>
-		<example id="exam-Component_Reference-richfileUpload-Basic_usage_of_richfileUpload">
-			<title>Basic usage of &lt;rich:fileUpload&gt;</title>
-			
+							</example>
+						</listitem>
+					</itemizedlist>
+					<para>
+						Users can type into the combo-box&#39;s text field to enter a value, which also searches through the suggestion items in the drop-down box. By default, the first suggestion item is selected as the user types. This behavior can be deactivated by setting <code>selectFirstOnUpdate="false"</code>. Setting <code>directInputSuggestions="true"</code> causes the combo-box to fill the text field box with a matching suggestion as the user types. Alternatively, the text field can be disabled by setting <code>enableManualInput="false"</code>, which forces the users to pick from items in the drop-down box.
+					</para>
+					<para>
+						The <classname>&lt;rich:comboBox&gt;</classname> component has two unique event handlers:
+					</para>
+					<itemizedlist>
+						<listitem>
+							<para>
+								<code>onlistcall</code> triggers before the drop-down list is shown, allowing the operation to be canceled.
+							</para>
+						</listitem>
+						<listitem>
+							<para>
+								<code>onselect</code> triggers when a suggestion is selected from the drop-down list, before the update request is sent.
+							</para>
+						</listitem>
+					</itemizedlist>
+				</section>
+				
+				<section id="sect-Component_Reference-Rich_inputs-richeditor">
+					<title>&lt;rich:editor&gt;</title>
+					<para>
+						The <classname>&lt;rich:editor&gt;</classname> component provides a fully-featured word processor. It features manageable global configurations, and support for Seam text, custom plug-ins, and a customized look and feel. The editor is fully based on the TinyMCE JavaScript editor control, supporting all TinyMCE&#39;s parameters, and is adapted for the <acronym>JSF</acronym> environment with some additional capabilities.
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Rich_inputs-richfileUpload">
+					<title>&lt;rich:fileUpload&gt;</title>
+					<para>
+						The <classname>&lt;rich:fileUpload&gt;</classname> component allows the user to upload files to a server. It features multiple uploads, automatic uploads, progress bars, restrictions on file types and sizes to be uploaded, and an embedded flash module.
+					</para>
+					<para>
+						Files are uploaded to either the temporary folder (different for each operating system) or to <acronym>RAM</acronym> (random-access memory), depending on the value of the <code>createTempFile</code> parameter of the Ajax4jsf Filter section in the <filename>web.xml</filename> for the project.
+					</para>
+					<para>
+						Basic usage requires the <code>uploadData</code> attribute, pointing to the collection of uploaded files.
+					</para>
+					<example id="exam-Component_Reference-richfileUpload-Basic_usage_of_richfileUpload">
+						<title>Basic usage of &lt;rich:fileUpload&gt;</title>
+						
 <programlisting language="XML">
 &lt;rich:fileUpload uploadData="#{bean.data}" /&gt;
 </programlisting>
-		</example>
-		<para>
-			The <code>fileUploadListener</code> attribute can be used to call a function on the server side after each file is uploaded.
-		</para>
-		<para>
-			The <code>immediateUpload</code> attribute can be set to <literal>true</literal> to upload files as soon as they are added to the list, rather than waiting for the user to press the <guibutton>Upload</guibutton>. The <code>autoclear</code> attribute can be set to <code>true</code> to automatically remove files from the list once they have been successfully uploaded.
-		</para>
-		<para>
-			The <classname>&lt;rich:fileUpload&gt;</classname> component can place restrictions on the files that can be uploaded. The <code>acceptedTypes</code> attribute restricts the file types to just those listed. The <code>maxFilesQuantity</code> attribute restricts the maximum number of files that can be uploaded. Size restrictions can be placed on individual files by setting the <code>maxRequestSize</code> parameter of the Ajax4jsf Filter section in the <filename>web.xml</filename> file for the project.
-		</para>
-		<para>
-			There are a number of event handlers specifc to the <classname>&lt;rich:fileUpload&gt;</classname> component:
-		</para>
-		<itemizedlist>
-			<listitem>
-				<para>
-					<code>onadd</code> is triggered before a file is added to the list.
-				</para>
-			</listitem>
-			<listitem>
-				<para>
-					<code>onupload</code> is triggered before a file is uploaded.
-				</para>
-			</listitem>
-			<listitem>
-				<para>
-					<code>onuploadcomplete</code> is triggered after all files in the list have finished uploading.
-				</para>
-			</listitem>
-			<listitem>
-				<para>
-					<code>onuploadcanceled</code> is triggered after an upload has been canceled.
-				</para>
-			</listitem>
-			<listitem>
-				<para>
-					<code>onerror</code> is triggered when an error occurs during the upload process.
-				</para>
-			</listitem>
-		</itemizedlist>
-		<para>
-			The <classname>&lt;rich:fileUpload&gt;</classname> component has an embedded Flash module that adds extra functionality. To enable the Flash module, set <code>allowFlash="true"</code>. The Flash module adds additional features to file selection, such as the ability to choose multiple files at once and the filtering of files by their type. Additionally, the Flash module provides a smoother animation of the progress bar during the upload process, as the progress polling is performed by Flash rather than Ajax.
-		</para>
-		<para>
-			The text labels used in the component can be completely customized. Labels for the various controls of the component can be set using <code>addControlLabel</code>, <code>clearAllControlLabel</code>, <code>clearControlLabel</code>, <code>stopEntryControlLabel</code>, and <code>uploadControlLabel</code>. The status label for the upload can be set using the <code>label</code> attribute and the following wildcards:
-		</para>
-		<itemizedlist>
-			<listitem>
-				<para>
-					<code>{B} {KB} {MB}</code>: the full size of the file to be uploaded, measured in bytes, kilobytes and megabytes respectively.
-				</para>
-			</listitem>
-			<listitem>
-				<para>
-					<code>{_B} {_KB} {_MB}</code>: the amount of data uploaded so far, measured in bytes, kilobytes and megabytes respectively.
-				</para>
-			</listitem>
-			<listitem>
-				<para>
-					<code>{ss} {mm} {hh}</code>: the elapsed time in seconds, minutes and hours respectively.
-				</para>
-			</listitem>
-		</itemizedlist>
-	</section>
-	
-	<section id="sect-Component_Reference-Rich_inputs-richinplaceInput">
-		<title>&lt;rich:inplaceInput&gt;</title>
-		<para>
-			The <classname>&lt;rich:inplaceInput&gt;</classname> component allows information to be entered in-line in blocks of text, improving readability of the text. Changes can be rendered either in-line or for the whole block, and inputs can be focused with keyboard navigation. The component has three functional states: the "view" state, where the component displays its initial setting, such as "click to edit"; the "edit" state, where the user can input text; and the "changed" state, where the new value for the component has been confirmed but can be edited again if required.
-		</para>
-		<para>
-			When in the initial "view" state, the starting label can be set using the <code>defaultLabel</code> attribute, such as <code>defaultLabel="click to edit"</code>.
-		</para>
-		<para>
-			Basic usage requires the <code>value</code> attribute to point to the expression for the current value of the component.
-		</para>
-		<para>
-			By default, the event to switch the component to the "edit" state is a single mouse click. This can be changed using the <code>editEvent</code> attribute to specify a different event. When switching to "edit" mode, the existing text can be automatically highlighted to make editing easier by setting <code>selectOnEdit="true"</code>.
-		</para>
-		<para>
-			The user can confirm and save their input by pressing the <keycap>Enter</keycap> key or cancel by pressing the <keycap>Esc</keycap> key. Alternatively, buttons for confirming or canceling can be added to the component by setting <code>showControls="true"</code>. These buttons can be positioned using the <code>controlsHorizontalPosition</code> attribute with settings of <literal>left</literal>, <literal>right</literal>, or <literal>center</literal>, and the <code>controlsVerticalPosition</code> attribute with settings <literal>bottom</literal>, <literal>center</literal>, or <literal>top</literal>. The confirmation control icons can be altered using the <code>saveControlIcon</code> and <code>cancelControlIcon</code>. Further customization is possible through the use of facets.
-		</para>
-		<para>
-			There are several event handlers that are specific to the <classname>&lt;rich:inplaceInput&gt;</classname> component:
-		</para>
-		<itemizedlist>
-			<listitem>
-				<para>
-					<code>oneditactivation</code> is triggered before the "edit" state is activated.
-				</para>
-			</listitem>
-			<listitem>
-				<para>
-					<code>oneditactivated</code> is triggered after the "edit" state is activated.
-				</para>
-			</listitem>
-			<listitem>
-				<para>
-					<code>onviewactivation</code> is triggered before the "view" or "changed" state is activated.
-				</para>
-			</listitem>
-			<listitem>
-				<para>
-					<code>onviewactivated</code> is triggered after the "view" or "changed" state is activated.
-				</para>
-			</listitem>
-		</itemizedlist>
-	</section>
-	
-	<section id="sect-Component_Reference-Rich_inputs-richinplaceSelect">
-		<title>&lt;rich:inplaceSelect&gt;</title>
-		<para>
-			The <classname>&lt;rich:inplaceSelect&gt;</classname> component is similar to the <classname>&lt;rich:inplaceInput&gt;</classname> component, but the uses a drop-down selection box to enter text instead of a regular text field. Changes can be rendered either in-line or for the whole block, and inputs can be focused with keyboard navigation. The component has three functional states: the "view" state, where the component displays its initial setting, such as "click to edit"; the "edit" state, where the user can select a value from a drop-down list; and the "changed" state, where the new value for the component has been confirmed but can be edited again if required.
-		</para>
-		<para>
-			When in the initial "view" state, the starting label can be set using the <code>defaultLabel</code> attribute, such as <code>defaultLabel="click to edit"</code>.
-		</para>
-		<para>
-			Basic usage requires the <code>value</code> attribute to point to the expression for the current value of the component and a list of items. The list of items can be defined using the JSF components <classname>&lt;f:selectItem/&gt;</classname> and <classname>&lt;f:selectItems/&gt;</classname>.
-		</para>
-		<example id="exam-Component_Reference-richinplaceSelect-Defining_list_items_for_richinplaceSelect">
-			<title>Defining list items for &lt;rich:inplaceSelect&gt;</title>
-			
+					</example>
+					<para>
+						The <code>fileUploadListener</code> attribute can be used to call a function on the server side after each file is uploaded.
+					</para>
+					<para>
+						The <code>immediateUpload</code> attribute can be set to <literal>true</literal> to upload files as soon as they are added to the list, rather than waiting for the user to press the <guibutton>Upload</guibutton>. The <code>autoclear</code> attribute can be set to <code>true</code> to automatically remove files from the list once they have been successfully uploaded.
+					</para>
+					<para>
+						The <classname>&lt;rich:fileUpload&gt;</classname> component can place restrictions on the files that can be uploaded. The <code>acceptedTypes</code> attribute restricts the file types to just those listed. The <code>maxFilesQuantity</code> attribute restricts the maximum number of files that can be uploaded. Size restrictions can be placed on individual files by setting the <code>maxRequestSize</code> parameter of the Ajax4jsf Filter section in the <filename>web.xml</filename> file for the project.
+					</para>
+					<para>
+						There are a number of event handlers specifc to the <classname>&lt;rich:fileUpload&gt;</classname> component:
+					</para>
+					<itemizedlist>
+						<listitem>
+							<para>
+								<code>onadd</code> is triggered before a file is added to the list.
+							</para>
+						</listitem>
+						<listitem>
+							<para>
+								<code>onupload</code> is triggered before a file is uploaded.
+							</para>
+						</listitem>
+						<listitem>
+							<para>
+								<code>onuploadcomplete</code> is triggered after all files in the list have finished uploading.
+							</para>
+						</listitem>
+						<listitem>
+							<para>
+								<code>onuploadcanceled</code> is triggered after an upload has been canceled.
+							</para>
+						</listitem>
+						<listitem>
+							<para>
+								<code>onerror</code> is triggered when an error occurs during the upload process.
+							</para>
+						</listitem>
+					</itemizedlist>
+					<para>
+						The <classname>&lt;rich:fileUpload&gt;</classname> component has an embedded Flash module that adds extra functionality. To enable the Flash module, set <code>allowFlash="true"</code>. The Flash module adds additional features to file selection, such as the ability to choose multiple files at once and the filtering of files by their type. Additionally, the Flash module provides a smoother animation of the progress bar during the upload process, as the progress polling is performed by Flash rather than Ajax.
+					</para>
+					<para>
+						The text labels used in the component can be completely customized. Labels for the various controls of the component can be set using <code>addControlLabel</code>, <code>clearAllControlLabel</code>, <code>clearControlLabel</code>, <code>stopEntryControlLabel</code>, and <code>uploadControlLabel</code>. The status label for the upload can be set using the <code>label</code> attribute and the following wildcards:
+					</para>
+					<itemizedlist>
+						<listitem>
+							<para>
+								<code>{B} {KB} {MB}</code>: the full size of the file to be uploaded, measured in bytes, kilobytes and megabytes respectively.
+							</para>
+						</listitem>
+						<listitem>
+							<para>
+								<code>{_B} {_KB} {_MB}</code>: the amount of data uploaded so far, measured in bytes, kilobytes and megabytes respectively.
+							</para>
+						</listitem>
+						<listitem>
+							<para>
+								<code>{ss} {mm} {hh}</code>: the elapsed time in seconds, minutes and hours respectively.
+							</para>
+						</listitem>
+					</itemizedlist>
+				</section>
+				
+				<section id="sect-Component_Reference-Rich_inputs-richinplaceInput">
+					<title>&lt;rich:inplaceInput&gt;</title>
+					<para>
+						The <classname>&lt;rich:inplaceInput&gt;</classname> component allows information to be entered in-line in blocks of text, improving readability of the text. Changes can be rendered either in-line or for the whole block, and inputs can be focused with keyboard navigation. The component has three functional states: the "view" state, where the component displays its initial setting, such as "click to edit"; the "edit" state, where the user can input text; and the "changed" state, where the new value for the component has been confirmed but can be edited again if required.
+					</para>
+					<para>
+						When in the initial "view" state, the starting label can be set using the <code>defaultLabel</code> attribute, such as <code>defaultLabel="click to edit"</code>.
+					</para>
+					<para>
+						Basic usage requires the <code>value</code> attribute to point to the expression for the current value of the component.
+					</para>
+					<para>
+						By default, the event to switch the component to the "edit" state is a single mouse click. This can be changed using the <code>editEvent</code> attribute to specify a different event. When switching to "edit" mode, the existing text can be automatically highlighted to make editing easier by setting <code>selectOnEdit="true"</code>.
+					</para>
+					<para>
+						The user can confirm and save their input by pressing the <keycap>Enter</keycap> key or cancel by pressing the <keycap>Esc</keycap> key. Alternatively, buttons for confirming or canceling can be added to the component by setting <code>showControls="true"</code>. These buttons can be positioned using the <code>controlsHorizontalPosition</code> attribute with settings of <literal>left</literal>, <literal>right</literal>, or <literal>center</literal>, and the <code>controlsVerticalPosition</code> attribute with settings <literal>bottom</literal>, <literal>center</literal>, or <literal>top</literal>. The confirmation control icons can be altered using the <code>saveControlIcon</code> and <code>cancelControlIcon</code>. Further customization is possible through the use of facets.
+					</para>
+					<para>
+						There are several event handlers that are specific to the <classname>&lt;rich:inplaceInput&gt;</classname> component:
+					</para>
+					<itemizedlist>
+						<listitem>
+							<para>
+								<code>oneditactivation</code> is triggered before the "edit" state is activated.
+							</para>
+						</listitem>
+						<listitem>
+							<para>
+								<code>oneditactivated</code> is triggered after the "edit" state is activated.
+							</para>
+						</listitem>
+						<listitem>
+							<para>
+								<code>onviewactivation</code> is triggered before the "view" or "changed" state is activated.
+							</para>
+						</listitem>
+						<listitem>
+							<para>
+								<code>onviewactivated</code> is triggered after the "view" or "changed" state is activated.
+							</para>
+						</listitem>
+					</itemizedlist>
+				</section>
+				
+				<section id="sect-Component_Reference-Rich_inputs-richinplaceSelect">
+					<title>&lt;rich:inplaceSelect&gt;</title>
+					<para>
+						The <classname>&lt;rich:inplaceSelect&gt;</classname> component is similar to the <classname>&lt;rich:inplaceInput&gt;</classname> component, but the uses a drop-down selection box to enter text instead of a regular text field. Changes can be rendered either in-line or for the whole block, and inputs can be focused with keyboard navigation. The component has three functional states: the "view" state, where the component displays its initial setting, such as "click to edit"; the "edit" state, where the user can select a value from a drop-down list; and the "changed" state, where the new value for the component has been confirmed but can be edited again if required.
+					</para>
+					<para>
+						When in the initial "view" state, the starting label can be set using the <code>defaultLabel</code> attribute, such as <code>defaultLabel="click to edit"</code>.
+					</para>
+					<para>
+						Basic usage requires the <code>value</code> attribute to point to the expression for the current value of the component and a list of items. The list of items can be defined using the JSF components <classname>&lt;f:selectItem/&gt;</classname> and <classname>&lt;f:selectItems/&gt;</classname>.
+					</para>
+					<example id="exam-Component_Reference-richinplaceSelect-Defining_list_items_for_richinplaceSelect">
+						<title>Defining list items for &lt;rich:inplaceSelect&gt;</title>
+						
 <programlisting language="XML">
 &lt;rich:inplaceSelect value="#{bean.inputValue}" defaultLabel="click to edit" &gt;
     &lt;f:selectItems value="#{bean.selectItems}" /&gt;
@@ -620,918 +616,919 @@
     &lt;f.selectItem itemValue="4" itemLabel="Item 4" /&gt;
 &lt;/rich:comboBox&gt;
 </programlisting>
-		</example>
-		<para>
-			By default, the event to switch the component to the "edit" state is a single mouse click. This can be changed using the <code>editEvent</code> attribute to specify a different event. When switching to "edit" mode, the drop-down list of possible values will automatically be displayed; this can be deactivated by setting <code>openOnEdit="false"</code>.
-		</para>
-		<para>
-			Once the user selects an option from the drop-down list, the item becomes the new value for the component and the state is switched to the "changed" state. Alternatively, buttons for confirming or canceling can be added to the component by setting <code>showControls="true"</code>. These buttons can be positioned using the <code>controlsHorizontalPosition</code> attribute with settings of <literal>left</literal>, <literal>right</literal>, or <literal>center</literal>, and the <code>controlsVerticalPosition</code> attribute with settings <literal>bottom</literal>, <literal>center</literal>, or <literal>top</literal>. The confirmation control icons can be altered using the <code>saveControlIcon</code> and <code>cancelControlIcon</code>. Further customization is possible through the use of facets.
-		</para>
-		<para>
-			There are several event handlers that are specific to the <classname>&lt;rich:inplaceSelect&gt;</classname> component:
-		</para>
-		<itemizedlist>
-			<listitem>
+					</example>
+					<para>
+						By default, the event to switch the component to the "edit" state is a single mouse click. This can be changed using the <code>editEvent</code> attribute to specify a different event. When switching to "edit" mode, the drop-down list of possible values will automatically be displayed; this can be deactivated by setting <code>openOnEdit="false"</code>.
+					</para>
+					<para>
+						Once the user selects an option from the drop-down list, the item becomes the new value for the component and the state is switched to the "changed" state. Alternatively, buttons for confirming or canceling can be added to the component by setting <code>showControls="true"</code>. These buttons can be positioned using the <code>controlsHorizontalPosition</code> attribute with settings of <literal>left</literal>, <literal>right</literal>, or <literal>center</literal>, and the <code>controlsVerticalPosition</code> attribute with settings <literal>bottom</literal>, <literal>center</literal>, or <literal>top</literal>. The confirmation control icons can be altered using the <code>saveControlIcon</code> and <code>cancelControlIcon</code>. Further customization is possible through the use of facets.
+					</para>
+					<para>
+						There are several event handlers that are specific to the <classname>&lt;rich:inplaceSelect&gt;</classname> component:
+					</para>
+					<itemizedlist>
+						<listitem>
+							<para>
+								<code>oneditactivation</code> is triggered before the "edit" state is activated.
+							</para>
+						</listitem>
+						<listitem>
+							<para>
+								<code>oneditactivated</code> is triggered after the "edit" state is activated.
+							</para>
+						</listitem>
+						<listitem>
+							<para>
+								<code>onviewactivation</code> is triggered before the "view" or "changed" state is activated.
+							</para>
+						</listitem>
+						<listitem>
+							<para>
+								<code>onviewactivated</code> is triggered after the "view" or "changed" state is activated.
+							</para>
+						</listitem>
+					</itemizedlist>
+				</section>
+				
+				<section id="sect-Component_Reference-Rich_inputs-richinputNumberSlider">
+					<title>&lt;rich:inputNumberSlider&gt;</title>
+					<para>
+						The <classname>&lt;rich:inputNumberSlider&gt;</classname> component provides a slider for changing numerical values. Optional features include a tool-tip to display the value while sliding, and a text field for typing the numerical value which can then be validated against the slider&#39;s range.
+					</para>
+					<para>
+						Basic use of the component with no attributes specified will render a slider with a minimum value of 0, a maximum of 100, and a gradient step of 1, together with a text field for typing the desired numerical value. The text field can be removed by setting <code>showInput="false"</code>, and the properties of the slider can be set with the attributes <code>minValue</code>, <code>maxValue</code>, and <code>step</code>. The slider is labeled with the minimum and maximum boundary values, and a tool-tip showing the current value is shown while sliding the slider; these items can be turned off by setting <code>showBoundaryValues="false"</code> and <code>showToolTip="false"</code> respectively.
+					</para>
+					<para>
+						Arrow controls can be added to either side of the slider to adjust the value incrementally by setting <code>showArrows="true"</code>. Clicking the arrows move the slider indicator in that direction by the gradient step, and clicking and holding the arrows moves the indicator continuously. The time delay for each step when updating continuously can be defined using the <code>delay</code> attribute.
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Rich_inputs-richinputNumberSpinner">
+					<title>&lt;rich:inputNumberSpinner&gt;</title>
+					<para>
+						The <classname>&lt;rich:inputNumberSpinner&gt;</classname> component is a single-line input field with buttons to increase and decrease a numerical value. The value can be changed using the corresponding directional keys on a keyboard, or by typing into the field.
+					</para>
+					<para>
+						Basic use of the component with no attributes specified will render a number spinner with a minimum value of 1, a maximum value of 100, and a gradient step of 1. These default properties can be re-defined with the attributes <code>minValue</code>, <code>maxValue</code>, and <code>step</code> respectively. The starting value of the spinner is the minimum value unless otherwise specified with the <code>value</code> attribute.
+					</para>
+					<para>
+						When changing the value using the buttons, raising the value above the maximum or cause the spinner to restart at the minimum value. Likewise, when lowering below the minimum value the spinner will reset to the maximum value. This behavior can be deactivated by setting <code>cycled="false"</code>, which will cause the buttons to stop responding when the reach the maximum or minimum value.
+					</para>
+					<para>
+						The ability to change the value by typing into the text field can be disabled by setting <code>enableManualInput="false"</code>.
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Rich_inputs-richsuggestionBox">
+					<title>&lt;rich:suggestionBox&gt;</title>
+					<para>
+						The <classname>&lt;rich:suggestionBox&gt;</classname> component adds a feature-rich drop-down list of suggestions to any text input component.
+					</para>
+					<para>
+						The <classname>&lt;rich:suggestionBox&gt;</classname> component needs the attributes defined for basic use: <code>for</code>, which identifies the component to attach the suggestion box to; <code>suggestionAction</code>, which defines the method for getting the collection of suggestion data; and <code>var</code>, which defines a collection name for access to the currently highlighted row. Typically the suggestions are presented as a list with one or more columns of suggestion data; the layout of these columns is defined inside the <classname>&lt;rich:suggestionBox&gt;</classname> tags using <classname>&lt;h:column&gt;</classname> and other <acronym>JSF</acronym> components.
+					</para>
+					<para>
+						For suggestion lists with multiple columns, the <code>fetchValue</code> attribute can be used to specify which column is used when selecting the value for the input component.
+					</para>
+					<para>
+						The <code>tokens</code> attribute can be used to define separator characters, which are used when multiple values need to be entered and a new suggestion made for each value. For example, <code>tokens=","</code> (a comma) will begin a new suggestion query each time a comma is typed. Multiple separators can be defined with spaces in between (<code>tokens=", . ; [ ]"</code>) or linking to a bean property that holds the collection of separator tokens.
+					</para>
+					<para>
+						The <code>minChars</code> attribute can be used to limit sending the Ajax request until a certain amount of characters has been entered. If the query returns no results, an appropriate message to display can be set with the <code>nothingLabel</code> attribute.
+					</para>
+					<para>
+						Instead of returning just one value from an object, the entire object can be returned to the client and handled appropriately. This is done by specifying <code>usingSuggestObjects="true"</code> and setting the <code>onobjectchange</code> attribute to a JavaScript method to handle the object, passing the <literal>suggestion</literal> object as a parameter.
+					</para>
+				</section>
+
+			</chapter>
+			<chapter id="chap-Component_Reference-Panels_and_containers" lang="en-US">
+				<title>Panels and containers</title>
 				<para>
-					<code>oneditactivation</code> is triggered before the "edit" state is activated.
+					This chapter details those components which act as panels and containers to hold groups of other components.
 				</para>
-			</listitem>
-			<listitem>
+				<section id="sect-Component_Reference-Panels_and_containers-a4jform">
+					<title>&lt;a4j:form&gt;</title>
+					<para>
+						The <classname>&lt;a4j:form&gt;</classname> builds on the functionality of the JavaServer Faces (<acronym>JSF</acronym>) component <classname>&lt;h:form&gt;</classname>, adding Ajax capabilities to the form.
+					</para>
+					<note>
+						<title>Note</title>
+						<para>
+							The <acronym>JSF</acronym> component <classname>&lt;h:form&gt;</classname>, on which the <classname>&lt;a4j:form&gt;</classname> component is based, had an issue whereby the <classname>&lt;h:commandLink&gt;</classname> component could not be re-rendered without re-rendering the entire form. <classname>&lt;a4j:form&gt;</classname> and <classname>&lt;a4j:commandLink&gt;</classname> fix this issue.
+						</para>
+					</note>
+					<para>
+						The <classname>&lt;a4j:form&gt;</classname> component can add indirect Ajax support to non-Ajax components on the form by setting <code>ajaxSubmit="true"</code>. It then uses the standard Ajax component attributes and updates components specified with the <code>render</code> attribute.
+					</para>
+					<important>
+						<title>Important</title>
+						<para>
+							<classname>&lt;a4j:form&gt;</classname> should not use <code>ajaxSubmit="true"</code> if it contains other Ajax-capable components.
+						</para>
+						<para>
+							Additionally, due to security reasons the file upload form element cannot be indirectly made Ajax-capable with <classname>&lt;a4j:form&gt;</classname>.
+						</para>
+					</important>
+				</section>
+				
+				<section id="sect-Component_Reference-Panels_and_containers-a4joutputPanel">
+					<title>&lt;a4j:outputPanel&gt;</title>
+					<para>
+						The <classname>&lt;a4j:outputPanel&gt;</classname> component is used to group together components in to update them as a whole, rather than having to specify the components individually.
+					</para>
+					<para>
+						The <code>layout</code> attribute can be used to determine how the component is rendered in <acronym>HTML</acronym>:
+					</para>
+					<itemizedlist>
+						<listitem>
+							<para>
+								<code>layout="inline"</code> is the default behavior, which will render the component as a pair of <code>&lt;span&gt;</code> tags containing the child components.
+							</para>
+						</listitem>
+						<listitem>
+							<para>
+								<code>layout="block"</code> will render the component as a pair of <code>&lt;div&gt;</code> tags containing the child components, which will use any defined <code>&lt;div&gt;</code> element styles.
+							</para>
+						</listitem>
+						<listitem>
+							<para>
+								<code>layout="none"</code> will render the component as a pair of <code>&lt;span&gt;</code> tags with an identifier equal to that of a child component. If the child component is rendered then the <code>&lt;span&gt;</code> are not included, leaving no markup representing the <classname>&lt;a4j:outputPanel&gt;</classname> in <acronym>HTML</acronym>.
+							</para>
+						</listitem>
+					</itemizedlist>
+					<para>
+						Setting <code>ajaxRendered="true"</code> will cause the <classname>&lt;a4j:outputPanel&gt;</classname> to be updated with each Ajax response for the page, even when not listed explicitly by the requesting component. This can in turn be overridden by specific attributes on any requesting components.
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Panels_and_containers-a4jregion">
+					<title>&lt;a4j:region&gt;</title>
+					<para>
+						The <classname>&lt;a4j:region&gt;</classname> component specifies a part of the document object model (<acronym>DOM</acronym>) tree to be processed on the server. The processing includes data handling during decoding, conversion, validation, and model updating. When not using <classname>&lt;a4j:region&gt;</classname>, the entire view functions as a region.
+					</para>
+					<para>
+						The whole form is still submitted to the server, but only the specified region is processed. Regions can be nested, in which case only the immediate region of the component initiating the request will be processed.
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Panels_and_containers-richmodalPanel">
+					<title>&lt;rich:modalPanel&gt;</title>
+					<para>
+						The <classname>&lt;rich:modalPanel&gt;</classname> component provides a modal panel or window that blocks interaction with the rest of the application while active. It can be easily positioned on the screen, dragged to a new position by the user, and re-sized.
+					</para>
+					<important>
+						<title>Important</title>
+						<para>
+							The <classname>&lt;rich:modalPanel&gt;</classname> component should always be placed outside the original <classname>&lt;h:form&gt;</classname>, and must include its own <classname>&lt;h:form&gt;</classname> if performing submits.
+						</para>
+					</important>
+					<para>
+						By default, the modal panel can be both re-sized and re-positioned by the user. The minimum possible size for the panel can be set with the These abilities can be deactivated by setting <code>resizable</code> or <code>movable</code> to <literal>false</literal> as necessary. The state of the modal panel, including size and position on screen, can be maintained and restored after submitting and reloading by setting <code>keepVisualState="true"</code>.
+					</para>
+					<para>
+						If <code>showWhenRendered="true"</code> then the modal panel will display when the page is first loaded.
+					</para>
+					<example id="exam-Component_Reference-richmodalPanel-richmodalPanel_example">
+						<title>&lt;rich:modalPanel&gt; example</title>
+						
+<programlisting language="xml">
+&lt;a onclick="Richfaces.showModalPanel(&#39;pnl&#39;);" href="#"&gt;Show ModalPanel&lt;/a&gt;
+&lt;a4j:form&gt;
+  &lt;rich:modalPanel id="pnl" &gt;
+    &lt;a onclick="Richfaces.hideModalPanel(&#39;pnl&#39;);" href="#"&gt;Hide ModalPanel&lt;/a&gt;
+  &lt;/rich:modalPanel&gt;
+&lt;/a4j:form&gt;
+</programlisting>
+					</example>
+				</section>
+				
+				<section id="sect-Component_Reference-Panels_and_containers-richpanel">
+					<title>&lt;rich:panel&gt;</title>
+					<para>
+						The <classname>&lt;rich:panel&gt;</classname> component is a bordered panel with an optional header.
+					</para>
+					<para>
+						No attributes need to be listed for basic usage. To add a header to the panel, use the <code>header</code> attribute to specify the text to appear in the header. Alternatively the header can be constructed using a header facet.
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Panels_and_containers-richpanelBar">
+					<title>&lt;rich:panelBar&gt;</title>
+					<para>
+						The <classname>&lt;rich:panelBar&gt;</classname> is a series of panels stacked on top of each other, each collapsed such that only the header of the panel is showing. When the header of a panel is clicked, it is expanded to show the content of the panel. Clicking on a different header will collapse the previous panel and epand the selected one. Another name for the component is "accordion". Each panel in contained in a <classname>&lt;rich:panelBar&gt;</classname> component is a <classname>&lt;rich:panelBarItem&gt;</classname> component.
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Panels_and_containers-richpanelBarItem">
+					<title>&lt;rich:panelBarItem&gt;</title>
+					<para>
+						The <classname>&lt;rich:panelBarItem&gt;</classname> component is a panel for use with the <classname>&lt;rich:panelBar&gt;</classname> component.
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Panels_and_containers-richpanelMenu">
+					<title>&lt;rich:panelMenu&gt;</title>
+					<para>
+						The <classname>&lt;rich:panelMenu&gt;</classname> component can be used in conjunction with <classname>&lt;rich:panelMenuItem&gt;</classname> and <classname>&lt;rich:panelMenuGroup&gt;</classname> to create an expanding, hierarchical menu. The <classname>&lt;rich:panelMenu&gt;</classname> component&#39;s appearance can be highly customized, and the hierarchy can stretch to any number of sub-levels.
+					</para>
+					<para>
+						The <code>selectedChild</code> attribute is used to point to the name of the currently selected menu item.
+					</para>
+					<para>
+						By default, the event to expand the menu is a mouse click. This can be changed by setting <code>event</code> to specify the preferred event. Several sub-menus can be expanded a once unless the <code>expandSingle</code> is set to <literal>true</literal>, which only allows one sub-menu at a time to be expanded.
+					</para>
+					<para>
+						The <code>mode</code> attribute defines the submission mode for normal menu items, and the <code>expandMode</code> attribute defines the submission mode for menu items that expand and collapse. The settings for these attributes apply to the entire menu unless a menu item defines its own individual <code>mode</code> or <code>expandMode</code>. The values for <code>mode</code> and <code>expandMode</code> are:
+					</para>
+					<itemizedlist>
+						<listitem>
+							<para>
+								<literal>server</literal>, the default setting, which submits the form normally and completely refreshes the page;
+							</para>
+						</listitem>
+						<listitem>
+							<para>
+								<literal>ajax</literal>, which performs an Ajax form submission, and re-renders elements specified with the <code>render</code> attribute; and
+							</para>
+						</listitem>
+						<listitem>
+							<para>
+								<literal>none</literal>, which causes the <code>action</code> and <code>actionListener</code> items to be ignored, and the behavior is fully defined by the nested components instead of responses from submissions.
+							</para>
+						</listitem>
+					</itemizedlist>
+				</section>
+				
+				<section id="sect-Component_Reference-Panels_and_containers-richpanelMenuGroup">
+					<title>&lt;rich:panelMenuGroup&gt;</title>
+					<para>
+						The <classname>&lt;rich:panelMenuGroup&gt;</classname> component defines a group of <classname>&lt;rich:panelMenuItem&gt;</classname> components inside a <classname>&lt;rich:panelMenu&gt;</classname>.
+					</para>
+					<para>
+						If the <code>expandMode</code> is unspecified, the submission behavior for the group is inherited from the parent <classname>&lt;rich:panelMenu&gt;</classname>. Otherwise, the <code>expandMode</code> setting is used instead of the parent&#39;s behavior.
+					</para>
+					<para>
+						Icons for menu items can be chosen from a set of standard icons. There are three attributes that relate to the different menu states that the icon represents: <code>iconExpanded</code>, <code>iconCollapsed</code>, and <code>iconDisabled</code>. The standard icons are shown in <xref linkend="figu-Component_Reference-richpanelMenuGroup-Standard_icons" />.
+					</para>
+					<figure id="figu-Component_Reference-richpanelMenuGroup-Standard_icons">
+						<title>Standard icons</title>
+						<mediaobject>
+							<imageobject>
+								<imagedata fileref="images/panelMenuGroupIcons.png" format="PNG" />
+							</imageobject>
+						</mediaobject>
+					</figure>
+				</section>
+				
+				<section id="sect-Component_Reference-Panels_and_containers-richpanelMenuItem">
+					<title>&lt;rich:panelMenuItem&gt;</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Panels_and_containers-richsimpleTogglePanel">
+					<title>&lt;rich:simpleTogglePanel&gt;</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Panels_and_containers-richtabPanel">
+					<title>&lt;rich:tabPanel&gt;</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Panels_and_containers-richtab">
+					<title>&lt;rich:tab&gt;</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Panels_and_containers-richtogglePanel">
+					<title>&lt;rich:togglePanel&gt;</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Panels_and_containers-richtoggleControl">
+					<title>&lt;rich:toggleControl&gt;</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+
+			</chapter>
+			<chapter id="chap-Component_Reference-Tables_and_grids" lang="en-US">
+				<title>Tables and grids</title>
 				<para>
-					<code>oneditactivated</code> is triggered after the "edit" state is activated.
+					Incomplete
 				</para>
-			</listitem>
-			<listitem>
+				<section id="sect-Component_Reference-Tables_and_grids-richcolumn">
+					<title>rich:column</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Tables_and_grids-richcolumnGroup">
+					<title>rich:columnGroup</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Tables_and_grids-richcolumns">
+					<title>rich:columns</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Tables_and_grids-richdataFilterSlider">
+					<title>rich:dataFilterSlider</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Tables_and_grids-richdataGrid">
+					<title>rich:dataGrid</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Tables_and_grids-richdataScroller">
+					<title>rich:dataScroller</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Tables_and_grids-richdataTable">
+					<title>rich:dataTable</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Tables_and_grids-richextendedDataTable">
+					<title>rich:extendedDataTable</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Tables_and_grids-richrepeat">
+					<title>rich:repeat</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Tables_and_grids-richscrollableDataTable">
+					<title>rich:scrollableDataTable</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Tables_and_grids-richsubTable">
+					<title>rich:subTable</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Tables_and_grids-Table_filtering">
+					<title>Table filtering</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Tables_and_grids-Table_sorting">
+					<title>Table sorting</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+
+			</chapter>
+			<chapter id="chap-Component_Reference-Lists_and_trees" lang="en-US">
+				<title>Lists and trees</title>
 				<para>
-					<code>onviewactivation</code> is triggered before the "view" or "changed" state is activated.
+					Incomplete
 				</para>
-			</listitem>
-			<listitem>
+				<section id="sect-Component_Reference-Lists_and_trees-richdataDefinitionList">
+					<title>rich:dataDefinitionList</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Lists_and_trees-richdataList">
+					<title>rich:dataList</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Lists_and_trees-richdataOrderedList">
+					<title>rich:dataOrderedList</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Lists_and_trees-richlistShuttle">
+					<title>rich:listShuttle</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Lists_and_trees-richorderingList">
+					<title>rich:orderingList</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Lists_and_trees-richpickList">
+					<title>rich:pickList</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Lists_and_trees-richchangeExpandListener">
+					<title>rich:changeExpandListener</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Lists_and_trees-richnodeSelectListener">
+					<title>rich:nodeSelectListener</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Lists_and_trees-richrecursiveTreeNodesAdapter">
+					<title>rich:recursiveTreeNodesAdapter</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Lists_and_trees-richtree">
+					<title>rich:tree</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Lists_and_trees-richtreeNode">
+					<title>rich:treeNode</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Lists_and_trees-richtreeNodesAdapter">
+					<title>rich:treeNodesAdapter</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+
+			</chapter>
+			<chapter id="chap-Component_Reference-Menus_and_toolbars" lang="en-US">
+				<title>Menus and toolbars</title>
 				<para>
-					<code>onviewactivated</code> is triggered after the "view" or "changed" state is activated.
+					Incomplete
 				</para>
-			</listitem>
-		</itemizedlist>
-	</section>
-	
-	<section id="sect-Component_Reference-Rich_inputs-richinputNumberSlider">
-		<title>&lt;rich:inputNumberSlider&gt;</title>
-		<para>
-			The <classname>&lt;rich:inputNumberSlider&gt;</classname> component provides a slider for changing numerical values. Optional features include a tool-tip to display the value while sliding, and a text field for typing the numerical value which can then be validated against the slider's range.
-		</para>
-		<para>
-			Basic use of the component with no attributes specified will render a slider with a minimum value of 0, a maximum of 100, and a gradient step of 1, together with a text field for typing the desired numerical value. The text field can be removed by setting <code>showInput="false"</code>, and the properties of the slider can be set with the attributes <code>minValue</code>, <code>maxValue</code>, and <code>step</code>. The slider is labeled with the minimum and maximum boundary values, and a tool-tip showing the current value is shown while sliding the slider; these items can be turned off by setting <code>showBoundaryValues="false"</code> and <code>showToolTip="false"</code> respectively.
-		</para>
-		<para>
-			Arrow controls can be added to either side of the slider to adjust the value incrementally by setting <code>showArrows="true"</code>. Clicking the arrows move the slider indicator in that direction by the gradient step, and clicking and holding the arrows moves the indicator continuously. The time delay for each step when updating continuously can be defined using the <code>delay</code> attribute.
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Rich_inputs-richinputNumberSpinner">
-		<title>&lt;rich:inputNumberSpinner&gt;</title>
-		<para>
-			The <classname>&lt;rich:inputNumberSpinner&gt;</classname> component is a single-line input field with buttons to increase and decrease a numerical value. The value can be changed using the corresponding directional keys on a keyboard, or by typing into the field.
-		</para>
-		<para>
-			Basic use of the component with no attributes specified will render a number spinner with a minimum value of 1, a maximum value of 100, and a gradient step of 1. These default properties can be re-defined with the attributes <code>minValue</code>, <code>maxValue</code>, and <code>step</code> respectively. The starting value of the spinner is the minimum value unless otherwise specified with the <code>value</code> attribute.
-		</para>
-		<para>
-			When changing the value using the buttons, raising the value above the maximum or cause the spinner to restart at the minimum value. Likewise, when lowering below the minimum value the spinner will reset to the maximum value. This behavior can be deactivated by setting <code>cycled="false"</code>, which will cause the buttons to stop responding when the reach the maximum or minimum value.
-		</para>
-		<para>
-			The ability to change the value by typing into the text field can be disabled by setting <code>enableManualInput="false"</code>.
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Rich_inputs-richsuggestionBox">
-		<title>&lt;rich:suggestionBox&gt;</title>
-		<para>
-			The <classname>&lt;rich:suggestionBox&gt;</classname> component adds a feature-rich drop-down list of suggestions to any text input component.
-		</para>
-		<para>
-			The <classname>&lt;rich:suggestionBox&gt;</classname> component needs the attributes defined for basic use: <code>for</code>, which identifies the component to attach the suggestion box to; <code>suggestionAction</code>, which defines the method for getting the collection of suggestion data; and <code>var</code>, which defines a collection name for access to the currently highlighted row. Typically the suggestions are presented as a list with one or more columns of suggestion data; the layout of these columns is defined inside the <classname>&lt;rich:suggestionBox&gt;</classname> tags using <classname>&lt;h:column&gt;</classname> and other <acronym>JSF</acronym> components.
-		</para>
-		<para>
-			For suggestion lists with multiple columns, the <code>fetchValue</code> attribute can be used to specify which column is used when selecting the value for the input component.
-		</para>
-		<para>
-			The <code>tokens</code> attribute can be used to define separator characters, which are used when multiple values need to be entered and a new suggestion made for each value. For example, <code>tokens=","</code> (a comma) will begin a new suggestion query each time a comma is typed. Multiple separators can be defined with spaces in between (<code>tokens=", . ; [ ]"</code>) or linking to a bean property that holds the collection of separator tokens.
-		</para>
-		<para>
-			The <code>minChars</code> attribute can be used to limit sending the Ajax request until a certain amount of characters has been entered. If the query returns no results, an appropriate message to display can be set with the <code>nothingLabel</code> attribute.
-		</para>
-		<para>
-			Instead of returning just one value from an object, the entire object can be returned to the client and handled appropriately. This is done by specifying <code>usingSuggestObjects="true"</code> and setting the <code>onobjectchange</code> attribute to a JavaScript method to handle the object, passing the <literal>suggestion</literal> object as a parameter.
-		</para>
-	</section>
+				<section id="sect-Component_Reference-Menus_and_toolbars-richcontextMenu">
+					<title>rich:contextMenu</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Menus_and_toolbars-richdropDownMenu">
+					<title>rich:dropDownMenu</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Menus_and_toolbars-richmenuGroup">
+					<title>rich:menuGroup</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Menus_and_toolbars-richmenuItem">
+					<title>rich:menuItem</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Menus_and_toolbars-richmenuSeparator">
+					<title>rich:menuSeparator</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Menus_and_toolbars-richtoolBar">
+					<title>rich:toolBar</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Menus_and_toolbars-richtoolBarGroup">
+					<title>rich:toolBarGroup</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
 
-</chapter>
-	<chapter id="chap-Component_Reference-Panels_and_containers" lang="en-US">
-	<title>Panels and containers</title>
-	<para>
-		This chapter details those components which act as panels and containers to hold groups of other components.
-	</para>
-	<section id="sect-Component_Reference-Panels_and_containers-a4jform">
-		<title>&lt;a4j:form&gt;</title>
-		<para>
-			The <classname>&lt;a4j:form&gt;</classname> builds on the functionality of the JavaServer Faces (<acronym>JSF</acronym>) component <classname>&lt;h:form&gt;</classname>, adding Ajax capabilities to the form.
-		</para>
-		<note>
-			<title>Note</title>
-			<para>
-				The <acronym>JSF</acronym> component <classname>&lt;h:form&gt;</classname>, on which the <classname>&lt;a4j:form&gt;</classname> component is based, had an issue whereby the <classname>&lt;h:commandLink&gt;</classname> component could not be re-rendered without re-rendering the entire form. <classname>&lt;a4j:form&gt;</classname> and <classname>&lt;a4j:commandLink&gt;</classname> fix this issue.
-			</para>
-		</note>
-		<para>
-			The <classname>&lt;a4j:form&gt;</classname> component can add indirect Ajax support to non-Ajax components on the form by setting <code>ajaxSubmit="true"</code>. It then uses the standard Ajax component attributes and updates components specified with the <code>render</code> attribute.
-		</para>
-		<important>
-			<title>Important</title>
-			<para>
-				<classname>&lt;a4j:form&gt;</classname> should not use <code>ajaxSubmit="true"</code> if it contains other Ajax-capable components.
-			</para>
-			<para>
-				Additionally, due to security reasons the file upload form element cannot be indirectly made Ajax-capable with <classname>&lt;a4j:form&gt;</classname>.
-			</para>
-		</important>
-	</section>
-	
-	<section id="sect-Component_Reference-Panels_and_containers-a4joutputPanel">
-		<title>&lt;a4j:outputPanel&gt;</title>
-		<para>
-			The <classname>&lt;a4j:outputPanel&gt;</classname> component is used to group together components in to update them as a whole, rather than having to specify the components individually.
-		</para>
-		<para>
-			The <code>layout</code> attribute can be used to determine how the component is rendered in <acronym>HTML</acronym>:
-		</para>
-		<itemizedlist>
-			<listitem>
+			</chapter>
+			<chapter id="chap-Component_Reference-Messages" lang="en-US">
+				<title>Messages</title>
 				<para>
-					<code>layout="inline"</code> is the default behavior, which will render the component as a pair of <code>&lt;span&gt;</code> tags containing the child components.
+					Incomplete
 				</para>
-			</listitem>
-			<listitem>
+				<section id="sect-Component_Reference-Messages-richmessage">
+					<title>rich:message</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Messages-richmessages">
+					<title>rich:messages</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Messages-richprogressBar">
+					<title>rich:progressBar</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Messages-richtoolTip">
+					<title>rich:toolTip</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+
+			</chapter>
+			<chapter id="chap-Component_Reference-Drag_and_drop" lang="en-US">
+				<title>Drag and drop</title>
 				<para>
-					<code>layout="block"</code> will render the component as a pair of <code>&lt;div&gt;</code> tags containing the child components, which will use any defined <code>&lt;div&gt;</code> element styles.
+					Incomplete
 				</para>
-			</listitem>
-			<listitem>
+				<section id="sect-Component_Reference-Drag_and_drop-richdragIndicator">
+					<title>rich:dragIndicator</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Drag_and_drop-richdragSupport">
+					<title>rich:dragSupport</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Drag_and_drop-richdropSupport">
+					<title>rich:dropSupport</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Drag_and_drop-richdragListener">
+					<title>rich:dragListener</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Drag_and_drop-richdropListener">
+					<title>rich:dropListener</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Drag_and_drop-richdndParam">
+					<title>rich:dndParam</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+
+			</chapter>
+			<chapter id="chap-Component_Reference-Layout_and_appearance" lang="en-US">
+				<title>Layout and appearance</title>
 				<para>
-					<code>layout="none"</code> will render the component as a pair of <code>&lt;span&gt;</code> tags with an identifier equal to that of a child component. If the child component is rendered then the <code>&lt;span&gt;</code> are not included, leaving no markup representing the <classname>&lt;a4j:outputPanel&gt;</classname> in <acronym>HTML</acronym>.
+					Incomplete
 				</para>
-			</listitem>
-		</itemizedlist>
-		<para>
-			Setting <code>ajaxRendered="true"</code> will cause the <classname>&lt;a4j:outputPanel&gt;</classname> to be updated with each Ajax response for the page, even when not listed explicitly by the requesting component. This can in turn be overridden by specific attributes on any requesting components.
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Panels_and_containers-a4jregion">
-		<title>&lt;a4j:region&gt;</title>
-		<para>
-			The <classname>&lt;a4j:region&gt;</classname> component specifies a part of the document object model (<acronym>DOM</acronym>) tree to be processed on the server. The processing includes data handling during decoding, conversion, validation, and model updating. When not using <classname>&lt;a4j:region&gt;</classname>, the entire view functions as a region.
-		</para>
-		<para>
-			The whole form is still submitted to the server, but only the specified region is processed. Regions can be nested, in which case only the immediate region of the component initiating the request will be processed.
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Panels_and_containers-richmodalPanel">
-		<title>&lt;rich:modalPanel&gt;</title>
-		<para>
-			The <classname>&lt;rich:modalPanel&gt;</classname> component provides a modal panel or window that blocks interaction with the rest of the application while active. It can be easily positioned on the screen, dragged to a new position by the user, and re-sized.
-		</para>
-		<important>
-			<title>Important</title>
-			<para>
-				The <classname>&lt;rich:modalPanel&gt;</classname> component should always be placed outside the original <classname>&lt;h:form&gt;</classname>, and must include its own <classname>&lt;h:form&gt;</classname> if performing submits.
-			</para>
-		</important>
-		<para>
-			By default, the modal panel can be both re-sized and re-positioned by the user. The minimum possible size for the panel can be set with the These abilities can be deactivated by setting <code>resizable</code> or <code>movable</code> to <literal>false</literal> as necessary. The state of the modal panel, including size and position on screen, can be maintained and restored after submitting and reloading by setting <code>keepVisualState="true"</code>.
-		</para>
-		<para>
-			If <code>showWhenRendered="true"</code> then the modal panel will display when the page is first loaded.
-		</para>
-		<example id="exam-Component_Reference-richmodalPanel-richmodalPanel_example">
-			<title>&lt;rich:modalPanel&gt; example</title>
-			
-<programlisting language="xml">
-&lt;a onclick="Richfaces.showModalPanel('pnl');" href="#"&gt;Show ModalPanel&lt;/a&gt;
-&lt;a4j:form&gt;
-  &lt;rich:modalPanel id="pnl" &gt;
-    &lt;a onclick="Richfaces.hideModalPanel('pnl');" href="#"&gt;Hide ModalPanel&lt;/a&gt;
-  &lt;/rich:modalPanel&gt;
-&lt;/a4j:form&gt;
-</programlisting>
-		</example>
-	</section>
-	
-	<section id="sect-Component_Reference-Panels_and_containers-richpanel">
-		<title>&lt;rich:panel&gt;</title>
-		<para>
-			The <classname>&lt;rich:panel&gt;</classname> component is a bordered panel with an optional header.
-		</para>
-		<para>
-			No attributes need to be listed for basic usage. To add a header to the panel, use the <code>header</code> attribute to specify the text to appear in the header. Alternatively the header can be constructed using a header facet.
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Panels_and_containers-richpanelBar">
-		<title>&lt;rich:panelBar&gt;</title>
-		<para>
-			The <classname>&lt;rich:panelBar&gt;</classname> is a series of panels stacked on top of each other, each collapsed such that only the header of the panel is showing. When the header of a panel is clicked, it is expanded to show the content of the panel. Clicking on a different header will collapse the previous panel and epand the selected one. Another name for the component is "accordion". Each panel in contained in a <classname>&lt;rich:panelBar&gt;</classname> component is a <classname>&lt;rich:panelBarItem&gt;</classname> component.
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Panels_and_containers-richpanelBarItem">
-		<title>&lt;rich:panelBarItem&gt;</title>
-		<para>
-			The <classname>&lt;rich:panelBarItem&gt;</classname> component is a panel for use with the <classname>&lt;rich:panelBar&gt;</classname> component.
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Panels_and_containers-richpanelMenu">
-		<title>&lt;rich:panelMenu&gt;</title>
-		<para>
-			The <classname>&lt;rich:panelMenu&gt;</classname> component can be used in conjunction with <classname>&lt;rich:panelMenuItem&gt;</classname> and <classname>&lt;rich:panelMenuGroup&gt;</classname> to create an expanding, hierarchical menu. The <classname>&lt;rich:panelMenu&gt;</classname> component's appearance can be highly customized, and the hierarchy can stretch to any number of sub-levels.
-		</para>
-		<para>
-			The <code>selectedChild</code> attribute is used to point to the name of the currently selected menu item.
-		</para>
-		<para>
-			By default, the event to expand the menu is a mouse click. This can be changed by setting <code>event</code> to specify the preferred event. Several sub-menus can be expanded a once unless the <code>expandSingle</code> is set to <literal>true</literal>, which only allows one sub-menu at a time to be expanded.
-		</para>
-		<para>
-			The <code>mode</code> attribute defines the submission mode for normal menu items, and the <code>expandMode</code> attribute defines the submission mode for menu items that expand and collapse. The settings for these attributes apply to the entire menu unless a menu item defines its own individual <code>mode</code> or <code>expandMode</code>. The values for <code>mode</code> and <code>expandMode</code> are:
-		</para>
-		<itemizedlist>
-			<listitem>
+				<section id="sect-Component_Reference-Layout_and_appearance-a4jloadStyle">
+					<title>a4j:loadStyle</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Layout_and_appearance-richeffect">
+					<title>rich:effect</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Layout_and_appearance-richjQuery">
+					<title>rich:jQuery</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Layout_and_appearance-richseparator">
+					<title>rich:separator</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Layout_and_appearance-richspacer">
+					<title>rich:spacer</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Layout_and_appearance-richpage">
+					<title>rich:page</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Layout_and_appearance-richlayout">
+					<title>rich:layout</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Layout_and_appearance-richlayoutPanel">
+					<title>rich:layoutPanel</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+
+			</chapter>
+			<chapter id="chap-Component_Reference-Resource_handling" lang="en-US">
+				<title>Resource handling</title>
 				<para>
-					<literal>server</literal>, the default setting, which submits the form normally and completely refreshes the page;
+					Incomplete
 				</para>
-			</listitem>
-			<listitem>
+				<section id="sect-Component_Reference-Resource_handling-a4jloadBundle">
+					<title>a4j:loadBundle</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Resource_handling-a4jkeepAlive">
+					<title>a4j:keepAlive</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Resource_handling-a4jpoll">
+					<title>a4j:poll</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Resource_handling-a4jpush">
+					<title>a4j:push</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Resource_handling-a4jqueue">
+					<title>a4j:queue</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Resource_handling-a4jstatus">
+					<title>a4j:status</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+
+			</chapter>
+			<chapter id="chap-Component_Reference-Validation" lang="en-US">
+				<title>Validation</title>
 				<para>
-					<literal>ajax</literal>, which performs an Ajax form submission, and re-renders elements specified with the <code>render</code> attribute; and
+					Incomplete
 				</para>
-			</listitem>
-			<listitem>
+				<section id="sect-Component_Reference-Validation-richajaxValidator">
+					<title>rich:ajaxValidator</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Validation-richgraphValidator">
+					<title>rich:graphValidator</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Validation-richbeanValidator">
+					<title>rich:beanValidator</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+
+			</chapter>
+			<chapter id="chap-Component_Reference-Portals" lang="en-US">
+				<title>Portals</title>
 				<para>
-					<literal>none</literal>, which causes the <code>action</code> and <code>actionListener</code> items to be ignored, and the behavior is fully defined by the nested components instead of responses from submissions.
+					Incomplete
 				</para>
-			</listitem>
-		</itemizedlist>
-	</section>
-	
-	<section id="sect-Component_Reference-Panels_and_containers-richpanelMenuGroup">
-		<title>&lt;rich:panelMenuGroup&gt;</title>
-		<para>
-			The <classname>&lt;rich:panelMenuGroup&gt;</classname> component defines a group of <classname>&lt;rich:panelMenuItem&gt;</classname> components inside a <classname>&lt;rich:panelMenu&gt;</classname>.
-		</para>
-		<para>
-			If the <code>expandMode</code> is unspecified, the submission behavior for the group is inherited from the parent <classname>&lt;rich:panelMenu&gt;</classname>. Otherwise, the <code>expandMode</code> setting is used instead of the parent's behavior.
-		</para>
-		<para>
-			Icons for menu items can be chosen from a set of standard icons. There are three attributes that relate to the different menu states that the icon represents: <code>iconExpanded</code>, <code>iconCollapsed</code>, and <code>iconDisabled</code>. The standard icons are shown in <xref linkend="figu-Component_Reference-richpanelMenuGroup-Standard_icons"/>.
-		</para>
-		<figure id="figu-Component_Reference-richpanelMenuGroup-Standard_icons">
-			<title>Standard icons</title>
-			<mediaobject>
-				<imageobject>
-					<imagedata fileref="images/panelMenuGroupIcons.png" format="PNG"/>
-				</imageobject>
-			</mediaobject>
-		</figure>
-	</section>
-	
-	<section id="sect-Component_Reference-Panels_and_containers-richpanelMenuItem">
-		<title>&lt;rich:panelMenuItem&gt;</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Panels_and_containers-richsimpleTogglePanel">
-		<title>&lt;rich:simpleTogglePanel&gt;</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Panels_and_containers-richtabPanel">
-		<title>&lt;rich:tabPanel&gt;</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Panels_and_containers-richtab">
-		<title>&lt;rich:tab&gt;</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Panels_and_containers-richtogglePanel">
-		<title>&lt;rich:togglePanel&gt;</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Panels_and_containers-richtoggleControl">
-		<title>&lt;rich:toggleControl&gt;</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
+				<section id="sect-Component_Reference-Portals-a4jportlet">
+					<title>a4j:portlet</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
 
-</chapter>
-	<chapter id="chap-Component_Reference-Tables_and_grids" lang="en-US">
-	<title>Tables and grids</title>
-	<para>
-		Incomplete
-	</para>
-	<section id="sect-Component_Reference-Tables_and_grids-richcolumn">
-		<title>rich:column</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Tables_and_grids-richcolumnGroup">
-		<title>rich:columnGroup</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Tables_and_grids-richcolumns">
-		<title>rich:columns</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Tables_and_grids-richdataFilterSlider">
-		<title>rich:dataFilterSlider</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Tables_and_grids-richdataGrid">
-		<title>rich:dataGrid</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Tables_and_grids-richdataScroller">
-		<title>rich:dataScroller</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Tables_and_grids-richdataTable">
-		<title>rich:dataTable</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Tables_and_grids-richextendedDataTable">
-		<title>rich:extendedDataTable</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Tables_and_grids-richrepeat">
-		<title>rich:repeat</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Tables_and_grids-richscrollableDataTable">
-		<title>rich:scrollableDataTable</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Tables_and_grids-richsubTable">
-		<title>rich:subTable</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Tables_and_grids-Table_filtering">
-		<title>Table filtering</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Tables_and_grids-Table_sorting">
-		<title>Table sorting</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
+			</chapter>
+			<chapter id="chap-Component_Reference-Functionality_extension" lang="en-US">
+				<title>Functionality extension</title>
+				<para>
+					Incomplete
+				</para>
+				<section id="sect-Component_Reference-Functionality_extension-a4jactionParam">
+					<title>a4j:actionParam</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Functionality_extension-a4jajax">
+					<title>a4j:ajax</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Functionality_extension-a4jajaxListener">
+					<title>a4j:ajaxListener</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Functionality_extension-a4jinclude">
+					<title>a4j:include</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Functionality_extension-a4jjsFunction">
+					<title>a4j:jsFunction</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Functionality_extension-a4jloadScript">
+					<title>a4j:loadScript</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Functionality_extension-a4jlog">
+					<title>a4j:log</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Functionality_extension-richcomponentControl">
+					<title>rich:componentControl</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
 
-</chapter>
-	<chapter id="chap-Component_Reference-Lists_and_trees" lang="en-US">
-	<title>Lists and trees</title>
-	<para>
-		Incomplete
-	</para>
-	<section id="sect-Component_Reference-Lists_and_trees-richdataDefinitionList">
-		<title>rich:dataDefinitionList</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Lists_and_trees-richdataList">
-		<title>rich:dataList</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Lists_and_trees-richdataOrderedList">
-		<title>rich:dataOrderedList</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Lists_and_trees-richlistShuttle">
-		<title>rich:listShuttle</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Lists_and_trees-richorderingList">
-		<title>rich:orderingList</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Lists_and_trees-richpickList">
-		<title>rich:pickList</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Lists_and_trees-richchangeExpandListener">
-		<title>rich:changeExpandListener</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Lists_and_trees-richnodeSelectListener">
-		<title>rich:nodeSelectListener</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Lists_and_trees-richrecursiveTreeNodesAdapter">
-		<title>rich:recursiveTreeNodesAdapter</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Lists_and_trees-richtree">
-		<title>rich:tree</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Lists_and_trees-richtreeNode">
-		<title>rich:treeNode</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Lists_and_trees-richtreeNodesAdapter">
-		<title>rich:treeNodesAdapter</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
+			</chapter>
+			<chapter id="chap-Component_Reference-Other_components" lang="en-US">
+				<title>Other components</title>
+				<para>
+					Incomplete
+				</para>
+				<section id="sect-Component_Reference-Other_components-a4jmediaOutput">
+					<title>a4j:mediaOutput</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Other_components-richhotkey">
+					<title>rich:hotkey</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Other_components-richinsert">
+					<title>rich:insert</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Other_components-richpaint2D">
+					<title>rich:paint2D</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Other_components-richgmap">
+					<title>rich:gmap</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
+				
+				<section id="sect-Component_Reference-Other_components-richvirtualEarth">
+					<title>rich:virtualEarth</title>
+					<para>
+						Incomplete
+					</para>
+				</section>
 
-</chapter>
-	<chapter id="chap-Component_Reference-Menus_and_toolbars" lang="en-US">
-	<title>Menus and toolbars</title>
-	<para>
-		Incomplete
-	</para>
-	<section id="sect-Component_Reference-Menus_and_toolbars-richcontextMenu">
-		<title>rich:contextMenu</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Menus_and_toolbars-richdropDownMenu">
-		<title>rich:dropDownMenu</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Menus_and_toolbars-richmenuGroup">
-		<title>rich:menuGroup</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Menus_and_toolbars-richmenuItem">
-		<title>rich:menuItem</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Menus_and_toolbars-richmenuSeparator">
-		<title>rich:menuSeparator</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Menus_and_toolbars-richtoolBar">
-		<title>rich:toolBar</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Menus_and_toolbars-richtoolBarGroup">
-		<title>rich:toolBarGroup</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-
-</chapter>
-	<chapter id="chap-Component_Reference-Messages" lang="en-US">
-	<title>Messages</title>
-	<para>
-		Incomplete
-	</para>
-	<section id="sect-Component_Reference-Messages-richmessage">
-		<title>rich:message</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Messages-richmessages">
-		<title>rich:messages</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Messages-richprogressBar">
-		<title>rich:progressBar</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Messages-richtoolTip">
-		<title>rich:toolTip</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-
-</chapter>
-	<chapter id="chap-Component_Reference-Drag_and_drop" lang="en-US">
-	<title>Drag and drop</title>
-	<para>
-		Incomplete
-	</para>
-	<section id="sect-Component_Reference-Drag_and_drop-richdragIndicator">
-		<title>rich:dragIndicator</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Drag_and_drop-richdragSupport">
-		<title>rich:dragSupport</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Drag_and_drop-richdropSupport">
-		<title>rich:dropSupport</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Drag_and_drop-richdragListener">
-		<title>rich:dragListener</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Drag_and_drop-richdropListener">
-		<title>rich:dropListener</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Drag_and_drop-richdndParam">
-		<title>rich:dndParam</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-
-</chapter>
-	<chapter id="chap-Component_Reference-Layout_and_appearance" lang="en-US">
-	<title>Layout and appearance</title>
-	<para>
-		Incomplete
-	</para>
-	<section id="sect-Component_Reference-Layout_and_appearance-a4jloadStyle">
-		<title>a4j:loadStyle</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Layout_and_appearance-richeffect">
-		<title>rich:effect</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Layout_and_appearance-richjQuery">
-		<title>rich:jQuery</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Layout_and_appearance-richseparator">
-		<title>rich:separator</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Layout_and_appearance-richspacer">
-		<title>rich:spacer</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Layout_and_appearance-richpage">
-		<title>rich:page</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Layout_and_appearance-richlayout">
-		<title>rich:layout</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Layout_and_appearance-richlayoutPanel">
-		<title>rich:layoutPanel</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-
-</chapter>
-	<chapter id="chap-Component_Reference-Resource_handling" lang="en-US">
-	<title>Resource handling</title>
-	<para>
-		Incomplete
-	</para>
-	<section id="sect-Component_Reference-Resource_handling-a4jloadBundle">
-		<title>a4j:loadBundle</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Resource_handling-a4jkeepAlive">
-		<title>a4j:keepAlive</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Resource_handling-a4jpoll">
-		<title>a4j:poll</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Resource_handling-a4jpush">
-		<title>a4j:push</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Resource_handling-a4jqueue">
-		<title>a4j:queue</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Resource_handling-a4jstatus">
-		<title>a4j:status</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-
-</chapter>
-	<chapter id="chap-Component_Reference-Validation" lang="en-US">
-	<title>Validation</title>
-	<para>
-		Incomplete
-	</para>
-	<section id="sect-Component_Reference-Validation-richajaxValidator">
-		<title>rich:ajaxValidator</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Validation-richgraphValidator">
-		<title>rich:graphValidator</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Validation-richbeanValidator">
-		<title>rich:beanValidator</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-
-</chapter>
-	<chapter id="chap-Component_Reference-Portals" lang="en-US">
-	<title>Portals</title>
-	<para>
-		Incomplete
-	</para>
-	<section id="sect-Component_Reference-Portals-a4jportlet">
-		<title>a4j:portlet</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-
-</chapter>
-	<chapter id="chap-Component_Reference-Functionality_extension" lang="en-US">
-	<title>Functionality extension</title>
-	<para>
-		Incomplete
-	</para>
-	<section id="sect-Component_Reference-Functionality_extension-a4jactionParam">
-		<title>a4j:actionParam</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Functionality_extension-a4jajax">
-		<title>a4j:ajax</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Functionality_extension-a4jajaxListener">
-		<title>a4j:ajaxListener</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Functionality_extension-a4jinclude">
-		<title>a4j:include</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Functionality_extension-a4jjsFunction">
-		<title>a4j:jsFunction</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Functionality_extension-a4jloadScript">
-		<title>a4j:loadScript</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Functionality_extension-a4jlog">
-		<title>a4j:log</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Functionality_extension-richcomponentControl">
-		<title>rich:componentControl</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-
-</chapter>
-	<chapter id="chap-Component_Reference-Other_components" lang="en-US">
-	<title>Other components</title>
-	<para>
-		Incomplete
-	</para>
-	<section id="sect-Component_Reference-Other_components-a4jmediaOutput">
-		<title>a4j:mediaOutput</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Other_components-richhotkey">
-		<title>rich:hotkey</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Other_components-richinsert">
-		<title>rich:insert</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Other_components-richpaint2D">
-		<title>rich:paint2D</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Other_components-richgmap">
-		<title>rich:gmap</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-	
-	<section id="sect-Component_Reference-Other_components-richvirtualEarth">
-		<title>rich:virtualEarth</title>
-		<para>
-			Incomplete
-		</para>
-	</section>
-
-</chapter>
-	<appendix id="appe-Component_Reference-Revision_History" lang="en-US">
-	<title>Revision History</title>
-	<simpara>
-		<revhistory>
-			<revision>
-				<revnumber>1.0</revnumber>
-				<date/>
-				<author>
-					<firstname/>
-					<surname/>
-					<email/>
-				</author>
-				<revdescription>
-					<simplelist>
-						<member/>
-					</simplelist>
-				</revdescription>
-			</revision>
-		</revhistory>
-	</simpara>
-</appendix>
-	<index/>
-</book>
+			</chapter>
+			<appendix id="appe-Component_Reference-Revision_History" lang="en-US">
+				<title>Revision History</title>
+				<simpara>
+					<revhistory>
+						<revision>
+							<revnumber>1.0</revnumber>
+							<date></date>
+							<author>
+								<firstname></firstname>
+								<surname></surname>
+								<email></email>
+							</author>
+							<revdescription>
+								<simplelist>
+									<member></member>
+								</simplelist>
+							</revdescription>
+						</revision>
+					</revhistory>
+				</simpara>
+			</appendix>
+			<index />
+		</book>
+		



More information about the richfaces-svn-commits mailing list