<?xml version="1.0" encoding="UTF-8"?>
<section id="usedComponents" xreflabel="usedComponents">
<?dbhtml filename="usedComponents.html"?>
	<title>Used Components</title>
	<para>
		Have a look  at the list of components used in	the <property>Photo Album</property> application.
	</para>
	<table>
		<title>Components used in &quot;Photo Album Demo&quot;</title>
                  <tgroup cols="2">
                        <thead>
                              <row>
                                    <entry>Name</entry>
                                    <entry>Value</entry>
                              </row>
                        </thead>
                        <tbody>
                              <row>
                                    <entry>&lt;a4j:commandLink&gt;</entry>
                                    <entry>The component is very similar to the &lt;h:commandLink&gt; component, the only difference is that an Ajax form submit is generated on a click and it allows dynamic rerendering after a response comes back. It's not necessary to plug any support into the component, as Ajax support is already built in.</entry>
                              </row>
                              <row>
                                    <entry>&lt;a4j:commandButton&gt;</entry>
                                    <entry>The component is very similar to the &lt;h:commandButton&gt; component, the only difference is that an Ajax form submit is generated on a click and it allows dynamic rerendering after a response comes back. It's not necessary to plug any support into the component, as Ajax support is already built in.</entry>
                              </row>
                              <!-- row>
                                    <entry>a4j:push</entry>
                                    <entry>The component periodically perform Ajax request to the server, to simulate 'push' data.</entry>
                              </row-->
                              <row>
                                    <entry>&lt;a4j:poll&gt;</entry>
                                    <entry>The component allows periodical sending of Ajax requests to the server and is used for a page update according to a specified time interval.</entry>
                              </row>
                              <row>
                                    <entry>&lt;rich:calendar&gt;</entry>
                                    <entry>The component is used for creating monthly calendar elements on a page.</entry>
                              </row>
                              <row>
                                    <entry>&lt;rich:contextMenu&gt;</entry>
                                    <entry>The component is used for creation of multileveled context menus that are activated after a user defines an event ("onmouseover", "onclick", etc.) on any element on the page.</entry>
                              </row>
                              <row>
                                    <entry>&lt;rich:dataGrid&gt;</entry>
                                    <entry>The component to render data as a grid that allows choosing data from a model and obtains built-in support of Ajax updates.</entry>
                              </row>
                              <row>
                                    <entry>&lt;rich:datascroller&gt;</entry>
                                    <entry>The component is designed for providing the functionality of tables scrolling using Ajax requests.</entry>
                              </row>
                              <row>
                                    <entry>&lt;rich:fileUpload&gt;</entry>
                                    <entry>The component is designed to perform Ajax-ed files upload to the server.</entry>
                              </row>
                              <row>
                                    <entry>&lt;rich:inplaceInput&gt;</entry>
                                    <entry>The component is an input component used for displaying and editing data inputted. </entry>
                              </row>
                              <row>
                                    <entry>&lt;rich:inplaceSelect&gt;</entry>
                                    <entry>The component is used to create  select based inputs: it shows the value as text in one state and enables editing the value, providing a list of options in another state.</entry>
                              </row>
                              <row>
                                    <entry>&lt;rich:mediaOutput&gt;</entry>
                                    <entry>The component implements one of the basic features specified in the framework. The component is a facility for generating images, video, sounds and other binary resources defined by you on-the-fly.</entry>
                              </row>
                              <row>
                                    <entry>&lt;rich:modalPanel&gt;</entry>
                                    <entry>The component implements a modal dialog window. All operations in the main application window are locked out while this window is active. Opening and closing the window is done with client JavaScript code.</entry>
                              </row>
                              <row>
                                    <entry>&lt;rich:progressBar&gt;</entry>
                                    <entry>The component is designed for displaying a progress bar which shows the current status of the process. </entry>
                              </row>
                              <row>
                                    <entry>&lt;rich:tree&gt;</entry>
                                    <entry>The component is designed for hierarchical data presentation and is applied for building a tree structure with a drag-and-drop capability. The component also uses built-in drag and drop.</entry>
                              </row>
                              
                              
                        </tbody>
                  </tgroup>
            </table>
</section>
