<section role="NotInToc" id="rich_toggleControl">
   <title>
				&lt;
				rich:toggleControl
				&gt;
				<emphasis role="since">
         <superscript> available since <emphasis role="version">3.0.0</emphasis>
         </superscript>
      </emphasis>
   </title>
   <section>
      <title>Description</title>
      <para>A link type <property>control</property> for switching between 
    <property>togglePanel</property> facets. Target
     Panel is specified with <emphasis>
            <property>"for"</property>
         </emphasis> 
     attribute. It can be located inside or outside the <property>togglePanel</property>. As the result of switching 
     between facets previous facet is hidden and another one (specified with
     <emphasis>
            <property>"switchToState"</property>
         </emphasis> or panel 
      <emphasis>
            <property>"stateOrder"</property>
         </emphasis> attributes) is 
      shown.</para>
      <figure>
        <title>
            <emphasis role="bold">
               <property>&lt;rich:toggleControl&gt;</property>
            </emphasis> component</title>
         <mediaobject> 
            <imageobject>
               <imagedata fileref="images/toggleControl_init.png"/>
            </imageobject>
         </mediaobject>
      </figure>
    </section>
   <section>
      <title>Key Features</title>
      <itemizedlist>
        <listitem>
            <para>Highly customizable look and feel</para>
         </listitem>
        <listitem>
            <para>Can be located anywhere in a page layout</para>
         </listitem> 
        <listitem>
            <para>Switching is provided in the three modes</para>
            <itemizedlist>
               <listitem>
                  <para>
                     <code>Server</code>
                  </para>
               </listitem>
               <listitem>
                  <para>
                     <code>Client</code>
                  </para>
               </listitem>
               <listitem>
                  <para>
                     <code>Ajax</code>
                  </para>
               </listitem>
            </itemizedlist>
        </listitem>  
      </itemizedlist>
   </section>
   <section>
      <title>Details of Usage</title>
      <para>As it was mentioned <link linkend="toggleControl">above</link>, the <property>control</property> could be in any place in 
    layout and linked to a switching panel that is managed with <emphasis>
            <property>"for"</property>
         </emphasis> attribute (in the <emphasis>
            <property>"for"</property>
         </emphasis> attribute the full component <emphasis>
            <property>"id"</property>
         </emphasis> is specified according to naming
 containers).</para>
      <para>The <property>togglePanel</property> could be also switched from the side of the control instead of being strictly defined 
in <emphasis>
            <property>"switchOrder"</property>
         </emphasis> attribute of <emphasis role="bold">
            <property>&lt;rich:togglePanel&gt;</property>.</emphasis>
      </para>
      <para>
         <emphasis role="bold">Example:</emphasis>
      </para>
      <programlisting role="XML"><![CDATA[...
<rich:togglePanel id="panel" initialState="empty" switchType="client">
		<f:facet name="first">
       			<h:panelGroup>
               		<rich:toggleControl for="helloForm:panel" value="Empty" switchToState="empty"/>
                		<rich:toggleControl for="helloForm:panel" value=" Second" switchToState="second"/>
                		<!--Some content-->
            	</h:panelGroup>
   		</f:facet>
		<f:facet name="second">
       			<h:panelGroup>
       					<rich:toggleControl for="helloForm:panel" value="Empty" switchToState="empty"/>
                		<rich:toggleControl for="helloForm:panel" value=" first" switchToState="first"/>
                		<!--Some content-->
            	</h:panelGroup>
		</f:facet>
       	<f:facet name="empty">
      			<h:panelGroup>
               		<rich:toggleControl for="helloForm:panel" value="first" switchToState="first"/>
                		<rich:toggleControl for="helloForm:panel" value=" second" switchToState="second"/>
            	</h:panelGroup>
		</f:facet>
</rich:togglePanel>
...
]]></programlisting>
      <para>In this example the switching is performed on facets specified in the <emphasis>
            <property>"switchToState"</property>
         </emphasis> attribute.</para>
      <para>
      Information about the <emphasis>
            <property>"process"</property>
         </emphasis> attribute usage you can find <link linkend="process">" Decide what to process " </link> guide section.
    </para>
  </section>
   <section>
      <title>Reference Data</title>
      <para>
         <ulink url="&tlddoc;rich/toggleControl.html">Table of 
							&lt;rich:toggleControl&gt; 
							 attributes</ulink>.
						</para>
      <table>
	        <title>Component Identification Parameters</title>
         <tgroup cols="2">
	           <thead>
               <row>
                  <entry>Name</entry>
                  <entry>Value</entry>
               </row>
            </thead>
            <tbody>
               <row>
                  <entry>component-type</entry>
                  <entry>org.richfaces.ToggleControl</entry>
               </row>
               <row>
                  <entry>component-class</entry>
                  <entry>org.richfaces.component.html.HtmlToggleControl</entry>
               </row>
               <row>
                  <entry>component-family</entry>
                  <entry>org.richfaces.ToggleControl</entry>
               </row>
               <row>
                  <entry>renderer-type</entry>
                  <entry>org.richfaces.ToggleControlRenderer</entry>
		             </row>
		             <row>
			               <entry>tag-class</entry>
                  <entry>org.richfaces.taglib.ToggleControlTag</entry>
               </row>
            </tbody>
         </tgroup>
      </table>
      <table id="tab_tC">
         <title>Classes names that define a component appearance</title>
         <tgroup cols="2">
            <thead>
               <row>
                  <entry>Class name</entry>
                  <entry>Description</entry>
               </row>
            </thead>
            <tbody>
               <row>
                  <entry>rich-tglctrl</entry>
                  <entry>Defines styles for a toggle control</entry>
               </row>
          
            </tbody>
         </tgroup>
      </table>
							You can find all necessary information about style classes redefinition in 
						<link linkend="customstyles">Definition of Custom Style Classes</link> 
							section.
						</section>
</section>
