[richfaces-svn-commits] JBoss Rich Faces SVN: r2108 - in trunk: test-applications and 120 other directories.

richfaces-svn-commits at lists.jboss.org richfaces-svn-commits at lists.jboss.org
Tue Aug 7 12:26:09 EDT 2007


Author: nbelaevski
Date: 2007-08-07 12:26:09 -0400 (Tue, 07 Aug 2007)
New Revision: 2108

Added:
   trunk/test-applications/
   trunk/test-applications/facelets/
   trunk/test-applications/facelets/pom.xml
   trunk/test-applications/facelets/src/
   trunk/test-applications/facelets/src/main/
   trunk/test-applications/facelets/src/main/java/
   trunk/test-applications/facelets/src/main/java/calendar/
   trunk/test-applications/facelets/src/main/java/calendar/CalendarBean.java
   trunk/test-applications/facelets/src/main/java/calendar/CalendarDataModelImpl.java
   trunk/test-applications/facelets/src/main/java/calendar/CalendarDataModelItemImpl.java
   trunk/test-applications/facelets/src/main/java/calendar/CalendarValidator.java
   trunk/test-applications/facelets/src/main/java/dataScroller/
   trunk/test-applications/facelets/src/main/java/dataScroller/Data.java
   trunk/test-applications/facelets/src/main/java/dataScroller/DataScroller.java
   trunk/test-applications/facelets/src/main/java/ddMenu/
   trunk/test-applications/facelets/src/main/java/ddMenu/DDMenu.java
   trunk/test-applications/facelets/src/main/java/dfs/
   trunk/test-applications/facelets/src/main/java/dfs/DataFilterSliderDao.java
   trunk/test-applications/facelets/src/main/java/dfs/DataFilterSliderDaoImpl.java
   trunk/test-applications/facelets/src/main/java/dfs/DemoInventoryItem.java
   trunk/test-applications/facelets/src/main/java/dfs/DemoInventoryList.java
   trunk/test-applications/facelets/src/main/java/dfs/DemoSliderBean.java
   trunk/test-applications/facelets/src/main/java/dnd/
   trunk/test-applications/facelets/src/main/java/dnd/DndBean.java
   trunk/test-applications/facelets/src/main/java/gmap/
   trunk/test-applications/facelets/src/main/java/gmap/Gmap.java
   trunk/test-applications/facelets/src/main/java/inputNumberSlider/
   trunk/test-applications/facelets/src/main/java/inputNumberSlider/InputNumberSlider.java
   trunk/test-applications/facelets/src/main/java/inputNumberSpinner/
   trunk/test-applications/facelets/src/main/java/inputNumberSpinner/InputNumberSpinner.java
   trunk/test-applications/facelets/src/main/java/modalPanel/
   trunk/test-applications/facelets/src/main/java/modalPanel/ModalPanel.java
   trunk/test-applications/facelets/src/main/java/paint2D/
   trunk/test-applications/facelets/src/main/java/paint2D/Paint2D.java
   trunk/test-applications/facelets/src/main/java/paint2D/PaintData.java
   trunk/test-applications/facelets/src/main/java/panel/
   trunk/test-applications/facelets/src/main/java/panel/Panel.java
   trunk/test-applications/facelets/src/main/java/panelBar/
   trunk/test-applications/facelets/src/main/java/panelBar/PanelBar.java
   trunk/test-applications/facelets/src/main/java/panelMenu/
   trunk/test-applications/facelets/src/main/java/panelMenu/PanelMenu.java
   trunk/test-applications/facelets/src/main/java/resources.properties
   trunk/test-applications/facelets/src/main/java/sTP/
   trunk/test-applications/facelets/src/main/java/sTP/SimpleTogglePanel.java
   trunk/test-applications/facelets/src/main/java/sb/
   trunk/test-applications/facelets/src/main/java/sb/Data.java
   trunk/test-applications/facelets/src/main/java/sb/Sb.java
   trunk/test-applications/facelets/src/main/java/separator/
   trunk/test-applications/facelets/src/main/java/separator/Separator.java
   trunk/test-applications/facelets/src/main/java/skins/
   trunk/test-applications/facelets/src/main/java/skins/Skins.java
   trunk/test-applications/facelets/src/main/java/spacer/
   trunk/test-applications/facelets/src/main/java/spacer/Spacer.java
   trunk/test-applications/facelets/src/main/java/style/
   trunk/test-applications/facelets/src/main/java/style/icon/
   trunk/test-applications/facelets/src/main/java/style/icon/Icon.java
   trunk/test-applications/facelets/src/main/java/tabPanel/
   trunk/test-applications/facelets/src/main/java/tabPanel/TabPanel.java
   trunk/test-applications/facelets/src/main/java/togglePanel/
   trunk/test-applications/facelets/src/main/java/togglePanel/TogglePanel.java
   trunk/test-applications/facelets/src/main/java/toolBar/
   trunk/test-applications/facelets/src/main/java/toolBar/ToolBar.java
   trunk/test-applications/facelets/src/main/java/tooltip/
   trunk/test-applications/facelets/src/main/java/tooltip/Tooltip.java
   trunk/test-applications/facelets/src/main/java/tree/
   trunk/test-applications/facelets/src/main/java/tree/Bean.java
   trunk/test-applications/facelets/src/main/java/tree/Library.java
   trunk/test-applications/facelets/src/main/java/tree/Organism.java
   trunk/test-applications/facelets/src/main/java/tree/Pathway.java
   trunk/test-applications/facelets/src/main/java/tree/TreeBean.java
   trunk/test-applications/facelets/src/main/java/tree/pom_sample.xml
   trunk/test-applications/facelets/src/main/java/tree/test.xml
   trunk/test-applications/facelets/src/main/resources/
   trunk/test-applications/facelets/src/main/resources/tree/
   trunk/test-applications/facelets/src/main/resources/tree/pom_sample.xml
   trunk/test-applications/facelets/src/main/resources/tree/test.xml
   trunk/test-applications/facelets/src/main/webapp/
   trunk/test-applications/facelets/src/main/webapp/Calendar/
   trunk/test-applications/facelets/src/main/webapp/Calendar/Calendar.xhtml
   trunk/test-applications/facelets/src/main/webapp/DataFilterSlider/
   trunk/test-applications/facelets/src/main/webapp/DataFilterSlider/DataFilterSlider.xhtml
   trunk/test-applications/facelets/src/main/webapp/DataScroller/
   trunk/test-applications/facelets/src/main/webapp/DataScroller/DS.xhtml
   trunk/test-applications/facelets/src/main/webapp/DradAndDrop/
   trunk/test-applications/facelets/src/main/webapp/DradAndDrop/DragAndDrop.xhtml
   trunk/test-applications/facelets/src/main/webapp/DropDownMenu/
   trunk/test-applications/facelets/src/main/webapp/DropDownMenu/DDMenu.xhtml
   trunk/test-applications/facelets/src/main/webapp/Gmap/
   trunk/test-applications/facelets/src/main/webapp/Gmap/Gmap.xhtml
   trunk/test-applications/facelets/src/main/webapp/META-INF/
   trunk/test-applications/facelets/src/main/webapp/META-INF/MANIFEST.MF
   trunk/test-applications/facelets/src/main/webapp/ModalPanel/
   trunk/test-applications/facelets/src/main/webapp/ModalPanel/ModalPanel.xhtml
   trunk/test-applications/facelets/src/main/webapp/Paint2D/
   trunk/test-applications/facelets/src/main/webapp/Paint2D/Paint2D.xhtml
   trunk/test-applications/facelets/src/main/webapp/Panel/
   trunk/test-applications/facelets/src/main/webapp/Panel/Panel.xhtml
   trunk/test-applications/facelets/src/main/webapp/Panel/panel2.xhtml
   trunk/test-applications/facelets/src/main/webapp/PanelBar/
   trunk/test-applications/facelets/src/main/webapp/PanelBar/PanelBar.xhtml
   trunk/test-applications/facelets/src/main/webapp/PanelMenu/
   trunk/test-applications/facelets/src/main/webapp/PanelMenu/PanelMenu.xhtml
   trunk/test-applications/facelets/src/main/webapp/Separator/
   trunk/test-applications/facelets/src/main/webapp/Separator/Separator.xhtml
   trunk/test-applications/facelets/src/main/webapp/SimpleTogglePanel/
   trunk/test-applications/facelets/src/main/webapp/SimpleTogglePanel/SimpleTogglePanel.xhtml
   trunk/test-applications/facelets/src/main/webapp/Spacer/
   trunk/test-applications/facelets/src/main/webapp/Spacer/Spacer.xhtml
   trunk/test-applications/facelets/src/main/webapp/SuggestionBox/
   trunk/test-applications/facelets/src/main/webapp/SuggestionBox/SuggestionBox.xhtml
   trunk/test-applications/facelets/src/main/webapp/TabPanel/
   trunk/test-applications/facelets/src/main/webapp/TabPanel/TabPanel.xhtml
   trunk/test-applications/facelets/src/main/webapp/TogglePanel/
   trunk/test-applications/facelets/src/main/webapp/TogglePanel/TogglePanel.xhtml
   trunk/test-applications/facelets/src/main/webapp/ToolBar/
   trunk/test-applications/facelets/src/main/webapp/ToolBar/ToolBar.xhtml
   trunk/test-applications/facelets/src/main/webapp/Tooltip/
   trunk/test-applications/facelets/src/main/webapp/Tooltip/Tooltip.xhtml
   trunk/test-applications/facelets/src/main/webapp/Tree/
   trunk/test-applications/facelets/src/main/webapp/Tree/Tree.xhtml
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/.cvsignore
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Calendar.xml
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DDMenu.xml
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DataFilterSlider.xml
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DataFilterSlider.xml.l4t
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DataScroller.xml
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DataScroller.xml.l4t
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DradAbdDrop.xml
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DradAbdDrop.xml.l4t
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Gmap.xml
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Gmap.xml.l4t
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Icon.xml
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-InputNumberSlider.xml
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-InputNumberSpinner.xml
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-ModalPanel.xml
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Paint2D.xml
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Panel.xml
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-PanelBar.xml
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-PanelMenu.xml
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Separator.xml
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Separator.xml.l4t
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Skin.xml
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Spacer.xml
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Spacer.xml.l4t
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-SuggestionBox.xml
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-SuggestionBox.xml.l4t
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-TabPanel.xml
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-TogglePanel.xml
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-ToolBar.xml
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-ToolBar.xml.l4t
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Tree.xml
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-tooltip.xml
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config.xml
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config.xml.l4t
   trunk/test-applications/facelets/src/main/webapp/WEB-INF/web.xml
   trunk/test-applications/facelets/src/main/webapp/index.jsp
   trunk/test-applications/facelets/src/main/webapp/inputNumberSlider/
   trunk/test-applications/facelets/src/main/webapp/inputNumberSlider/inputNumberSlider.xhtml
   trunk/test-applications/facelets/src/main/webapp/inputNumberSpinner/
   trunk/test-applications/facelets/src/main/webapp/inputNumberSpinner/inputNumberSpinner.xhtml
   trunk/test-applications/facelets/src/main/webapp/pages/
   trunk/test-applications/facelets/src/main/webapp/pages/main.xhtml
   trunk/test-applications/facelets/src/main/webapp/pics/
   trunk/test-applications/facelets/src/main/webapp/pics/458_1_big.gif
   trunk/test-applications/facelets/src/main/webapp/pics/458_2_big.jpg
   trunk/test-applications/facelets/src/main/webapp/pics/ajax_process.gif
   trunk/test-applications/facelets/src/main/webapp/pics/ajax_stoped.gif
   trunk/test-applications/facelets/src/main/webapp/pics/asus.jpg
   trunk/test-applications/facelets/src/main/webapp/pics/benq.jpg
   trunk/test-applications/facelets/src/main/webapp/pics/collapse.gif
   trunk/test-applications/facelets/src/main/webapp/pics/error.gif
   trunk/test-applications/facelets/src/main/webapp/pics/expand.gif
   trunk/test-applications/facelets/src/main/webapp/pics/fatal.gif
   trunk/test-applications/facelets/src/main/webapp/pics/file-manager-reject.png
   trunk/test-applications/facelets/src/main/webapp/pics/file-manager.png
   trunk/test-applications/facelets/src/main/webapp/pics/header.png
   trunk/test-applications/facelets/src/main/webapp/pics/info.gif
   trunk/test-applications/facelets/src/main/webapp/pics/item.png
   trunk/test-applications/facelets/src/main/webapp/pics/masshtaby_01.jpg
   trunk/test-applications/facelets/src/main/webapp/pics/passed.gif
   trunk/test-applications/facelets/src/main/webapp/pics/podb109_61.jpg
   trunk/test-applications/facelets/src/main/webapp/pics/toshiba.jpg
   trunk/test-applications/facelets/src/main/webapp/pics/warn.gif
   trunk/test-applications/facelets/src/main/webapp/styles/
   trunk/test-applications/facelets/src/main/webapp/styles/app.css
   trunk/test-applications/facelets/src/main/webapp/styles/styles.css
   trunk/test-applications/jsp/
   trunk/test-applications/jsp/pom.xml
   trunk/test-applications/jsp/src/
   trunk/test-applications/jsp/src/main/
   trunk/test-applications/jsp/src/main/java/
   trunk/test-applications/jsp/src/main/java/calendar/
   trunk/test-applications/jsp/src/main/java/calendar/CalendarBean.java
   trunk/test-applications/jsp/src/main/java/calendar/CalendarDataModelImpl.java
   trunk/test-applications/jsp/src/main/java/calendar/CalendarDataModelItemImpl.java
   trunk/test-applications/jsp/src/main/java/calendar/CalendarValidator.java
   trunk/test-applications/jsp/src/main/java/dataScroller/
   trunk/test-applications/jsp/src/main/java/dataScroller/Data.java
   trunk/test-applications/jsp/src/main/java/dataScroller/DataScroller.java
   trunk/test-applications/jsp/src/main/java/dataTable/
   trunk/test-applications/jsp/src/main/java/dataTable/DataTable.java
   trunk/test-applications/jsp/src/main/java/ddMenu/
   trunk/test-applications/jsp/src/main/java/ddMenu/DDMenu.java
   trunk/test-applications/jsp/src/main/java/dfs/
   trunk/test-applications/jsp/src/main/java/dfs/DataFilterSliderDao.java
   trunk/test-applications/jsp/src/main/java/dfs/DataFilterSliderDaoImpl.java
   trunk/test-applications/jsp/src/main/java/dfs/DemoInventoryItem.java
   trunk/test-applications/jsp/src/main/java/dfs/DemoInventoryList.java
   trunk/test-applications/jsp/src/main/java/dfs/DemoSliderBean.java
   trunk/test-applications/jsp/src/main/java/dnd/
   trunk/test-applications/jsp/src/main/java/dnd/DndBean.java
   trunk/test-applications/jsp/src/main/java/gmap/
   trunk/test-applications/jsp/src/main/java/gmap/Gmap.java
   trunk/test-applications/jsp/src/main/java/inputNumberSlider/
   trunk/test-applications/jsp/src/main/java/inputNumberSlider/InputNumberSlider.java
   trunk/test-applications/jsp/src/main/java/inputNumberSpinner/
   trunk/test-applications/jsp/src/main/java/inputNumberSpinner/InputNumberSpinner.java
   trunk/test-applications/jsp/src/main/java/modalPanel/
   trunk/test-applications/jsp/src/main/java/modalPanel/ModalPanel.java
   trunk/test-applications/jsp/src/main/java/paint2D/
   trunk/test-applications/jsp/src/main/java/paint2D/Paint2D.java
   trunk/test-applications/jsp/src/main/java/paint2D/PaintData.java
   trunk/test-applications/jsp/src/main/java/panel/
   trunk/test-applications/jsp/src/main/java/panel/Panel.java
   trunk/test-applications/jsp/src/main/java/panelBar/
   trunk/test-applications/jsp/src/main/java/panelBar/PanelBar.java
   trunk/test-applications/jsp/src/main/java/panelMenu/
   trunk/test-applications/jsp/src/main/java/panelMenu/PanelMenu.java
   trunk/test-applications/jsp/src/main/java/sTP/
   trunk/test-applications/jsp/src/main/java/sTP/SimpleTogglePanel.java
   trunk/test-applications/jsp/src/main/java/sb/
   trunk/test-applications/jsp/src/main/java/sb/Data.java
   trunk/test-applications/jsp/src/main/java/sb/Sb.java
   trunk/test-applications/jsp/src/main/java/separator/
   trunk/test-applications/jsp/src/main/java/separator/Separator.java
   trunk/test-applications/jsp/src/main/java/skins/
   trunk/test-applications/jsp/src/main/java/skins/Skins.java
   trunk/test-applications/jsp/src/main/java/spacer/
   trunk/test-applications/jsp/src/main/java/spacer/Spacer.java
   trunk/test-applications/jsp/src/main/java/style/
   trunk/test-applications/jsp/src/main/java/style/icon/
   trunk/test-applications/jsp/src/main/java/style/icon/Icon.java
   trunk/test-applications/jsp/src/main/java/tabPanel/
   trunk/test-applications/jsp/src/main/java/tabPanel/TabPanel.java
   trunk/test-applications/jsp/src/main/java/togglePanel/
   trunk/test-applications/jsp/src/main/java/togglePanel/TogglePanel.java
   trunk/test-applications/jsp/src/main/java/toolBar/
   trunk/test-applications/jsp/src/main/java/toolBar/ToolBar.java
   trunk/test-applications/jsp/src/main/java/tooltip/
   trunk/test-applications/jsp/src/main/java/tooltip/Tooltip.java
   trunk/test-applications/jsp/src/main/java/tree/
   trunk/test-applications/jsp/src/main/java/tree/Bean.java
   trunk/test-applications/jsp/src/main/java/tree/CachingTreeDataLocator.java
   trunk/test-applications/jsp/src/main/java/tree/Library.java
   trunk/test-applications/jsp/src/main/java/tree/Organism.java
   trunk/test-applications/jsp/src/main/java/tree/Pathway.java
   trunk/test-applications/jsp/src/main/java/tree/TreeBean.java
   trunk/test-applications/jsp/src/main/java/tree/pom_sample.xml
   trunk/test-applications/jsp/src/main/java/tree/test.xml
   trunk/test-applications/jsp/src/main/resources/
   trunk/test-applications/jsp/src/main/resources/tree/
   trunk/test-applications/jsp/src/main/resources/tree/pom_sample.xml
   trunk/test-applications/jsp/src/main/resources/tree/test.xml
   trunk/test-applications/jsp/src/main/webapp/
   trunk/test-applications/jsp/src/main/webapp/Calendar/
   trunk/test-applications/jsp/src/main/webapp/Calendar/Calendar.jsp
   trunk/test-applications/jsp/src/main/webapp/DataFilterSlider/
   trunk/test-applications/jsp/src/main/webapp/DataFilterSlider/DFS.jsp
   trunk/test-applications/jsp/src/main/webapp/DataScroller/
   trunk/test-applications/jsp/src/main/webapp/DataScroller/DS.jsp
   trunk/test-applications/jsp/src/main/webapp/DataTable/
   trunk/test-applications/jsp/src/main/webapp/DataTable/DT.jsp
   trunk/test-applications/jsp/src/main/webapp/DragAndDrop/
   trunk/test-applications/jsp/src/main/webapp/DragAndDrop/DnD.jsp
   trunk/test-applications/jsp/src/main/webapp/DragAndDrop/DragAndDrop.jsp
   trunk/test-applications/jsp/src/main/webapp/DropDownMenu/
   trunk/test-applications/jsp/src/main/webapp/DropDownMenu/DDMenu.jsp
   trunk/test-applications/jsp/src/main/webapp/Gmap/
   trunk/test-applications/jsp/src/main/webapp/Gmap/Gmap.jsp
   trunk/test-applications/jsp/src/main/webapp/InputNumberSlider/
   trunk/test-applications/jsp/src/main/webapp/InputNumberSlider/InputNumberSlider.jsp
   trunk/test-applications/jsp/src/main/webapp/InputNumberSpinner/
   trunk/test-applications/jsp/src/main/webapp/InputNumberSpinner/InputNumberSpinner.jsp
   trunk/test-applications/jsp/src/main/webapp/META-INF/
   trunk/test-applications/jsp/src/main/webapp/META-INF/MANIFEST.MF
   trunk/test-applications/jsp/src/main/webapp/ModalPanel/
   trunk/test-applications/jsp/src/main/webapp/ModalPanel/ModalPanel.jsp
   trunk/test-applications/jsp/src/main/webapp/Paint2D/
   trunk/test-applications/jsp/src/main/webapp/Paint2D/Paint2D.jsp
   trunk/test-applications/jsp/src/main/webapp/Panel/
   trunk/test-applications/jsp/src/main/webapp/Panel/Panel.jsp
   trunk/test-applications/jsp/src/main/webapp/Panel/Panel2.jsp
   trunk/test-applications/jsp/src/main/webapp/PanelBar/
   trunk/test-applications/jsp/src/main/webapp/PanelBar/PanelBar.jsp
   trunk/test-applications/jsp/src/main/webapp/PanelMenu/
   trunk/test-applications/jsp/src/main/webapp/PanelMenu/PanelMenu.jsp
   trunk/test-applications/jsp/src/main/webapp/Sb.jsp
   trunk/test-applications/jsp/src/main/webapp/Sb.xhtml
   trunk/test-applications/jsp/src/main/webapp/Separator/
   trunk/test-applications/jsp/src/main/webapp/Separator/Separator.jsp
   trunk/test-applications/jsp/src/main/webapp/SimpleTogglePanel/
   trunk/test-applications/jsp/src/main/webapp/SimpleTogglePanel/SimpleTogglePanel.jsp
   trunk/test-applications/jsp/src/main/webapp/Spacer/
   trunk/test-applications/jsp/src/main/webapp/Spacer/Spacer.jsp
   trunk/test-applications/jsp/src/main/webapp/SuggestionBox/
   trunk/test-applications/jsp/src/main/webapp/SuggestionBox/SuggestionBox.jsp
   trunk/test-applications/jsp/src/main/webapp/TabPanel/
   trunk/test-applications/jsp/src/main/webapp/TabPanel/TabPanel.jsp
   trunk/test-applications/jsp/src/main/webapp/TogglePanel/
   trunk/test-applications/jsp/src/main/webapp/TogglePanel/TogglePanel.jsp
   trunk/test-applications/jsp/src/main/webapp/ToolBar/
   trunk/test-applications/jsp/src/main/webapp/ToolBar/ToolBar.jsp
   trunk/test-applications/jsp/src/main/webapp/Tooltip/
   trunk/test-applications/jsp/src/main/webapp/Tooltip/Tooltip.jsp
   trunk/test-applications/jsp/src/main/webapp/Tree/
   trunk/test-applications/jsp/src/main/webapp/Tree/Tree.jsp
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/.cvsignore
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Calendar.xml
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DDMenu.xml
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DDMenu.xml.l4t
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DataFilterSlider.xml
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DataFilterSlider.xml.l4t
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DataScroller.xml
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DataScroller.xml.l4t
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DataTable.xml
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DataTable.xml.l4t
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DragAndDrop.xml
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DragAndDrop.xml.l4t
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Gmap.xml
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Gmap.xml.l4t
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Icon.xml
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-InputNumberSlider.xml
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-InputNumberSpinner.xml
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-ModalPanel.xml
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-ModalPanel.xml.l4t
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Paint2D.xml
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Panel.xml
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-PanelBar.xml
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-PanelMenu.xml
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Separator.xml
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-SimpleTogglePanel.xml
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Skin.xml
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Spacer.xml
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-SuggestionBox.xml
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-SuggestionBox.xml.l4t
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-TabPanel.xml
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-TogglePanel.xml
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-ToolBar.xml
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-ToolBar.xml.l4t
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Tree.xml
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-tooltip.xml
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config.xml
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config.xml.l4t
   trunk/test-applications/jsp/src/main/webapp/WEB-INF/web.xml
   trunk/test-applications/jsp/src/main/webapp/index.jsp
   trunk/test-applications/jsp/src/main/webapp/pages/
   trunk/test-applications/jsp/src/main/webapp/pages/main.jsp
   trunk/test-applications/jsp/src/main/webapp/pics/
   trunk/test-applications/jsp/src/main/webapp/pics/458_1_big.gif
   trunk/test-applications/jsp/src/main/webapp/pics/458_2_big.jpg
   trunk/test-applications/jsp/src/main/webapp/pics/ajax_process.gif
   trunk/test-applications/jsp/src/main/webapp/pics/ajax_stoped.gif
   trunk/test-applications/jsp/src/main/webapp/pics/asus.jpg
   trunk/test-applications/jsp/src/main/webapp/pics/benq.jpg
   trunk/test-applications/jsp/src/main/webapp/pics/collapse.gif
   trunk/test-applications/jsp/src/main/webapp/pics/error.gif
   trunk/test-applications/jsp/src/main/webapp/pics/expand.gif
   trunk/test-applications/jsp/src/main/webapp/pics/fatal.gif
   trunk/test-applications/jsp/src/main/webapp/pics/file-manager-reject.png
   trunk/test-applications/jsp/src/main/webapp/pics/file-manager.png
   trunk/test-applications/jsp/src/main/webapp/pics/header.png
   trunk/test-applications/jsp/src/main/webapp/pics/info.gif
   trunk/test-applications/jsp/src/main/webapp/pics/item.png
   trunk/test-applications/jsp/src/main/webapp/pics/masshtaby_01.jpg
   trunk/test-applications/jsp/src/main/webapp/pics/passed.gif
   trunk/test-applications/jsp/src/main/webapp/pics/podb109_61.jpg
   trunk/test-applications/jsp/src/main/webapp/pics/toshiba.jpg
   trunk/test-applications/jsp/src/main/webapp/pics/warn.gif
   trunk/test-applications/jsp/src/main/webapp/styles/
   trunk/test-applications/jsp/src/main/webapp/styles/styles.css
   trunk/test-applications/pom.xml
Log:
test-applications initial import

Added: trunk/test-applications/facelets/pom.xml
===================================================================
--- trunk/test-applications/facelets/pom.xml	                        (rev 0)
+++ trunk/test-applications/facelets/pom.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,17 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <parent>
+    <artifactId>test-applications</artifactId>
+    <groupId>org.richfaces</groupId>
+    <version>3.1.0-SNAPSHOT</version>
+  </parent>
+
+	<modelVersion>4.0.0</modelVersion>
+	<groupId>org.richfaces.test-applications</groupId>
+	<artifactId>facelets</artifactId>
+	<packaging>war</packaging>
+	<name>RichFaces Test Application (Facelets)</name>
+	<build>
+		<finalName>richfaces-test-facelets</finalName>
+	</build>
+
+</project>
\ No newline at end of file

Added: trunk/test-applications/facelets/src/main/java/calendar/CalendarBean.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/calendar/CalendarBean.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/calendar/CalendarBean.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,154 @@
+/**
+ * License Agreement.
+ *
+ * Ajax4jsf 1.1 - Natural Ajax for Java Server Faces (JSF)
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+package calendar;
+
+import java.text.DateFormat;
+import java.util.Date;
+import java.util.Locale;
+
+import javax.faces.event.ValueChangeEvent;
+
+/**
+ * 20/07/2007
+ * @author Alexej Kushunin 
+ * @mailto: akushunin at exadel.com 
+ *
+ */
+public class CalendarBean {
+	
+	private static final String[] WEEK_DAY_LABELS = new String[] {"Sun *", "Mon +", "Tue +", "Wed +", "Thu +", "Fri +", "Sat *"};
+	private Locale locale;
+	
+	private boolean popup;
+	private String pattern;
+	private Date currentDate;
+	private Date selectedDate;
+	private String jointPoint;
+	private String direction;
+	
+	private boolean useCustomDayLabels;
+	
+	public Locale getLocale() {
+		return locale;
+	}
+
+	public void setLocale(Locale locale) {
+		this.locale = locale;
+	}
+
+	
+	public boolean isPopup() {
+		return popup;
+	}
+
+	public void setPopup(boolean popup) {
+		this.popup = popup;
+	}
+	
+
+	public String getPattern() {
+		return pattern;
+	}
+
+	public void setPattern(String pattern) {
+		this.pattern = pattern;
+	}
+
+	public CalendarBean() {
+		
+		locale = Locale.US;
+		popup = true;
+		pattern = "MMM d, yyyy";
+		jointPoint = "bottom-left";
+		direction = "bottom-right";
+	}
+	
+	public void selectLocale(ValueChangeEvent event){
+		
+		String tLocale = (String) event.getNewValue();
+		if (tLocale != null) {
+			String lang = tLocale.substring(0,2);
+			String country = tLocale.substring(3);
+			locale = new Locale(lang,country,"");
+		}
+	}
+
+	public boolean isUseCustomDayLabels() {
+		return useCustomDayLabels;
+	}
+
+	public void setUseCustomDayLabels(boolean useCustomDayLabels) {
+		this.useCustomDayLabels = useCustomDayLabels;
+	}
+	
+	public Object getWeekDayLabelsShort() {
+		if (isUseCustomDayLabels()) {
+			return WEEK_DAY_LABELS;
+		} else {
+			return null;
+		}
+	}
+
+	public String getCurrentDateAsText() {
+		Date currentDate = getCurrentDate();
+		if (currentDate != null) {
+			return DateFormat.getDateInstance(DateFormat.FULL).format(currentDate);
+		}
+		
+		return null;
+	}
+
+	public Date getCurrentDate() {
+		return currentDate;
+	}
+
+	public void setCurrentDate(Date currentDate) {
+		this.currentDate = currentDate;
+	}
+
+	public Date getSelectedDate() {
+		return selectedDate;
+	}
+
+	public void setSelectedDate(Date selectedDate) {
+		this.selectedDate = selectedDate;
+	}
+	
+	public String getJointPoint() {
+		return jointPoint;
+	}
+	public void setJointPoint(String jointPoint) {
+		this.jointPoint = jointPoint;
+	}
+	public void selectJointPoint(ValueChangeEvent event){
+		jointPoint = (String) event.getNewValue();
+	}
+	public String getDirection() {
+		return direction;
+	}
+	public void setDirection(String direction) {
+		this.direction = direction;
+	}
+	public void selectDirection(ValueChangeEvent event){
+		direction = (String) event.getNewValue();
+	}
+}
\ No newline at end of file

Added: trunk/test-applications/facelets/src/main/java/calendar/CalendarDataModelImpl.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/calendar/CalendarDataModelImpl.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/calendar/CalendarDataModelImpl.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,80 @@
+/**
+ * License Agreement.
+ *
+ * Ajax4jsf 1.1 - Natural Ajax for Java Server Faces (JSF)
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+package calendar;
+
+import java.text.DateFormat;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.Locale;
+import java.util.Map;
+
+import org.richfaces.model.CalendarDataModel;
+import org.richfaces.model.CalendarDataModelItem;
+
+/**
+ * @author Nick Belaevski - mailto:nbelaevski at exadel.com
+ * created 30.06.2007
+ *
+ */
+public class CalendarDataModelImpl implements CalendarDataModel {
+
+	/* (non-Javadoc)
+	 * @see org.richfaces.component.CalendarDataModel#getData(java.util.Date[])
+	 */
+	public CalendarDataModelItem[] getData(Date[] dateArray) {
+		if (dateArray == null) {
+			return null;
+		}
+		
+		CalendarDataModelItem[] items = new CalendarDataModelItem[dateArray.length];
+		for (int i = 0; i < dateArray.length; i++) {
+			items[i] = createDataModelItem(dateArray[i]);
+		}
+
+		return items;
+	}
+
+	protected CalendarDataModelItem createDataModelItem(Date date) {
+		CalendarDataModelItemImpl item = new CalendarDataModelItemImpl();
+		item.setDate(date);
+		Map data = new HashMap();
+		DateFormat enFormatter = DateFormat.getDateInstance(DateFormat.MEDIUM, Locale.ENGLISH);
+		DateFormat frFormatter = DateFormat.getDateInstance(DateFormat.MEDIUM, Locale.FRENCH);
+		DateFormat deFormatter = DateFormat.getDateInstance(DateFormat.MEDIUM, Locale.GERMAN);
+		data.put("enLabel", enFormatter.format(date));
+		data.put("frLabel", frFormatter.format(date));
+		data.put("deLabel", deFormatter.format(date));
+		item.setData(data);
+				
+		return item;
+	}
+
+	/* (non-Javadoc)
+	 * @see org.richfaces.component.CalendarDataModel#getToolTip(java.util.Date)
+	 */
+	public Object getToolTip(Date date) {
+	
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+}

Added: trunk/test-applications/facelets/src/main/java/calendar/CalendarDataModelItemImpl.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/calendar/CalendarDataModelItemImpl.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/calendar/CalendarDataModelItemImpl.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,118 @@
+/**
+ * License Agreement.
+ *
+ * Ajax4jsf 1.1 - Natural Ajax for Java Server Faces (JSF)
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+package calendar;
+
+import java.util.Date;
+
+import org.richfaces.model.CalendarDataModelItem;
+
+/**
+ * @author Nick Belaevski - mailto:nbelaevski at exadel.com
+ * created 04.07.2007
+ *
+ */
+public class CalendarDataModelItemImpl implements CalendarDataModelItem {
+
+	private Object data;
+	private Date date;
+	private String styleClass;
+	private Object toolTip;
+	private boolean enabled = true;
+	
+	/* (non-Javadoc)
+	 * @see org.richfaces.component.CalendarDataModelItem#getData()
+	 */
+	public Object getData() {
+		return data;
+	}
+
+	/* (non-Javadoc)
+	 * @see org.richfaces.component.CalendarDataModelItem#getDate()
+	 */
+	public Date getDate() {
+		return date;
+	}
+
+	/* (non-Javadoc)
+	 * @see org.richfaces.component.CalendarDataModelItem#getStyleClass()
+	 */
+	public String getStyleClass() {
+		return styleClass;
+	}
+
+	/* (non-Javadoc)
+	 * @see org.richfaces.component.CalendarDataModelItem#getToolTip()
+	 */
+	public Object getToolTip() {
+		return toolTip;
+	}
+
+	/* (non-Javadoc)
+	 * @see org.richfaces.component.CalendarDataModelItem#hasToolTip()
+	 */
+	public boolean hasToolTip() {
+		return getToolTip() != null;
+	}
+
+	/* (non-Javadoc)
+	 * @see org.richfaces.component.CalendarDataModelItem#isEnabled()
+	 */
+	public boolean isEnabled() {
+		return enabled;
+	}
+
+	/**
+	 * @param data the data to set
+	 */
+	public void setData(Object data) {
+		this.data = data;
+	}
+
+	/**
+	 * @param date the date to set
+	 */
+	public void setDate(Date date) {
+		this.date = date;
+	}
+
+	/**
+	 * @param styleClass the styleClass to set
+	 */
+	public void setStyleClass(String styleClass) {
+		this.styleClass = styleClass;
+	}
+
+	/**
+	 * @param toolTip the toolTip to set
+	 */
+	public void setToolTip(Object toolTip) {
+		this.toolTip = toolTip;
+	}
+
+	/**
+	 * @param enabled the enabled to set
+	 */
+	public void setEnabled(boolean enabled) {
+		this.enabled = enabled;
+	}
+
+}

Added: trunk/test-applications/facelets/src/main/java/calendar/CalendarValidator.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/calendar/CalendarValidator.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/calendar/CalendarValidator.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,40 @@
+/**
+ * 
+ */
+package calendar;
+
+import java.util.Calendar;
+import java.util.Date;
+
+import javax.faces.application.FacesMessage;
+import javax.faces.component.UIComponent;
+import javax.faces.context.FacesContext;
+import javax.faces.validator.Validator;
+import javax.faces.validator.ValidatorException;
+
+/**
+ * @author Nick Belaevski
+ *         mailto:nbelaevski at exadel.com
+ *         created 21.07.2007
+ *
+ */
+public class CalendarValidator implements Validator {
+
+	/* (non-Javadoc)
+	 * @see javax.faces.validator.Validator#validate(javax.faces.context.FacesContext, javax.faces.component.UIComponent, java.lang.Object)
+	 */
+	public void validate(FacesContext context, UIComponent component,
+			Object value) throws ValidatorException {
+
+		Date date = (Date) value;
+		if (date != null) {
+			Calendar calendar = Calendar.getInstance();
+			calendar.setTime(date);
+			int d = calendar.get(Calendar.DATE);
+			if (d == 13 || d == 17) {
+				throw new ValidatorException(new FacesMessage("Test validator: 13th and 17th dates are restricted!"));
+			}
+		}
+	}
+
+}

Added: trunk/test-applications/facelets/src/main/java/dataScroller/Data.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/dataScroller/Data.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/dataScroller/Data.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,35 @@
+package dataScroller;
+
+import java.util.Random;
+
+public class Data {
+
+	public String data0;
+	public int data1;
+	
+	Data(String str,int a) {
+			this.data0 = str+"_"+a;
+			this.data1 = a;
+	
+	}
+
+	public String getData0() {
+		return data0;
+	}
+
+	public void setData0(String data0) {
+		this.data0 = data0;
+	}
+
+	public int getData1() {
+		return data1;
+	}
+
+	public void setData1(int data1) {
+		this.data1 = data1;
+	}
+
+	
+	
+	
+}

Added: trunk/test-applications/facelets/src/main/java/dataScroller/DataScroller.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/dataScroller/DataScroller.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/dataScroller/DataScroller.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,32 @@
+package dataScroller;
+
+import java.util.*;
+
+public class DataScroller {
+	
+	private ArrayList dataTable;
+	public ArrayList temp;
+	
+	public DataScroller() {
+		
+		dataTable = new ArrayList();
+		temp = new ArrayList();
+		for(int i=0;i<20;i++)
+		{
+			dataTable.add(new Data("Random",i));
+		}	
+				
+	}
+
+	public ArrayList getDataTable() {
+		return dataTable;
+	}
+
+	public void setDataTable(ArrayList dataTable) {
+		this.dataTable = dataTable;
+	}
+
+
+
+	
+}

Added: trunk/test-applications/facelets/src/main/java/ddMenu/DDMenu.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/ddMenu/DDMenu.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/ddMenu/DDMenu.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,161 @@
+package ddMenu;
+
+import java.awt.Event;
+
+public class DDMenu {
+
+	private int			hideDelay;
+	private int			showDelay;
+	private int			verticalOffset;
+	private int			horizontalOffset;
+	private String		event;
+	private String		direction	= "";
+	private String		groupDirection;
+	private String		jointPoint	= "";
+	private String		popupWidth	= "";
+	private String		icon			= null;
+	private String		iconFolder	= null;
+	private boolean	rendered;
+	private boolean	disabled;
+	private boolean	check;
+
+	public DDMenu() {
+		hideDelay = 0;
+		showDelay = 0;
+		verticalOffset = 0;
+		horizontalOffset = 0;
+		event = "onmouseover";
+		direction = "";
+		groupDirection = "auto";
+		jointPoint = "";
+		popupWidth = "";
+		icon = null;
+		iconFolder = null;
+		rendered = true;
+		disabled = false;
+		check = false;
+	}
+
+	public String getIcon() {
+		return icon;
+	}
+
+	public void setIcon(String icon) {
+		this.icon = icon;
+	}
+
+	public String getIconFolder() {
+		return iconFolder;
+	}
+
+	public void setIconFolder(String iconFolder) {
+		this.iconFolder = iconFolder;
+	}
+
+	public boolean isDisabled() {
+		return disabled;
+	}
+
+	public void setDisabled(boolean disabled) {
+		this.disabled = disabled;
+	}
+
+	public String getGroupDirection() {
+		return groupDirection;
+	}
+
+	public void setGroupDirection(String groupDirection) {
+		this.groupDirection = groupDirection;
+	}
+
+	public boolean isCheck() {
+		return check;
+	}
+
+	public void setCheck(boolean check) {
+		this.check = check;
+	}
+
+	public String getDirection() {
+		return direction;
+	}
+
+	public void setDirection(String direction) {
+		this.direction = direction;
+	}
+
+	public int getHideDelay() {
+		return hideDelay;
+	}
+
+	public void setHideDelay(int hideDelay) {
+		this.hideDelay = hideDelay;
+	}
+
+	public int getHorizontalOffset() {
+		return horizontalOffset;
+	}
+
+	public void setHorizontalOffset(int horizontalOffset) {
+		this.horizontalOffset = horizontalOffset;
+	}
+
+	public String getJointPoint() {
+		return jointPoint;
+	}
+
+	public void setJointPoint(String jointPoint) {
+		this.jointPoint = jointPoint;
+	}
+
+	public String getPopupWidth() {
+		return popupWidth;
+	}
+
+	public void setPopupWidth(String popupWidth) {
+		this.popupWidth = popupWidth;
+	}
+
+	public boolean isRendered() {
+		return rendered;
+	}
+
+	public void setRendered(boolean rendered) {
+		this.rendered = rendered;
+	}
+
+	public int getShowDelay() {
+		return showDelay;
+	}
+
+	public void setShowDelay(int showDelay) {
+		this.showDelay = showDelay;
+	}
+
+	public int getVerticalOffset() {
+		return verticalOffset;
+	}
+
+	public void setVerticalOffset(int verticalOffset) {
+		this.verticalOffset = verticalOffset;
+	}
+
+	public void changeIcons() {
+		if (icon != null) {
+			icon = null;
+			iconFolder = null;
+		} else {
+			icon = "/pics/header.png";
+			iconFolder = "/pics/ajax_process.gif";
+
+		}
+	}
+
+	public String getEvent() {
+		return event;
+	}
+
+	public void setEvent(String event) {
+		this.event = event;
+	}
+}

Added: trunk/test-applications/facelets/src/main/java/dfs/DataFilterSliderDao.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/dfs/DataFilterSliderDao.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/dfs/DataFilterSliderDao.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,34 @@
+/**
+ * License Agreement.
+ *
+ *  JBoss RichFaces 3.0 - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007  Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+package dfs;
+
+import java.util.List;
+
+public interface DataFilterSliderDao {
+
+    public List getCarsById(String id);
+
+    public List getAllCarMakes();
+
+    public int genRand();
+    
+}

Added: trunk/test-applications/facelets/src/main/java/dfs/DataFilterSliderDaoImpl.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/dfs/DataFilterSliderDaoImpl.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/dfs/DataFilterSliderDaoImpl.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,182 @@
+/**
+ * License Agreement.
+ *
+ *  JBoss RichFaces 3.0 - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007  Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+package dfs;
+
+import java.util.*;
+import java.math.BigDecimal;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: Wesley
+ * Date: Jan 26, 2007
+ * Time: 8:20:38 AM
+ * To change this template use File | Settings | File Templates.
+ */
+public class DataFilterSliderDaoImpl implements DataFilterSliderDao {
+
+    private Map itemKeyMap = new HashMap();
+    private static int DECIMALS = 1;
+    private static int ROUNDING_MODE = BigDecimal.ROUND_HALF_UP;
+    private static DataFilterSliderDaoImpl ourInstance = new DataFilterSliderDaoImpl();
+
+    public static DataFilterSliderDaoImpl getInstance() {
+        return ourInstance;
+    }
+
+    private DataFilterSliderDaoImpl() {
+        loadCarList("0");
+        loadCarList("1");
+        loadCarList("2");
+        loadCarList("3");
+        loadCarList("4");
+        loadCarList("5");
+
+    }
+
+    public List getAllCarMakes(){
+        List retVal = new ArrayList();
+
+        retVal.add("Chevrolet");
+        retVal.add("Ford");
+        retVal.add("Nissan");
+        retVal.add("Toyota");
+        retVal.add("GMC");
+        retVal.add("Infiniti");
+
+        return retVal;
+    }
+
+    public List getCarsById(String id){
+        List retVal = new ArrayList();
+
+        retVal = (ArrayList)itemKeyMap.get( id );
+
+        return retVal;
+    }
+
+    public List loadCarList(String id) {
+
+        ArrayList retVal = new ArrayList();
+        if ( itemKeyMap.containsKey( id ) ){
+            retVal = (ArrayList)itemKeyMap.get( id );
+            //log.info("***************************YES we already have this one in cache: " + id);
+        }else{
+            try{
+
+                if (id.equals("0")){
+                    retVal.addAll(createCar("Chevrolet","Corvette"));
+                    retVal.addAll(createCar("Chevrolet","Malibu"));
+                    retVal.addAll(createCar("Chevrolet","S-10"));
+                    retVal.addAll(createCar("Chevrolet","Tahoe"));
+                }else if(id.equals("1")){
+                    retVal.addAll(createCar("Ford","Taurus"));
+                    retVal.addAll(createCar("Ford","Explorer"));
+                }else if(id.equals("2")){
+                    retVal.addAll(createCar("Nissan","Maxima"));
+                }else if(id.equals("3")){
+                    retVal.addAll(createCar("Toyota","4-Runner"));
+                    retVal.addAll(createCar("Toyota","Camry"));
+                    retVal.addAll(createCar("Toyota","Avalon"));
+                }else if(id.equals("4")){
+                    retVal.addAll(createCar("GMC","Sierra"));
+                    retVal.addAll(createCar("GMC","Yukon"));
+                }else if(id.equals("5")){
+                    retVal.addAll(createCar("Infiniti","G35"));
+                }
+
+            }catch(Exception e){
+                e.printStackTrace();
+            }
+
+            itemKeyMap.put(id,retVal);
+        }
+
+
+        return retVal;
+    }
+
+    public int genRand() {
+        return rand(1,10000);
+    }
+
+    public List createCar(String make, String model){
+
+           ArrayList iiList = null;
+
+           try{
+                int arrayCount = rand(5,20);
+
+                DemoInventoryItem[] demoInventoryItemArrays = new DemoInventoryItem[arrayCount];
+                //System.out.println("******demoInventoryItemArrays: " + demoInventoryItemArrays.length);
+
+                for (int j = 0; j < demoInventoryItemArrays.length; j++){
+                    DemoInventoryItem ii = new DemoInventoryItem();
+
+                    ii.setMake(make);
+                    ii.setModel(model);
+                    ii.setStock(randomstring(6,7));
+                    ii.setVin(randomstring(14,15));
+                    ii.setMileage(new BigDecimal(rand(5000,80000)).setScale(DECIMALS, ROUNDING_MODE));
+                    ii.setMileageMarket(new BigDecimal(rand(25000,45000)).setScale(DECIMALS, ROUNDING_MODE));
+                    ii.setPrice(new Integer(rand(15000,55000)));
+                    ii.setPriceMarket(new BigDecimal(rand(15000,55000)).setScale(DECIMALS, ROUNDING_MODE));
+                    ii.setDaysLive(rand(1,90));
+                    ii.setChangeSearches(new BigDecimal(rand(0,5)).setScale(DECIMALS, ROUNDING_MODE));
+                    ii.setChangePrice(new BigDecimal(rand(0,5)).setScale(DECIMALS, ROUNDING_MODE));
+                    ii.setExposure(new BigDecimal(rand(0,5)).setScale(DECIMALS, ROUNDING_MODE));
+                    ii.setActivity(new BigDecimal(rand(0,5)).setScale(DECIMALS, ROUNDING_MODE));
+                    ii.setPrinted(new BigDecimal(rand(0,5)).setScale(DECIMALS, ROUNDING_MODE));
+                    ii.setInquiries(new BigDecimal(rand(0,5)).setScale(DECIMALS, ROUNDING_MODE));
+                    demoInventoryItemArrays[j] = ii;
+
+                }
+
+                iiList = new ArrayList(Arrays.asList(demoInventoryItemArrays));
+
+                }catch(Exception e){
+                    e.printStackTrace();
+                }
+            return iiList;
+            }
+
+        public static int rand(int lo, int hi)
+        {
+            Random rn2 = new Random();
+            //System.out.println("**" + lo);
+            //System.out.println("**" + hi);
+                int n = hi - lo + 1;
+                int i = rn2.nextInt() % n;
+                if (i < 0)
+                        i = -i;
+                return lo + i;
+        }
+
+        public static String randomstring(int lo, int hi)
+        {
+                int n = rand(lo, hi);
+                byte b[] = new byte[n];
+                for (int i = 0; i < n; i++)
+                        b[i] = (byte)rand('A', 'Z');
+                return new String(b, 0);
+        }
+
+}

Added: trunk/test-applications/facelets/src/main/java/dfs/DemoInventoryItem.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/dfs/DemoInventoryItem.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/dfs/DemoInventoryItem.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,175 @@
+/**
+ * License Agreement.
+ *
+ *  JBoss RichFaces 3.0 - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007  Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+package dfs;
+
+import java.math.BigDecimal;
+import java.io.Serializable;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: Wesley
+ * Date: Jan 26, 2007
+ * Time: 8:21:36 AM
+ * To change this template use File | Settings | File Templates.
+ */
+public class DemoInventoryItem implements Serializable {
+
+    String make;
+    String model;
+    String stock;
+    String vin;
+
+    BigDecimal mileage;
+    BigDecimal mileageMarket;
+    Integer price;
+    BigDecimal priceMarket;
+
+    int daysLive;
+    BigDecimal changeSearches;
+    BigDecimal changePrice;
+
+    BigDecimal exposure;
+    BigDecimal activity;
+    BigDecimal printed;
+    BigDecimal inquiries;
+
+
+    public String getMake() {
+        return make;
+    }
+
+    public void setMake(String make) {
+        this.make = make;
+    }
+
+    public String getModel() {
+        return model;
+    }
+
+    public void setModel(String model) {
+        this.model = model;
+    }
+
+    public String getStock() {
+        return stock;
+    }
+
+    public void setStock(String stock) {
+        this.stock = stock;
+    }
+
+    public String getVin() {
+        return vin;
+    }
+
+    public void setVin(String vin) {
+        this.vin = vin;
+    }
+
+    public BigDecimal getMileage() {
+        return mileage;
+    }
+
+    public void setMileage(BigDecimal mileage) {
+        this.mileage = mileage;
+    }
+
+    public BigDecimal getMileageMarket() {
+        return mileageMarket;
+    }
+
+    public void setMileageMarket(BigDecimal mileageMarket) {
+        this.mileageMarket = mileageMarket;
+    }
+
+    public Integer getPrice() {
+        return price;
+    }
+
+    public void setPrice(Integer price) {
+        this.price = price;
+    }
+
+    public BigDecimal getPriceMarket() {
+        return priceMarket;
+    }
+
+    public void setPriceMarket(BigDecimal priceMarket) {
+        this.priceMarket = priceMarket;
+    }
+
+    public int getDaysLive() {
+        return daysLive;
+    }
+
+    public void setDaysLive(int daysLive) {
+        this.daysLive = daysLive;
+    }
+
+    public BigDecimal getChangeSearches() {
+        return changeSearches;
+    }
+
+    public void setChangeSearches(BigDecimal changeSearches) {
+        this.changeSearches = changeSearches;
+    }
+
+    public BigDecimal getChangePrice() {
+        return changePrice;
+    }
+
+    public void setChangePrice(BigDecimal changePrice) {
+        this.changePrice = changePrice;
+    }
+
+    public BigDecimal getExposure() {
+        return exposure;
+    }
+
+    public void setExposure(BigDecimal exposure) {
+        this.exposure = exposure;
+    }
+
+    public BigDecimal getActivity() {
+        return activity;
+    }
+
+    public void setActivity(BigDecimal activity) {
+        this.activity = activity;
+    }
+
+    public BigDecimal getPrinted() {
+        return printed;
+    }
+
+    public void setPrinted(BigDecimal printed) {
+        this.printed = printed;
+    }
+
+    public BigDecimal getInquiries() {
+        return inquiries;
+    }
+
+    public void setInquiries(BigDecimal inquiries) {
+        this.inquiries = inquiries;
+    }
+}

Added: trunk/test-applications/facelets/src/main/java/dfs/DemoInventoryList.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/dfs/DemoInventoryList.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/dfs/DemoInventoryList.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,284 @@
+/**
+ * License Agreement.
+ *
+ *  JBoss RichFaces 3.0 - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007  Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+package dfs;
+
+import org.richfaces.component.UIDataFltrSlider;
+
+import javax.faces.component.UIData;
+import javax.faces.event.ActionEvent;
+import java.util.ArrayList;
+import java.util.List;
+
+public class DemoInventoryList {
+
+    DataFilterSliderDao dataFilterSliderDao = DataFilterSliderDaoImpl.getInstance();
+
+
+    public DemoInventoryList() {
+       loadCarMakeIndex();
+    }
+
+    private List headers;
+    private List members;
+
+    // dataTableColumn Names
+    private static final String mileageColumnName = "Mileage";
+    private static final String mileageMktAvgColumnName = "+/- Mkt Avg";
+    private static final String priceColumnName = "Price";
+    private static final String priceMktAvgColumnName = "+/- Mkt Avg";
+    private static final String daysLiveColumnName = "Days Live";
+    private static final String changeSearchesColumnName = "% Change Searches";
+    private static final String changePriceColumnName = "% Change Price";
+    private static final String exposureColumnName = "Exposure";
+    private static final String activityColumnName = "Activity";
+    private static final String printedColumnName = "Printed";
+    private static final String inquiriesColumnName = "Inquiries";
+
+    private void populateHeaderList(){
+        headers = new ArrayList();
+        //headers.add("");
+        headers.add(mileageColumnName);
+        headers.add(mileageMktAvgColumnName);
+        headers.add(priceColumnName);
+        headers.add(priceMktAvgColumnName);
+        headers.add(daysLiveColumnName);
+        headers.add(changeSearchesColumnName);
+        headers.add(changePriceColumnName);
+        headers.add(exposureColumnName);
+        headers.add(activityColumnName);
+        headers.add(printedColumnName);
+        headers.add(inquiriesColumnName);
+
+
+    }
+
+    private void populateMemberList(){
+        members = new ArrayList();
+        members.add("avgMileage");
+        members.add("avgMileageMarket");
+        members.add("avgPrice");
+        members.add("avgPriceMarket");
+        members.add("avgDaysLive");
+        members.add("avgChangeSearches");
+        members.add("avgChangePrice");
+        members.add("avgExposure");
+        members.add("avgActivity");
+        members.add("avgPrinted");
+        members.add("avgInquiries");
+    }
+
+
+
+    public String getMileageColumnName() {
+        return mileageColumnName;
+    }
+
+
+    public String getMileageMktAvgColumnName() {
+        return mileageMktAvgColumnName;
+    }
+
+    public String getPriceMktAvgColumnName() {
+        return priceMktAvgColumnName;
+    }
+
+    public String getPriceColumnName() {
+        return priceColumnName;
+    }
+
+    public String getDaysLiveColumnName() {
+        return daysLiveColumnName;
+    }
+
+    public String getChangeSearchesColumnName() {
+        return changeSearchesColumnName;
+    }
+
+    public String getChangePriceColumnName() {
+        return changePriceColumnName;
+    }
+
+    public String getExposureColumnName() {
+        return exposureColumnName;
+    }
+
+    public String getActivityColumnName() {
+        return activityColumnName;
+    }
+
+    public String getPrintedColumnName() {
+        return printedColumnName;
+    }
+
+    public String getInquiriesColumnName() {
+        return inquiriesColumnName;
+    }
+
+    private List carMakeIndex;
+
+
+    public List getCarMakeIndex() {
+        return carMakeIndex;
+    }
+
+    public void setCarMakeIndex(List carMakeIndex) {
+        this.carMakeIndex = carMakeIndex;
+    }
+
+    private UIData carMakeIndexUIData;
+
+
+    public UIData getCarMakeIndexUIData() {
+        return carMakeIndexUIData;
+    }
+
+    public void setCarMakeIndexUIData(UIData carMakeIndexUIData) {
+        this.carMakeIndexUIData = carMakeIndexUIData;
+    }
+
+    public Object getCarInventory() {
+
+        if (uiData == null){
+            loadCarTable("1");
+        }
+
+        return getUiData().getValue();
+
+    }
+
+    protected void loadCarMakeIndex() {
+
+        carMakeIndex = dataFilterSliderDao.getAllCarMakes();
+    }
+
+    UIData uiData;
+
+
+    public UIData getUiData() {
+        if(uiData == null){
+            uiData = new UIData();
+        }
+        return uiData;
+    }
+
+    public void setUiData(UIData uiData) {
+        this.uiData = uiData;
+    }
+
+    public void loadCarTable(String id) {
+       try{
+
+            getUiData().setValue(dataFilterSliderDao.getCarsById(id));
+
+        }catch(Exception e){
+            e.printStackTrace();
+        }
+    }
+
+
+    private static final String carMileageColumnName = "Mileage";
+    private static final String carMileageMktAvgColumnName = "MktAvg";
+    private static final String carPriceColumnName = "Price";
+
+
+    public String getCarMileageColumnName() {
+        return carMileageColumnName;
+    }
+
+    public String getCarMileageMktAvgColumnName() {
+        return carMileageMktAvgColumnName;
+    }
+
+    public String getCarPriceColumnName() {
+        return carPriceColumnName;
+    }
+
+    private String filterValue;
+    private String filterRule;
+
+
+    public String getFilterValue() {
+        return filterValue;
+    }
+
+    public void setFilterValue(String filterValue) {
+        this.filterValue = filterValue;
+    }
+
+
+    public String getFilterRule() {
+        return filterRule;
+    }
+
+    public void setFilterRule(String filterRule) {
+        this.filterRule = filterRule;
+
+
+    }//Other Functions---------------------------------------------------------------------------------------
+    public void populateTableFromMake(){
+         loadCarTable(filterValue);
+    }
+
+    UIDataFltrSlider dataFilterSlider;
+
+
+    public UIDataFltrSlider getDataFilterSlider() {
+        return dataFilterSlider;
+    }
+
+    public void setDataFilterSlider(UIDataFltrSlider dataFilterSlider) {
+        this.dataFilterSlider = dataFilterSlider;
+    }
+
+    public void filterCarList(ActionEvent event) {
+
+        getDataFilterSlider().resetDataTable();
+
+        try{
+            filterValue = String.valueOf(carMakeIndexUIData.getRowIndex());
+            filterRule = getAttribute(event, "filterRule");
+
+            if (filterRule.equals("showTable")){
+                loadCarTable(filterValue);
+            }
+        }catch(Exception e){
+            e.printStackTrace();
+        }
+
+
+    }
+
+    private static String getAttribute(ActionEvent event, String name) {
+        return (String) event.getComponent().getAttributes().get(name);
+    }
+
+    public int genRandom;
+
+
+    public int getGenRandom() {
+        return dataFilterSliderDao.genRand();
+    }
+
+    public void setGenRandom(int genRandom) {
+        this.genRandom = genRandom;
+    }
+}

Added: trunk/test-applications/facelets/src/main/java/dfs/DemoSliderBean.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/dfs/DemoSliderBean.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/dfs/DemoSliderBean.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,49 @@
+/**
+ * License Agreement.
+ *
+ *  JBoss RichFaces 3.0 - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007  Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+package dfs;
+
+import org.richfaces.event.DataFilterSliderEvent;
+
+
+/**
+ * @author $Autor$
+ *
+ */
+public class DemoSliderBean {
+
+    DemoInventoryList demoInventoryList;
+
+
+    public void setDemoInventoryList(DemoInventoryList demoInventoryList) {
+        this.demoInventoryList = demoInventoryList;
+    }
+
+    public void doSlide(DataFilterSliderEvent event) {
+
+           Integer oldSliderVal = event.getOldSliderVal();
+           Integer newSliderVal = event.getNewSliderVal();
+
+           System.out.println("Old Slider Value = " + oldSliderVal.toString() + "  " + "New Slider Value = " + newSliderVal.toString());
+
+    }
+
+}
\ No newline at end of file

Added: trunk/test-applications/facelets/src/main/java/dnd/DndBean.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/dnd/DndBean.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/dnd/DndBean.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,60 @@
+package dnd;
+
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.richfaces.event.DragEvent;
+import org.richfaces.event.DropEvent;
+
+
+
+public class DndBean {
+
+	private List types = new ArrayList();
+	private Object dragValue;
+	private Object testParam;
+
+	public DndBean() {
+		super();
+
+		types.add("One");
+		types.add("Two");
+	}
+
+	public void processDrop(DropEvent event) {
+		System.out.println("Bean.processDrop()");
+		this.dragValue = event.getDragValue();
+	}
+
+	public void processDrag(DragEvent dragEvent) {
+		System.out.println("Bean.processDrag()");
+	}
+
+	public List getTypes() {
+		return types;
+	}
+
+	public String dragAction() {
+		System.out.println("Bean.dragAction()");
+		return null;
+	}
+
+	public String dropAction() {
+		System.out.println("Bean.dropAction()");
+		return null;
+	}
+
+	public Object getDragValue() {
+		return dragValue;
+	}
+
+	public Object getTestParam() {
+		return testParam;
+	}
+
+	public void setTestParam(Object testParam) {
+		this.testParam = testParam;
+		System.out.println("Bean.setTestParam()" + testParam);
+	}
+}
\ No newline at end of file

Added: trunk/test-applications/facelets/src/main/java/gmap/Gmap.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/gmap/Gmap.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/gmap/Gmap.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,20 @@
+package gmap;
+
+public class Gmap {
+
+	 String zoom;
+
+	 public String getZoom() {
+	 	return zoom;
+	 }
+
+	 public void setZoom(String zoom) {
+	 	this.zoom = zoom;
+	 }
+
+	 public String act() {
+	 	zoom = "17";
+	 	System.out.println("zoom="+zoom);
+	 	return null;
+	 }
+}

Added: trunk/test-applications/facelets/src/main/java/inputNumberSlider/InputNumberSlider.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/inputNumberSlider/InputNumberSlider.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/inputNumberSlider/InputNumberSlider.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,205 @@
+package inputNumberSlider;
+
+public class InputNumberSlider {
+
+	
+	private int inputSize;
+	private int maxlength;
+	private String width;
+ 	private String minValue;
+	private String maxValue;
+ 	private String step;
+ 	private String btnLabel;
+ 	private String barStyle;
+ 	private String inputStyle;
+ 	private String tipStyle;
+ 	private String handleStyle;
+ 		
+	private boolean disabled;
+	private boolean showInput;
+	private boolean rendered;
+	private boolean enableManualInput;
+	private boolean showBoundaryValues;
+	
+	public InputNumberSlider() {
+		// TODO Auto-generated constructor stub
+		
+		inputSize = 5;
+		maxlength = 3;
+		width = "300px";
+		minValue="10";
+		maxValue="100";
+		step="5";
+		btnLabel="On";
+		barStyle=null;
+		inputStyle=null;
+		tipStyle=null;
+		handleStyle=null;
+		disabled = false;
+		showInput=true;
+		rendered=true;
+		enableManualInput = true;
+		showBoundaryValues=true;
+	}
+
+	
+	public boolean isDisabled() {
+		return disabled;
+	}
+
+	public void setDisabled(boolean disabled) {
+		this.disabled = disabled;
+	}
+
+	public boolean isEnableManualInput() {
+		return enableManualInput;
+	}
+
+	public void setEnableManualInput(boolean enableManualInput) {
+		this.enableManualInput = enableManualInput;
+	}
+
+	public int getInputSize() {
+		return inputSize;
+	}
+
+	public void setInputSize(int inputSize) {
+		this.inputSize = inputSize;
+	}
+
+	public String getMaxValue() {
+		return maxValue;
+	}
+
+	public void setMaxValue(String maxValue) {
+		this.maxValue = maxValue;
+	}
+
+	public String getMinValue() {
+		return minValue;
+	}
+
+	public void setMinValue(String minValue) {
+		this.minValue = minValue;
+	}
+
+	public boolean isShowBoundaryValues() {
+		return showBoundaryValues;
+	}
+
+	public void setShowBoundaryValues(boolean showBoundaryValues) {
+		this.showBoundaryValues = showBoundaryValues;
+	}
+
+	public boolean isShowInput() {
+		return showInput;
+	}
+
+	public void setShowInput(boolean showInput) {
+		this.showInput = showInput;
+	}
+
+	public String getStep() {
+		return step;
+	}
+
+	public void setStep(String step) {
+		this.step = step;
+	}
+
+	public String getWidth() {
+		return width;
+	}
+
+	public void setWidth(String width) {
+		this.width = width;
+	}
+
+
+	public boolean isRendered() {
+		return rendered;
+	}
+
+
+	public void setRendered(boolean rendered) {
+		this.rendered = rendered;
+	}
+	
+	public void doStyles()
+	{
+		if (getBarStyle() == null) {
+			setBtnLabel("Off");
+			setBarStyle("barStyle");
+			setInputStyle("inputStyle");
+			setTipStyle("tipStyle");
+			setHandleStyle("handleStyle");
+		} else {
+			setBarStyle(null);
+			setBtnLabel("On");
+			setInputStyle(null);
+			setTipStyle(null);
+			setHandleStyle(null);
+		}
+	}
+
+
+	public String getBarStyle() {
+		return barStyle;
+	}
+
+
+	public void setBarStyle(String barStyle) {
+		this.barStyle = barStyle;
+	}
+
+
+	public String getBtnLabel() {
+		return btnLabel;
+	}
+
+
+	public void setBtnLabel(String btnLabel) {
+		this.btnLabel = btnLabel;
+	}
+
+
+	public String getInputStyle() {
+		return inputStyle;
+	}
+
+
+	public void setInputStyle(String inputStyle) {
+		this.inputStyle = inputStyle;
+	}
+
+
+	public String getTipStyle() {
+		return tipStyle;
+	}
+
+
+	public void setTipStyle(String tipStyle) {
+		this.tipStyle = tipStyle;
+	}
+
+
+	public String getHandleStyle() {
+		return handleStyle;
+	}
+
+
+	public void setHandleStyle(String handleStyle) {
+		this.handleStyle = handleStyle;
+	}
+
+
+	public int getMaxlength() {
+		return maxlength;
+	}
+
+
+	public void setMaxlength(int maxlength) {
+		this.maxlength = maxlength;
+	}
+	
+}

Added: trunk/test-applications/facelets/src/main/java/inputNumberSpinner/InputNumberSpinner.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/inputNumberSpinner/InputNumberSpinner.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/inputNumberSpinner/InputNumberSpinner.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,158 @@
+package inputNumberSpinner;
+
+public class InputNumberSpinner {
+
+	// private String size;
+	// private String controlPosition;
+	private int			inputSize;
+	private String		max;
+	private String		min;
+	private String		value;
+	private String		step;
+	private String		inputStyle;
+	private String		style;
+	private String		btnLabel	= "ON";
+	private boolean	cycled;
+	private boolean	disabled;
+	private boolean	manualInput;
+	private boolean	rendered;
+
+	public InputNumberSpinner() {
+		// TODO Auto-generated constructor stub
+		// size= "200";
+		inputSize = 2;
+		cycled = false;
+		disabled = false;
+		manualInput = true;
+		max = "100";
+		min = "10";
+		// value="50";
+		// controlPosition="outside";
+		step = "1";
+		rendered = true;
+		style = null;
+		inputStyle = null;
+
+	}
+
+	public void doStyles() {
+		if (getStyle() == null) {
+			setBtnLabel("OFF");
+			setStyle("style");
+			setInputStyle("inputStyle");
+
+		} else {
+			setStyle(null);
+			setBtnLabel("ON");
+			setInputStyle(null);
+
+		}
+	}
+	/*
+	 * public String getControlPosition() { return controlPosition; } public void
+	 * setControlPosition(String controlPosition) { this.controlPosition =
+	 * controlPosition; }
+	 */
+
+	public boolean isCycled() {
+		return cycled;
+	}
+
+	public void setCycled(boolean cycled) {
+		this.cycled = cycled;
+	}
+
+	public boolean isDisabled() {
+		return disabled;
+	}
+
+	public void setDisabled(boolean disabled) {
+		this.disabled = disabled;
+	}
+
+	public boolean isManualInput() {
+		return manualInput;
+	}
+
+	public void setManualInput(boolean manualInput) {
+		this.manualInput = manualInput;
+	}
+
+	public String getMax() {
+		return max;
+	}
+
+	public void setMax(String max) {
+		this.max = max;
+	}
+
+	public String getMin() {
+		return min;
+	}
+
+	public void setMin(String min) {
+		this.min = min;
+	}
+
+	/*
+	 * public String getSize() { return size; } public void setSize(String size) {
+	 * this.size = size; }
+	 */
+
+	public String getStep() {
+		return step;
+	}
+
+	public void setStep(String step) {
+		this.step = step;
+	}
+
+	public String getValue() {
+		return value;
+	}
+
+	public void setValue(String value) {
+		this.value = value;
+	}
+
+	public boolean isRendered() {
+		return rendered;
+	}
+
+	public void setRendered(boolean rendered) {
+		this.rendered = rendered;
+	}
+
+	public String getInputStyle() {
+		return inputStyle;
+	}
+
+	public void setInputStyle(String inputStyle) {
+		this.inputStyle = inputStyle;
+	}
+
+	public String getStyle() {
+		return style;
+	}
+
+	public void setStyle(String style) {
+		this.style = style;
+	}
+
+	public String getBtnLabel() {
+		return btnLabel;
+	}
+
+	public void setBtnLabel(String btnLabel) {
+		this.btnLabel = btnLabel;
+	}
+
+	public int getInputSize() {
+		return inputSize;
+	}
+
+	public void setInputSize(int inputSize) {
+		this.inputSize = inputSize;
+	}
+
+}

Added: trunk/test-applications/facelets/src/main/java/modalPanel/ModalPanel.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/modalPanel/ModalPanel.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/modalPanel/ModalPanel.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,75 @@
+package modalPanel;
+
+public class ModalPanel {
+
+	
+	private int minHeight;
+	private int minWidth;
+	private int height;
+	private int width;
+	 
+	private boolean moveable;
+	private boolean resizeable;
+	
+	public ModalPanel() {
+		
+		minHeight = 100;
+		minWidth = 100;
+		height = 300;
+		width = 300;
+		
+		moveable=true;
+		resizeable=true;
+		
+		// TODO Auto-generated constructor stub
+	}
+
+	public int getHeight() {
+		return height;
+	}
+
+	public void setHeight(int height) {
+		this.height = height;
+	}
+
+	public int getMinHeight() {
+		return minHeight;
+	}
+
+	public void setMinHeight(int minHeight) {
+		this.minHeight = minHeight;
+	}
+
+	public int getMinWidth() {
+		return minWidth;
+	}
+
+	public void setMinWidth(int minWidth) {
+		this.minWidth = minWidth;
+	}
+
+	public boolean isMoveable() {
+		return moveable;
+	}
+
+	public void setMoveable(boolean moveable) {
+		this.moveable = moveable;
+	}
+
+	public boolean isResizeable() {
+		return resizeable;
+	}
+
+	public void setResizeable(boolean resizeable) {
+		this.resizeable = resizeable;
+	}
+
+	public int getWidth() {
+		return width;
+	}
+
+	public void setWidth(int width) {
+		this.width = width;
+	}
+
+}

Added: trunk/test-applications/facelets/src/main/java/paint2D/Paint2D.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/paint2D/Paint2D.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/paint2D/Paint2D.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,162 @@
+/** @package 
+
+        Paint2D.java
+        
+        Copyright(c) exadel 2000
+        
+        Author: Alex Yanul
+        Created: AY  7/30/2007 12:52:38 PM
+*/        
+package paint2D;
+
+import java.awt.Color;
+import java.awt.Font;
+import java.awt.Graphics2D;
+
+public class Paint2D {
+
+	private static int size = 100;
+	private static float location = 150;
+
+	private int width;
+	private int height;
+	private String title;
+	private String align; // bottom, middle, top
+	private String hspace;
+	private String vspace;
+	private String format; // jpeg|gif|png
+	private String bgcolor;
+	private String border;
+	private boolean rendered;
+
+	public boolean isRerender() {
+		return rendered;
+	}
+
+	public void setRerender(boolean rendered) {
+		this.rendered = rendered;
+	}
+
+	public String getBorder() {
+		return border;
+	}
+
+	public void setBorder(String border) {
+		this.border = border;
+	}
+
+	public Paint2D() {
+                
+		width = 400;
+		align = "left";
+		height = 200;
+		title = "Pain2D title";
+		bgcolor = "white";
+		rendered = true;
+		border = "2px";
+	}
+
+	public void paint(Graphics2D g2, Object obj) {
+		PaintData data = (PaintData) obj;
+		int testLenght = data.text.length();
+		int fontSize = testLenght < 8 ? 40 : 40 - (testLenght - 8);
+		if (fontSize < 12) fontSize = 12;
+		Font font = new Font("Serif", Font.HANGING_BASELINE, fontSize);
+		g2.setFont(font);
+
+		int x = 10;
+		int y = fontSize * 5 / 2;
+		g2.translate(x, y);
+
+		g2.setPaint(Color.BLUE);
+		g2.drawString(data.text, 0, 0);
+	}
+
+	public int getHeight() {
+		return height;
+	}
+
+	public void setHeight(int height) {
+		this.height = height;
+	}
+
+	public int getWidth() {
+		return width;
+	}
+
+	public void setWidth(int width) {
+		this.width = width;
+	}
+
+	public String getAlign() {
+		return align;
+	}
+
+	public void setAlign(String align) {
+		this.align = align;
+	}
+
+	public String getHspace() {
+		return hspace;
+	}
+
+	public void setHspace(String hspace) {
+		this.hspace = hspace;
+	}
+
+	public String getTitle() {
+		return title;
+	}
+
+	public void setTitle(String title) {
+		this.title = title;
+	}
+
+	public String getVspace() {
+		return vspace;
+	}
+
+	public void setVspace(String vspace) {
+		this.vspace = vspace;
+	}
+
+	public String getFormat() {
+		return format;
+	}
+
+	public void setFormat(String format) {
+		this.format = format;
+	}
+
+	public String getBgcolor() {
+		return bgcolor;
+	}
+
+	public void setBgcolor(String bgcolor) {
+		this.bgcolor = bgcolor;
+	}
+
+	public float getLocation() {
+		return location;
+	}
+
+	public void setLocation(float location) {
+		this.location = location;
+	}
+
+	public int getSize() {
+		return size;
+	}
+
+	public void setSize(int size) {
+		this.size = size;
+	}
+
+	public boolean isRendered() {
+		return rendered;
+	}
+
+	public void setRendered(boolean rendered) {
+		this.rendered = rendered;
+	}
+}

Added: trunk/test-applications/facelets/src/main/java/paint2D/PaintData.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/paint2D/PaintData.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/paint2D/PaintData.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,22 @@
+package paint2D;
+
+import java.io.Serializable;
+
+public class PaintData implements Serializable{
+	String text;
+
+	public PaintData() 
+	{
+		text = "Paint2D";
+	}
+
+	public String getText() 
+	{
+		return text;
+	}
+	public void setText(String text) 
+	{
+		this.text = text;
+	}
+}
+

Added: trunk/test-applications/facelets/src/main/java/panel/Panel.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/panel/Panel.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/panel/Panel.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,62 @@
+package panel;
+
+import javax.faces.event.ValueChangeEvent;
+
+public class Panel {
+
+	private boolean rendered;
+
+	private String width;
+	private String height;
+	private String[] title ;
+
+	public Panel() {
+		rendered = false;
+		width = "350px";
+		height = "400px";
+		title = new String[] {"Titles_0", "Titles_1", "Titles_2"};
+	}
+
+	public String getHeight() {
+		return height;
+	}
+
+	public void setHeight(String height) {
+		this.height = height;
+	}
+
+	public boolean isRendered() {
+		return rendered;
+	}
+
+	public void setRendered(boolean rendered) {
+		this.rendered = rendered;
+	}
+
+	public String getWidth() {
+		return width;
+	}
+
+	public void setWidth(String width) {
+		this.width = width;
+	}
+
+	public String[] getTitle() {
+		return title;
+	}
+
+	public void setTitle(String[] title) {
+		this.title = title;
+	}
+	
+	public void makeTitle(ValueChangeEvent event){
+		String t = event.getNewValue().toString();
+		if(t.equalsIgnoreCase(""))
+			for(int i = 0; i < title.length; i++) 
+				title[i] = "Titles_" + i;
+		else
+			for(int i = 0; i < title.length; i++) 
+				title[i] = t + "_" + i;  
+		
+	}
+}

Added: trunk/test-applications/facelets/src/main/java/panelBar/PanelBar.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/panelBar/PanelBar.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/panelBar/PanelBar.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,124 @@
+package panelBar;
+
+import javax.faces.event.ValueChangeEvent;
+
+public class PanelBar {
+
+	private String width;
+
+	private String height;
+	private String contentStyle;
+	private String style=null;
+	private String headerStyle=null;
+	private String btnLabel="ON";
+
+	private String[] label = {"label_0","label_1", "label_2", "label_3"};
+	               
+	private boolean rendered;
+
+	public PanelBar() {
+
+		height = "300px";
+		width = "500px";
+		rendered = true;
+		//contentStyle=null;
+		//style=null;
+		//headerStyle=null;
+	}
+	
+	public void doStyles()
+	{
+		if (getContentStyle() == null) {
+			setBtnLabel("OFF");
+			setContentStyle("contentStyle");
+			setHeaderStyle("activeTabStyle");
+			setStyle("style");			
+		} else {
+			setBtnLabel("ON");
+			setContentStyle(null);
+			setHeaderStyle(null);
+			setStyle(null);	
+		}
+	}
+	
+	public String getHeight() {
+		return height;
+	}
+
+	public String getContentStyle() {
+		return contentStyle;
+	}
+
+	public void setContentStyle(String contentStyle) {
+		this.contentStyle = contentStyle;
+	}
+
+	public String getHeaderStyle() {
+		return headerStyle;
+	}
+
+	public void setHeaderStyle(String headerStyle) {
+		this.headerStyle = headerStyle;
+	}
+
+	public String getStyle() {
+		return style;
+	}
+
+	public void setStyle(String style) {
+		this.style = style;
+	}
+
+	public void setHeight(String height) {
+		this.height = height;
+	}
+
+	public String[] getLabel() {
+		return label;
+	}
+
+	public boolean isRendered() {
+		return rendered;
+	}
+
+	public void setRendered(boolean rendered) {
+		this.rendered = rendered;
+	}
+
+	public String getWidth() {
+		return width;
+	}
+
+	public void setWidth(String width) {
+		this.width = width;
+	}
+
+	public void setLabel(String[] label) {
+
+		this.label = label;
+
+	}
+
+	public void makeLabels(ValueChangeEvent event) {
+		String tlabel = event.getNewValue().toString();
+		if (tlabel.equalsIgnoreCase("")) {
+			for (int i = 0; i < 4; i++) {
+				label[i] = "label_" + i;
+			}
+		} else {
+			for (int i = 0; i < 4; i++) {
+				label[i] = tlabel + "_" + i;
+			}
+		}
+
+	}
+
+	public String getBtnLabel() {
+		return btnLabel;
+	}
+
+	public void setBtnLabel(String btnLabel) {
+		this.btnLabel = btnLabel;
+	}
+
+}

Added: trunk/test-applications/facelets/src/main/java/panelMenu/PanelMenu.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/panelMenu/PanelMenu.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/panelMenu/PanelMenu.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,132 @@
+package panelMenu;
+
+import style.icon.Icon;
+
+public class PanelMenu {
+
+	private Icon icon;
+	private String width;
+	private String mode;
+	private String mode2;
+	private String align;
+	private String rendered;
+	private String iconItemPosition;
+	private String iconItemTopPosition;
+	private String iconGroupPosition;
+	private String iconGroupTopPosition;
+	private String tabIndex;
+	private String expandMode;
+	private boolean disabled;
+	private boolean expandSingle;
+	
+	public PanelMenu() {
+		width = "500px";
+		mode = "none";
+		mode2 = "none";
+		align = "";
+		rendered = "true";
+		disabled = false;
+		tabIndex = "1";
+		icon = new Icon();
+/*		icon.setCollapsed(icon.iconCollapse);
+		icon.setExpanded(icon.iconExpand);
+		icon.setItem(icon.iconItem);
+		icon.setIcon(icon.iconFileManager);
+		icon.setCollapsedGroup(icon.iconAjaxProcess);
+		icon.setDisabledGroup(icon.iconAjaxStoped);
+*/		
+	}
+	
+	public boolean isDisabled() {
+		return disabled;
+	}
+	public String getWidth() {
+		return width;
+	}
+	public void setWidth(String width) {
+		this.width = width;
+	}
+	public void setDisabled(boolean disabled) {
+		this.disabled = disabled;
+	}
+	public boolean isExpandSingle() {
+		return expandSingle;
+	}
+	public void setExpandSingle(boolean expandSingle) {
+		this.expandSingle = expandSingle;
+	}
+	public String getAlign() {
+		return align;
+	}
+	public void setAlign(String align) {
+		this.align = align;
+	}
+	public String getRendered() {
+		return rendered;
+	}
+	public void setRendered(String rendered) {
+		this.rendered = rendered;
+	}
+	public Icon getIcon() {
+		return icon;
+	}
+	public void setIcon(Icon icon) {
+		this.icon = icon;
+	}
+	public String getIconGroupPosition() {
+		return iconGroupPosition;
+	}
+	public void setIconGroupPosition(String iconGroupPosition) {
+		this.iconGroupPosition = iconGroupPosition;
+	}
+	public String getIconGroupTopPosition() {
+		return iconGroupTopPosition;
+	}
+	public void setIconGroupTopPosition(String iconGroupTopPosition) {
+		this.iconGroupTopPosition = iconGroupTopPosition;
+	}
+	public String getIconItemPosition() {
+		return iconItemPosition;
+	}
+	public void setIconItemPosition(String iconItemPosition) {
+		this.iconItemPosition = iconItemPosition;
+	}
+	public String getIconItemTopPosition() {
+		return iconItemTopPosition;
+	}
+	public void setIconItemTopPosition(String iconItemTopPosition) {
+		this.iconItemTopPosition = iconItemTopPosition;
+	}
+
+	public String getMode2() {
+		return mode2;
+	}
+
+	public void setMode2(String mode2) {
+		this.mode2 = mode2;
+	}
+	
+	public String getMode() {
+		return mode;
+	}
+	
+	public void setMode(String mode) {
+		this.mode = mode;
+	}
+
+	public String getTabIndex() {
+		return tabIndex;
+	}
+
+	public void setTabIndex(String tabIndex) {
+		this.tabIndex = tabIndex;
+	}
+
+	public String getExpandMode() {
+		return expandMode;
+	}
+
+	public void setExpandMode(String expandMode) {
+		this.expandMode = expandMode;
+	}
+}

Added: trunk/test-applications/facelets/src/main/java/resources.properties
===================================================================
--- trunk/test-applications/facelets/src/main/java/resources.properties	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/resources.properties	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,2 @@
+prompt=Your Name\:
+greeting=Hello

Added: trunk/test-applications/facelets/src/main/java/sTP/SimpleTogglePanel.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/sTP/SimpleTogglePanel.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/sTP/SimpleTogglePanel.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,60 @@
+package sTP;
+
+public class SimpleTogglePanel {
+
+	private String		switchType; // "client", "server"(default), "ajax"
+	private String		width;
+	private String		height;
+
+	private boolean	focus;
+	private boolean	rendered;
+
+	public SimpleTogglePanel() {
+		// TODO Auto-generated constructor stub
+		width = "75%";
+		height = "100%";
+		switchType = "server";
+		focus = true;
+		rendered = true;
+	}
+
+	public String getHeight() {
+		return height;
+	}
+
+	public void setHeight(String height) {
+		this.height = height;
+	}
+
+	public boolean isRendered() {
+		return rendered;
+	}
+
+	public void setRendered(boolean rendered) {
+		this.rendered = rendered;
+	}
+
+	public String getSwitchType() {
+		return switchType;
+	}
+
+	public void setSwitchType(String switchType) {
+		this.switchType = switchType;
+	}
+
+	public String getWidth() {
+		return width;
+	}
+
+	public void setWidth(String width) {
+		this.width = width;
+	}
+
+	public boolean isFocus() {
+		return focus;
+	}
+
+	public void setFocus(boolean focus) {
+		this.focus = focus;
+	}
+}

Added: trunk/test-applications/facelets/src/main/java/sb/Data.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/sb/Data.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/sb/Data.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,39 @@
+package sb;
+
+public class Data {
+	private String text;
+
+	private String label;
+	
+	private String flag; 
+	
+	public Data(String text, String label){
+		this.text = text;
+		this.label = label;
+		this.flag = "/images/flag.png";
+	}
+
+	public String getLabel() {
+		return label;
+	}
+
+	public void setLabel(String label) {
+		this.label = label;
+	}
+
+	public String getText() {
+		return text;
+	}
+
+	public void setText(String text) {
+		this.text = text;
+	}
+
+	public String getFlag() {
+		return flag;
+	}
+
+	public void setFlag(String flag) {
+		this.flag = flag;
+	}
+}

Added: trunk/test-applications/facelets/src/main/java/sb/Sb.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/sb/Sb.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/sb/Sb.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,261 @@
+package sb;
+import java.util.*;
+
+import org.richfaces.renderkit.html.SuggestionBoxRenderer;
+
+public class Sb {
+
+	private ArrayList					cities;
+	private ArrayList					data;
+	private ArrayList					tokens;
+	private int							first;
+	private String						zindex;
+	private String						property;
+	private String						rows;
+	private String						cellspacing;
+	private String						cellpadding;
+	private String						minchars;
+	private String						frequency;
+	private String						rules;
+	private String						border;
+	private String						width;
+	private String						height;
+	private String						shadowOpacity;
+	private String						bgColor;
+	private String						shadowDepth;
+	private boolean					focus;
+	private boolean					check;
+	private boolean					reRender;
+
+	private static final String[]	cit	= {"Abba", "Abbeville", "Acworth", "Adairsville", "Adel",
+			"Adrian", "Ailey", "Alamo", "Alapaha", "Albany", "Allenhurst", "Alma", "Alma",
+			"Alpharetta", "Alston", "Amboy", "Ambrose", "Americus", "Appling", "Arlington", "Ashburn",
+			"Athens", "Athens-Clarke County", "Atkinson", "Atlanta", "Attapulgus", "Auburn",
+			"Augusta", "Augusta-Richmond County", "Austell", "Avondale Estates", "Axson"};
+
+	public Sb() {
+		border = "1";
+		width = "200";
+		height = "150";
+		shadowOpacity = "1";
+		shadowDepth = Integer.toString(SuggestionBoxRenderer.SHADOW_DEPTH);
+		reRender = true;
+		zindex = "3";
+		focus = true;
+		rows = "0";
+		first = 0;
+		cellspacing = "2";
+		cellpadding = "2";
+		minchars = "1";
+		frequency = "0";
+		rules = "none";
+		setCities(getAllData());
+		// TODO Auto-generated constructor stub
+	}
+
+	public List autocomplete(Object event) {
+		String pref = event.toString();
+		ArrayList result = new ArrayList();
+
+		Iterator iterator = getAllData().iterator();
+		while (iterator.hasNext()) {
+			Data elem = (Data) iterator.next();
+			if ((elem != null && elem.getText().toLowerCase().indexOf(pref.toLowerCase()) == 0)
+					|| "".equals(pref)) {
+				result.add(elem);
+			}
+		}
+		return result;
+	}
+
+	public ArrayList getCities() {
+		return cities;
+	}
+
+	public void setCities(ArrayList cities) {
+		this.cities = cities;
+	}
+
+	public ArrayList getAllData() {
+		ArrayList result = new ArrayList();
+		for (int i = 0; i < cit.length; i++) {
+			Data data = new Data(cit[i], String.valueOf(i + 1));
+			result.add(data);
+		}
+		return result;
+	}
+
+	public ArrayList getData() {
+		return data;
+	}
+
+	public void setData(ArrayList data) {
+		this.data = data;
+	}
+
+	public String getProperty() {
+		return property;
+	}
+
+	public void setProperty(String property) {
+		this.property = property;
+	}
+
+	public String getCellpadding() {
+		return cellpadding;
+	}
+
+	public void setCellpadding(String cellpadding) {
+		this.cellpadding = cellpadding;
+	}
+
+	public String getCellspacing() {
+		return cellspacing;
+	}
+
+	public void setCellspacing(String cellspacing) {
+		this.cellspacing = cellspacing;
+	}
+
+	public boolean isCheck() {
+		return check;
+	}
+
+	public void setCheck(boolean check) {
+		this.check = check;
+	}
+
+	public int getFirst() {
+		return first;
+	}
+	public int getIntFirst() {
+		return first;
+	}
+
+	public void setFirst(int first) {
+		this.first = first;
+	}
+
+	public String getFrequency() {
+		return frequency;
+	}
+	public double getDoubleFrequency() {
+		return Double.parseDouble(getFrequency());
+	}
+
+	public void setFrequency(String frequency) {
+		this.frequency = frequency;
+	}
+
+	public String getMinchars() {
+		return minchars;
+	}
+
+	public void setMinchars(String minchars) {
+		this.minchars = minchars;
+	}
+
+	public String getRows() {
+		return rows;
+	}
+	public int getIntRows() {
+		return Integer.parseInt(getRows());
+	}
+
+	public void setRows(String rows) {
+		this.rows = rows;
+	}
+
+	public String getRules() {
+		return rules;
+	}
+
+	public void setRules(String rules) {
+		this.rules = rules;
+	}
+
+	public ArrayList getTokens() {
+		return tokens;
+	}
+
+	public void setTokens(ArrayList tokens) {
+		this.tokens = tokens;
+	}
+	public void OnSelect() {
+		System.out.print("Onselect works!!!");
+
+	}
+
+	public String getBorder() {
+		return border;
+	}
+
+	public void setBorder(String border) {
+		this.border = border;
+	}
+
+	public String getHeight() {
+		return height;
+	}
+
+	public void setHeight(String height) {
+		this.height = height;
+	}
+
+	public String getShadowOpacity() {
+		return shadowOpacity;
+	}
+
+	public void setShadowOpacity(String shadowOpacity) {
+		this.shadowOpacity = shadowOpacity;
+	}
+
+	public String getWidth() {
+		return width;
+	}
+
+	public void setWidth(String width) {
+		this.width = width;
+	}
+
+	public String getBgColor() {
+		return bgColor;
+	}
+
+	public void setBgColor(String bgColor) {
+		this.bgColor = bgColor;
+	}
+
+	public boolean isFocus() {
+		return focus;
+	}
+
+	public void setFocus(boolean focus) {
+		this.focus = focus;
+	}
+
+	public String getZindex() {
+		return zindex;
+	}
+
+	public void setZindex(String zindex) {
+		this.zindex = zindex;
+	}
+
+	public String getShadowDepth() {
+		return shadowDepth;
+	}
+
+	public void setShadowDepth(String shadowDepth) {
+		this.shadowDepth = shadowDepth;
+	}
+
+	public boolean isReRender() {
+		return reRender;
+	}
+
+	public void setReRender(boolean reRender) {
+		this.reRender = reRender;
+	}
+
+}

Added: trunk/test-applications/facelets/src/main/java/separator/Separator.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/separator/Separator.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/separator/Separator.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,135 @@
+package separator;
+
+public class Separator {
+
+	
+	
+	private String width;
+	private String title;
+	private String height;
+	private String lineType;
+	private String align;
+	private String btnLabel="ON";
+	private String style;
+	
+	private boolean rendered; 
+	
+	
+		
+	public String getBtnLabel() {
+		return btnLabel;
+	}
+
+
+
+	public void setBtnLabel(String btnLabel) {
+		this.btnLabel = btnLabel;
+	}
+
+
+
+	public String getStyle() {
+		return style;
+	}
+
+
+
+	public void setStyle(String style) {
+		this.style = style;
+	}
+
+
+
+	public Separator() {
+		width="300px";
+		height="10px";
+		title="title goes here";
+		rendered=true;
+		lineType="beveled";//beveled (default), dotted, dashed, double and solid
+		align="left"; //left|center|right
+		style=null;
+	}
+	
+	public void doStyles() {
+		if (getStyle() == null) {
+			setBtnLabel("OFF");
+			setStyle("style");
+		} else {
+			setStyle(null);
+			setBtnLabel("ON");
+		}
+	
+	}
+
+
+	public String getAlign() {
+		return align;
+	}
+
+
+
+	public void setAlign(String align) {
+		this.align = align;
+	}
+
+
+
+	public String getHeight() {
+		return height;
+	}
+
+
+
+	public void setHeight(String height) {
+		this.height = height;
+	}
+
+
+
+	public String getLineType() {
+		return lineType;
+	}
+
+
+
+	public void setLineType(String lineType) {
+		this.lineType = lineType;
+	}
+
+
+
+	public boolean isRendered() {
+		return rendered;
+	}
+
+
+
+	public void setRendered(boolean rendered) {
+		this.rendered = rendered;
+	}
+
+
+
+	public String getTitle() {
+		return title;
+	}
+
+
+
+	public void setTitle(String title) {
+		this.title = title;
+	}
+
+
+
+	public String getWidth() {
+		return width;
+	}
+
+
+
+	public void setWidth(String width) {
+		this.width = width;
+	}
+
+}

Added: trunk/test-applications/facelets/src/main/java/skins/Skins.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/skins/Skins.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/skins/Skins.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,70 @@
+package skins;
+
+import java.util.Map;
+
+import javax.faces.component.UIComponent;
+import javax.faces.component.UISelectItem;
+import javax.faces.component.UISelectOne;
+import javax.faces.context.FacesContext;
+
+/**
+ * @author Nick Belaevski - nbelaevski at exadel.com created 09.02.2007
+ * 
+ */
+public class Skins {
+
+	private String[] skinsArray = new String[] { "blueSky", "classic",
+			"deepMarine", "DEFAULT", "emeraldTown", "japanCherry", "ruby",
+			"wine", "plain" };
+
+	private String defaultSkin = "blueSky";
+
+	private String skin = defaultSkin;
+
+	private UISelectOne createComponent() {
+		UISelectOne selectOne = new UISelectOne();
+		selectOne.setValue(skin);
+
+		for (int i = 0; i < skinsArray.length; i++) {
+			String skinName = skinsArray[i];
+
+			UISelectItem item = new UISelectItem();
+			item.setItemLabel(skinName);
+			item.setItemValue(skinName);
+			item.setId("skinSelectionFor_" + skinName);
+
+			selectOne.getChildren().add(item);
+		}
+
+		return selectOne;
+	}
+
+	public String getSkin() {
+		return skin;
+	}
+
+	public UIComponent getComponent() {
+		FacesContext facesContext = FacesContext.getCurrentInstance();
+		Map requestMap = facesContext.getExternalContext().getRequestMap();
+		Object object = requestMap.get("SkinBean");
+		if (object != null) {
+			return (UISelectOne) object;
+		}
+
+		UISelectOne selectOne = createComponent();
+		requestMap.put("SkinBean", selectOne);
+		return selectOne;
+	}
+
+	public void setComponent(UIComponent component) {
+		FacesContext facesContext = FacesContext.getCurrentInstance();
+		Map requestMap = facesContext.getExternalContext().getRequestMap();
+		requestMap.put("SkinBean", component);
+	}
+
+	public String change() {
+		UISelectOne selectOne = (UISelectOne) getComponent();
+		skin = (String) selectOne.getValue();
+		return null;
+	}
+}

Added: trunk/test-applications/facelets/src/main/java/spacer/Spacer.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/spacer/Spacer.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/spacer/Spacer.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,77 @@
+package spacer;
+
+public class Spacer {
+
+	private String width;
+
+	private String height;
+
+	private String style;
+
+	private String btn;
+
+	private boolean rendered;
+
+	public Spacer() {
+		// TODO Auto-generated constructor stub
+
+		height = "50px";
+		width = "300px";
+		rendered = true;
+		style = null;
+		btn = "Switch on styleClass";
+	}
+
+	public String getHeight() {
+		return height;
+	}
+
+	public void setHeight(String height) {
+		this.height = height;
+	}
+
+	public boolean isRendered() {
+		return rendered;
+	}
+
+	public void setRendered(boolean rendered) {
+		this.rendered = rendered;
+	}
+
+	public String getWidth() {
+		return width;
+	}
+
+	public void setWidth(String width) {
+		this.width = width;
+	}
+
+	public String getStyle() {
+		return style;
+	}
+
+	public void setStyle(String style) {
+		this.style = style;
+	}
+
+	public String doStyle() {
+		if (getStyle() == null) {
+			setBtn("Switch off styleClass");
+			setStyle("spacer");
+		} else {
+			setStyle(null);
+			setBtn("Switch on styleClass");
+		}
+		// if("spacer".equals(getStyle())) setStyle(null);
+		return null;
+	}
+
+	public String getBtn() {
+		return btn;
+	}
+
+	public void setBtn(String btn) {
+		this.btn = btn;
+	}
+
+}

Added: trunk/test-applications/facelets/src/main/java/style/icon/Icon.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/style/icon/Icon.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/style/icon/Icon.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,194 @@
+package style.icon;
+
+public class Icon {
+
+	public final String iconAjaxProcess = "/pics/ajax_process.gif";
+	public final String iconAjaxStoped = "/pics/ajax_stoped.gif";
+	public final String iconCollapse = "/pics/collapse.gif";
+	public final String iconExpand = "/pics/expand.gif";
+	public final String iconFileManagerReject = "/pics/file-manager-reject.png";
+	public final String iconFileManager = "/pics/file-manager.png";
+	public final String iconHeader = "/pics/header.png";
+	public final String iconItem = "/pics/item.png";
+	public final String none = "none";
+
+	private String icon;
+	private String item;
+	private String disabled;
+	private String disabledItem;
+	private String topItem;
+	private String topDisabledItem;
+	private String expandedGroup;
+	private String collapsedGroup;
+	private String disabledGroup;
+	private String expandedTopGroup;
+	private String collapsedTopGroup;
+	private String topDisableGroup;
+	private String expanded;
+	private String collapsed;
+ 
+	public Icon() {
+		icon = "none";
+		item = "none";
+		disabled = "none";
+		disabledItem = "none";
+		topItem = "none";
+		topDisabledItem = "none";
+		expandedGroup = "none";
+		collapsedGroup = "none";
+		disabledGroup = "none";
+		expandedTopGroup = "none";
+		collapsedTopGroup = "none";
+		topDisableGroup = "none";
+		expanded = "none";
+		collapsed = "none";
+	}
+
+	public final String getIconAjaxProcess() {
+		return iconAjaxProcess;
+	}
+
+	public final String getIconAjaxStoped() {
+		return iconAjaxStoped;
+	}
+
+	public final String getIconCollapse() {
+		return iconCollapse;
+	}
+
+	public final String getIconExpand() {
+		return iconExpand;
+	}
+
+	public final String getIconFileManager() {
+		return iconFileManager;
+	}
+
+	public final String getIconFileManagerReject() {
+		return iconFileManagerReject;
+	}
+
+	public final String getIconHeader() {
+		return iconHeader;
+	}
+
+	public final String getIconItem() {
+		return iconItem;
+	}
+
+	public String getCollapsed() {
+		return collapsed;
+	}
+
+	public void setCollapsed(String collapsed) {
+		this.collapsed = collapsed;
+	}
+
+	public String getCollapsedGroup() {
+		return collapsedGroup;
+	}
+
+	public void setCollapsedGroup(String collapsedGroup) {
+		this.collapsedGroup = collapsedGroup;
+	}
+
+	public String getCollapsedTopGroup() {
+		return collapsedTopGroup;
+	}
+
+	public void setCollapsedTopGroup(String collapsedTopGroup) {
+		this.collapsedTopGroup = collapsedTopGroup;
+	}
+
+	public String getDisabled() {
+		return disabled;
+	}
+
+	public void setDisabled(String disabled) {
+		this.disabled = disabled;
+	}
+
+	public String getDisabledGroup() {
+		return disabledGroup;
+	}
+
+	public void setDisabledGroup(String disabledGroup) {
+		this.disabledGroup = disabledGroup;
+	}
+
+	public String getDisabledItem() {
+		return disabledItem;
+	}
+
+	public void setDisabledItem(String disabledItem) {
+		this.disabledItem = disabledItem;
+	}
+
+	public String getExpanded() {
+		return expanded;
+	}
+
+	public void setExpanded(String expanded) {
+		this.expanded = expanded;
+	}
+
+	public String getExpandedGroup() {
+		return expandedGroup;
+	}
+
+	public void setExpandedGroup(String expandedGroup) {
+		this.expandedGroup = expandedGroup;
+	}
+
+	public String getExpandedTopGroup() {
+		return expandedTopGroup;
+	}
+
+	public void setExpandedTopGroup(String expandedTopGroup) {
+		this.expandedTopGroup = expandedTopGroup;
+	}
+
+	public String getIcon() {
+		return icon;
+	}
+
+	public void setIcon(String icon) {
+		this.icon = icon;
+	}
+
+	public String getItem() {
+		return item;
+	}
+
+	public void setItem(String item) {
+		this.item = item;
+	}
+
+	public String getTopDisabledItem() {
+		return topDisabledItem;
+	}
+
+	public void setTopDisabledItem(String topDisabledItem) {
+		this.topDisabledItem = topDisabledItem;
+	}
+
+	public String getTopDisableGroup() {
+		return topDisableGroup;
+	}
+
+	public void setTopDisableGroup(String topDisableGroup) {
+		this.topDisableGroup = topDisableGroup;
+	}
+
+	public String getTopItem() {
+		return topItem;
+	}
+
+	public void setTopItem(String topItem) {
+		this.topItem = topItem;
+	}
+
+	public final String getNone() {
+		return none;
+	}
+}

Added: trunk/test-applications/facelets/src/main/java/tabPanel/TabPanel.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/tabPanel/TabPanel.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/tabPanel/TabPanel.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,189 @@
+package tabPanel;
+
+public class TabPanel {
+	
+	private String width;
+	private String height;
+	private String title;
+	private String switchType; //"client", "server"(default), "ajax"
+	private String headerAlignment; //"left", "center" and "right". 
+	private String headerSpacing;
+	private String selectedTab;
+	//private String timeout;
+	private String labelWidth;
+	private String label;
+	private String activeTabStyle;
+	private String	disabledTabStyle;
+	private String	inactiveTabStyle;
+	private String	contentStyle;
+	private String BtnLabel="ON";
+	
+	
+	private boolean rendered;
+	private boolean disabledTab;
+	
+	public TabPanel() {
+		width="75%";
+		height="200px";
+		title="title goes here...";
+		switchType="server";
+		headerAlignment="center";
+		headerSpacing="20px";
+		label="Tab Label";
+		labelWidth="150px";
+		
+		activeTabStyle=null;
+		disabledTabStyle=null;
+		inactiveTabStyle=null;
+		contentStyle=null;
+		
+		rendered=true;
+		disabledTab=false;
+		
+	}
+	
+	public void doStyles()
+	{
+		if (getContentStyle() == null) {
+			setBtnLabel("Off");
+			setActiveTabStyle("activeTabStyle");
+			setContentStyle("contentStyle");
+			setDisabledTabStyle("disabledTabStyle");
+			setInactiveTabStyle("inactiveTabStyle");
+		} else {
+			setBtnLabel("OFF");
+			setActiveTabStyle(null);
+			setContentStyle(null);
+			setDisabledTabStyle(null);
+			setInactiveTabStyle(null);
+		}
+	}
+	public String getHeaderAlignment() {
+		return headerAlignment;
+	}
+
+	public void setHeaderAlignment(String headerAlignment) {
+		this.headerAlignment = headerAlignment;
+	}
+
+	public String getHeaderSpacing() {
+		return headerSpacing;
+	}
+
+	public void setHeaderSpacing(String headerSpacing) {
+		this.headerSpacing = headerSpacing;
+	}
+
+	public String getHeight() {
+		return height;
+	}
+
+	public void setHeight(String height) {
+		this.height = height;
+	}
+
+	public String getLabel() {
+		return label;
+	}
+
+	public void setLabel(String label) {
+		this.label = label;
+	}
+
+	public String getLabelWidth() {
+		return labelWidth;
+	}
+
+	public void setLabelWidth(String labelWidth) {
+		this.labelWidth = labelWidth;
+	}
+
+	public boolean isRendered() {
+		return rendered;
+	}
+
+	public void setRendered(boolean rendered) {
+		this.rendered = rendered;
+	}
+
+	public String getSelectedTab() {
+		return selectedTab;
+	}
+
+	public void setSelectedTab(String selectedTab) {
+		this.selectedTab = selectedTab;
+	}
+
+	public String getSwitchType() {
+		return switchType;
+	}
+
+	public void setSwitchType(String switchType) {
+		this.switchType = switchType;
+	}
+
+	public String getTitle() {
+		return title;
+	}
+
+	public void setTitle(String title) {
+		this.title = title;
+	}
+
+	public String getWidth() {
+		return width;
+	}
+
+	public void setWidth(String width) {
+		this.width = width;
+	}
+
+	public boolean isDisabledTab() {
+		return disabledTab;
+	}
+
+	public void setDisabledTab(boolean disabledTab) {
+		this.disabledTab = disabledTab;
+	}
+
+	public String getActiveTabStyle() {
+		return activeTabStyle;
+	}
+
+	public void setActiveTabStyle(String activeTabStyle) {
+		this.activeTabStyle = activeTabStyle;
+	}
+
+	public String getContentStyle() {
+		return contentStyle;
+	}
+
+	public void setContentStyle(String contentStyle) {
+		this.contentStyle = contentStyle;
+	}
+
+	public String getDisabledTabStyle() {
+		return disabledTabStyle;
+	}
+
+	public void setDisabledTabStyle(String disabledTabStyl) {
+		this.disabledTabStyle = disabledTabStyl;
+	}
+
+	public String getInactiveTabStyle() {
+		return inactiveTabStyle;
+	}
+
+	public void setInactiveTabStyle(String inactiveTabStyle) {
+		this.inactiveTabStyle = inactiveTabStyle;
+	}
+
+	public String getBtnLabel() {
+		return BtnLabel;
+	}
+
+	public void setBtnLabel(String btnLabel) {
+		BtnLabel = btnLabel;
+	}
+	
+}

Added: trunk/test-applications/facelets/src/main/java/togglePanel/TogglePanel.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/togglePanel/TogglePanel.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/togglePanel/TogglePanel.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,54 @@
+package togglePanel;
+
+public class TogglePanel {
+	
+	private String initialState;
+	private String stateOrder;
+	private String switchType;
+	
+
+	
+	public TogglePanel() {
+		// TODO Auto-generated constructor stub
+		initialState="asus";
+		switchType="server";
+		stateOrder="asus,benq,toshiba";
+	}
+
+
+
+	public String getInitialState() {
+		return initialState;
+	}
+
+
+
+	public void setInitialState(String initialState) {
+		this.initialState = initialState;
+	}
+
+
+
+	public String getStateOrder() {
+		return stateOrder;
+	}
+
+
+
+	public void setStateOrder(String stateOrder) {
+		this.stateOrder = stateOrder;
+	}
+
+
+
+	public String getSwitchType() {
+		return switchType;
+	}
+
+
+
+	public void setSwitchType(String switchType) {
+		this.switchType = switchType;
+	}
+
+}

Added: trunk/test-applications/facelets/src/main/java/toolBar/ToolBar.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/toolBar/ToolBar.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/toolBar/ToolBar.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,135 @@
+package toolBar;
+
+public class ToolBar {
+
+	private String width;
+	private String height;
+	private String itemSeparator;//none, line, square, disc and grid
+	private String location;//A location of a group on a menu bar. Possible values are left and right
+	
+	private String contentStyle;
+	private String separatorStyle;
+	private String btnLabel="ON";
+	private boolean rendered;
+	
+	
+	
+	public ToolBar() {
+		rendered=true;
+		width="75%";
+		height="50px";
+		itemSeparator="square";
+		location="left";
+		contentStyle=null;
+		separatorStyle=null;
+		// TODO Auto-generated constructor stub
+	}
+
+	
+	public void doStyles()
+	{
+		if (getSeparatorStyle() == null) {
+			setBtnLabel("OFF");
+			setContentStyle("contentStyle");
+			setSeparatorStyle("separatorStyle");
+			
+		} else {
+			setBtnLabel("ON");
+			setContentStyle(null);
+			setSeparatorStyle(null);
+		}
+	}
+	
+	public String getHeight() {
+		return height;
+	}
+
+
+
+	public void setHeight(String height) {
+		this.height = height;
+	}
+
+
+
+	public String getItemSeparator() {
+		return itemSeparator;
+	}
+
+
+
+	public void setItemSeparator(String itemSeparator) {
+		this.itemSeparator = itemSeparator;
+	}
+
+
+
+	public String getLocation() {
+		return location;
+	}
+
+
+
+	public void setLocation(String location) {
+		this.location = location;
+	}
+
+
+
+	public boolean isRendered() {
+		return rendered;
+	}
+
+
+
+	public void setRendered(boolean rendered) {
+		this.rendered = rendered;
+	}
+
+
+
+	public String getWidth() {
+		return width;
+	}
+
+
+
+	public void setWidth(String width) {
+		this.width = width;
+	}
+
+
+
+	public String getContentStyle() {
+		return contentStyle;
+	}
+
+
+
+	public void setContentStyle(String contentStyle) {
+		this.contentStyle = contentStyle;
+	}
+
+
+
+	public String getSeparatorStyle() {
+		return separatorStyle;
+	}
+
+
+
+	public void setSeparatorStyle(String separatorStyle) {
+		this.separatorStyle = separatorStyle;
+	}
+
+
+	public String getBtnLabel() {
+		return btnLabel;
+	}
+
+
+	public void setBtnLabel(String btnLabel) {
+		this.btnLabel = btnLabel;
+	}
+
+}

Added: trunk/test-applications/facelets/src/main/java/tooltip/Tooltip.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/tooltip/Tooltip.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/tooltip/Tooltip.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,119 @@
+package tooltip;
+
+public class Tooltip {
+	
+	private boolean followMouse;
+	private boolean rendered;
+	private boolean disabled;
+	private int horizontalOffset;
+	private int verticalOffset;
+	private int delay;
+	private String value;
+	private String mode;
+	private String direction;
+	private String style;
+	private String layout;
+		
+	public String getLayout() {
+		return layout;
+	}
+
+	public void setLayout(String layout) {
+		this.layout = layout;
+	}
+
+	public Tooltip() {
+		followMouse = false;
+		rendered = true;
+		disabled = false;
+		value = "tooltip";
+		mode = "client";
+		direction = "auto";
+		horizontalOffset = 0;
+		verticalOffset = 0;
+		delay = 0;
+		style = "none";
+		layout = "inline";
+	}
+
+	public String getDirection() {
+		return direction;
+	}
+
+	public void setDirection(String direction) {
+		this.direction = direction;
+	}
+
+	public boolean isFollowMouse() {
+		return followMouse;
+	}
+
+	public void setFollowMouse(boolean followMouse) {
+		this.followMouse = followMouse;
+	}
+
+	public int getHorizontalOffset() {
+		return horizontalOffset;
+	}
+
+	public void setHorizontalOffset(int horizontalOffset) {
+		this.horizontalOffset = horizontalOffset;
+	}
+
+	public boolean isDisabled() {
+		return disabled;
+	}
+
+	public void setDisabled(boolean disabled) {
+		this.disabled = disabled;
+	}
+
+	public String getMode() {
+		return mode;
+	}
+
+	public void setMode(String mode) {
+		this.mode = mode;
+	}
+
+	public boolean isRendered() {
+		return rendered;
+	}
+
+	public void setRendered(boolean rendered) {
+		this.rendered = rendered;
+	}
+
+	public String getValue() {
+		return value;
+	}
+
+	public void setValue(String value) {
+		this.value = value;
+	}
+
+	public int getVerticalOffset() {
+		return verticalOffset;
+	}
+
+	public void setVerticalOffset(int verticalOffset) {
+		this.verticalOffset = verticalOffset;
+	}
+
+	public String getStyle() {
+		return style;
+	}
+
+	public void setStyle(String style) {
+		this.style = style;
+	}
+
+	public int getDelay() {
+		return delay;
+	}
+
+	public void setDelay(int delay) {
+		this.delay = delay;
+	}
+
+}

Added: trunk/test-applications/facelets/src/main/java/tree/Bean.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/tree/Bean.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/tree/Bean.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,336 @@
+package tree;
+
+import java.io.IOException;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.LinkedHashMap;
+import java.util.Map;
+import java.util.Set;
+
+import javax.faces.FacesException;
+import javax.faces.component.UIComponent;
+import javax.faces.context.FacesContext;
+import javax.faces.event.FacesEvent;
+
+import org.ajax4jsf.context.AjaxContext;
+import org.richfaces.component.UITree;
+import org.richfaces.component.UITreeNode;
+import org.richfaces.component.xml.XmlTreeDataBuilder;
+import org.richfaces.event.DropEvent;
+import org.richfaces.event.NodeExpandedEvent;
+import org.richfaces.event.NodeSelectedEvent;
+import org.richfaces.model.ListRowKey;
+import org.richfaces.model.TreeNode;
+import org.richfaces.model.TreeNodeImpl;
+import org.richfaces.model.TreeRowKey;
+import org.xml.sax.InputSource;
+import org.xml.sax.SAXException;
+
+public class Bean {
+	private String switchType = "client";
+	private TreeNode data;
+	private TreeNode selectedNode = null;
+	private Map selectedNodeChildren = new LinkedHashMap();
+	private String commandButtonCaption = "Set user icons";
+	private String iconCollapsed = null;
+	private String iconExpanded = null;
+	private String iconLeaf = null;
+	private String icon = null;
+	private boolean renderFacets = false;
+	private String pathToExpand;
+	private boolean dragOn = true;
+	private TreeNodeImpl data1;
+	private int counter = 0;
+	private String expandPath;
+	private UITree tree;
+
+	public Bean() {
+		try {
+			FacesContext context = FacesContext.getCurrentInstance();
+			data = XmlTreeDataBuilder
+					.build(new InputSource(getClass().getResourceAsStream("test.xml")));
+			TreeNode pomData = XmlTreeDataBuilder.build(new InputSource(getClass()
+					.getResourceAsStream("pom_sample.xml")));
+			Iterator children = pomData.getChildren();
+			while (children.hasNext()) {
+				Map.Entry entry = (Map.Entry) children.next();
+				data.addChild(new Long(1), (TreeNode) entry.getValue());
+			}
+		} catch (SAXException e) {
+			e.printStackTrace();
+		} catch (IOException e) {
+			e.printStackTrace();
+		}
+
+		data1 = new TreeNodeImpl();
+		data1.setData("Root node");
+		for (int i = 0; i < 10; i++) {
+			TreeNodeImpl child = new TreeNodeImpl() {
+
+				public Object getData() {
+					return super.getData() + " " + counter;
+				}
+			};
+			String id = Integer.toString(i);
+			child.setData("Node: " + id);
+			data1.addChild(id, child);
+		}
+		initData();
+	}
+
+	public String getIcon() {
+		return icon;
+	}
+
+	public void setIcon(String icon) {
+		this.icon = icon;
+	}
+
+	public String getCommandButtonCaption() {
+		return commandButtonCaption;
+	}
+
+	public void setCommandButtonCaption(String commandButtonCaption) {
+		this.commandButtonCaption = commandButtonCaption;
+	}
+
+	public void changeIcons(javax.faces.event.ActionEvent event) {
+		if (null == icon) {
+			iconCollapsed = "/pics/header.png";
+			iconExpanded = "/pics/item.png";
+			iconLeaf = "/pics/ajax_process.gif";
+			icon = "/pics/ajax_stoped.gif";
+			commandButtonCaption = "Set defoult icons";
+		} else {
+			iconCollapsed = null;
+			iconExpanded = null;
+			iconLeaf = null;
+			icon = null;
+			commandButtonCaption = "Set user icons";
+		}
+	}
+
+	public TreeNode getData() {
+		return data;
+	}
+
+	public String getSwitchType() {
+		return switchType;
+	}
+
+	public void setSwitchType(String switchType) {
+		this.switchType = switchType;
+	}
+
+	private UITree getTree(FacesEvent event) {
+		UIComponent component = event.getComponent();
+		if (component instanceof UITree) {
+			return ((UITree) component);
+		}
+
+		if (component instanceof UITreeNode) {
+			return ((UITree) component.getParent());
+		}
+
+		return null;
+	}
+
+	public void up() {
+		if (selectedNode.getParent() != null) {
+			selectedNode = selectedNode.getParent();
+		}
+		initData();
+	}
+
+	public void onSelect(NodeSelectedEvent event) {
+		System.out.println("Node selected: " + getTree(event).getRowKey());
+		if (getTree(event).getTreeNode() != null) {
+			selectedNode = getTree(event).getTreeNode();
+			initData();
+		}
+	}
+
+	public void onSelectInc(NodeSelectedEvent event) {
+		counter++;
+
+		UITree tree = getTree(event);
+		TreeRowKey key = (TreeRowKey) tree.getRowKey();
+		Set keys = tree.getAjaxKeys();
+		if (keys == null) {
+			keys = new HashSet();
+			tree.setAjaxKeys(keys);
+		}
+
+		AjaxContext ajaxCtx = AjaxContext.getCurrentInstance();
+		FacesContext fctx = FacesContext.getCurrentInstance();
+		tree.setRowKey(null);
+		// Force more than one node to update here:
+		for (int i = 0; i < 5; i++) {
+			ListRowKey dirtyKey = new ListRowKey(Integer.toString(i));
+			keys.add(dirtyKey);
+			tree.setRowKey(dirtyKey);
+			ajaxCtx.addComponentToAjaxRender(tree.getParent(), tree.getClientId(fctx));
+		}
+		tree.setRowKey(key);
+	}
+
+	private void initData() {
+		selectedNodeChildren.clear();
+		if (selectedNode != null) {
+			Iterator iter = selectedNode.getChildren();
+			int i = 0;
+			while (iter.hasNext()) {
+				Map.Entry entry = (Map.Entry) iter.next();
+				selectedNodeChildren
+						.put(((TreeNode) entry.getValue()).getData(), Integer.toString(i++));
+			}
+		}
+	}
+
+	public void onExpand(NodeExpandedEvent event) {
+		UITree tree = getTree(event);
+		System.out.println("Node " + (tree.isExpanded() ? "expanded" : "collapsed") + " "
+				+ tree.getRowKey());
+	}
+
+	public String expand() {
+		if (expandPath != null && expandPath.length() != 0) {
+			try {
+				tree.queueNodeExpand(new ListRowKey(expandPath));
+			} catch (IOException e) {
+				// TODO Auto-generated catch block
+				e.printStackTrace();
+			}
+		}
+
+		return null;
+	}
+
+	public String getExpandPath() {
+		return expandPath;
+	}
+
+	public void setExpandPath(String expandPath) {
+		this.expandPath = expandPath;
+	}
+
+	public UIComponent getTree() {
+		return tree;
+	}
+
+	public void setTree(UIComponent tree) {
+		this.tree = (UITree) tree;
+	}
+
+	public String collapseAll() throws IOException {
+		this.tree.queueCollapseAll();
+		return null;
+	}
+
+	public String expandAll() {
+		try {
+			this.tree.queueExpandAll();
+		} catch (IOException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
+		return null;
+	}
+
+	public Map getSelectedNodeChildren() {
+		return selectedNodeChildren;
+	}
+
+	public void setSelectedNodeChildren(Map selectedNodeChildren) {
+		this.selectedNodeChildren = selectedNodeChildren;
+	}
+
+	public TreeNode getSelectedNode() {
+		return selectedNode;
+	}
+
+	public void setSelectedNode(TreeNode selectedNode) {
+		this.selectedNode = selectedNode;
+	}
+
+	public void processDrop(DropEvent dropEvent) {
+		System.out.println("Should be printed twice per event!!!");
+		System.out.println(dropEvent);
+		System.out.println("DragValue: " + dropEvent.getDragValue());
+		System.out.println("DropValue: " + dropEvent.getDropValue());
+		System.out.println("Drag row data: "
+				+ getTree(dropEvent).getRowData(dropEvent.getDragValue()));
+		System.out.println("Drop row data: "
+				+ getTree(dropEvent).getRowData(dropEvent.getDropValue()));
+		System.out.println("+++++");
+	}
+
+	public String getIconCollapsed() {
+		return iconCollapsed;
+	}
+
+	public void setIconCollapsed(String iconCollapsed) {
+		this.iconCollapsed = iconCollapsed;
+	}
+
+	public String getIconExpanded() {
+		return iconExpanded;
+	}
+
+	public void setIconExpanded(String iconExpanded) {
+		this.iconExpanded = iconExpanded;
+	}
+
+	public String getIconLeaf() {
+		return iconLeaf;
+	}
+
+	public void setIconLeaf(String iconLeaf) {
+		this.iconLeaf = iconLeaf;
+	}
+
+	public String getPathToExpand() {
+		return pathToExpand;
+	}
+
+	public void setPathToExpand(String pathToExpand) {
+		this.pathToExpand = pathToExpand;
+	}
+
+	public String expandNode() {
+		String pathToExpand = getPathToExpand();
+		if (pathToExpand != null && pathToExpand.trim().length() != 0) {
+			try {
+				((UITree) getTree()).queueNodeExpand(new ListRowKey(pathToExpand));
+			} catch (IOException e) {
+				throw new FacesException(e);
+			}
+		}
+
+		return null;
+	}
+
+	public boolean isDragOn() {
+		return dragOn;
+	}
+
+	public void setDragOn(boolean dragOn) {
+		this.dragOn = dragOn;
+	}
+
+	public TreeNodeImpl getData1() {
+		return data1;
+	}
+
+	public void setData1(TreeNodeImpl data1) {
+		this.data1 = data1;
+	}
+
+	public boolean isRenderFacets() {
+		return renderFacets;
+	}
+
+	public void setRenderFacets(boolean renderFacets) {
+		this.renderFacets = renderFacets;
+	}
+}

Added: trunk/test-applications/facelets/src/main/java/tree/Library.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/tree/Library.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/tree/Library.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,117 @@
+package tree;
+
+
+
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+
+import org.richfaces.model.TreeNode;
+
+public class Library implements TreeNode {
+
+	private Map pathways = null;
+	private Object state1;
+	// private Object state2;
+
+	private List listPathway;
+
+	public Library() {
+	}
+
+	public Library(List l) {
+		this.listPathway = l;
+	}
+
+	private Map getPathways() {
+		if (this.pathways == null) {
+			initData();
+		}
+		return this.pathways;
+	}
+
+	public void addPathway(Pathway pw) {
+		addChild(Long.toString(pw.getId()), pw);
+		pw.setParent(this);
+	}
+
+	public void addChild(Object identifier, TreeNode child) {
+		getPathways().put(identifier, child);
+	}
+
+	public TreeNode getChild(Object id) {
+		return (TreeNode) getPathways().get(id);
+	}
+
+	public Iterator getChildren() {
+		return getPathways().entrySet().iterator();
+	}
+
+	public Object getData() {
+		return this;
+	}
+
+	public TreeNode getParent() {
+		return null;
+	}
+
+	public boolean isLeaf() {
+		return getPathways().isEmpty();
+	}
+
+	public void removeChild(Object id) {
+		getPathways().remove(id);
+	}
+
+	public void setData(Object data) {
+	}
+
+	public void setParent(TreeNode parent) {
+	}
+
+	public String getType() {
+		return "library";
+	}
+
+	private long nextId = 0;
+
+	private long getNextId() {
+		return nextId++;
+	}
+
+	private Map pathCache = new HashMap();
+
+	private Pathway getPathwayByName(String name, Library library) {
+		Pathway pathway = (Pathway) pathCache.get(name);
+		if (pathway == null) {
+			pathway = new Pathway(getNextId());
+			pathway.setName(name);
+			pathCache.put(name, pathway);
+			library.addPathway(pathway);
+		}
+		return pathway;
+	}
+
+	private void initData() {
+		pathways = new HashMap();
+
+		for (int i = 0; i < 15; i++) {
+			Pathway path = getPathwayByName("PATH_" + i, this);
+			for (int j = 0; j < 20; j++) {
+				Organism org = new Organism(getNextId());
+				org.setName("ORG_" + i + "." + j);
+				path.addOrganism(org);
+			}
+		}
+
+	}
+
+	public Object getState1() {
+		return state1;
+	}
+
+	public void setState1(Object state1) {
+		this.state1 = state1;
+	}
+}
\ No newline at end of file

Added: trunk/test-applications/facelets/src/main/java/tree/Organism.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/tree/Organism.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/tree/Organism.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,77 @@
+package tree;
+
+
+
+import java.util.ArrayList;
+import java.util.Iterator;
+
+import org.richfaces.model.TreeNode;
+
+public class Organism implements TreeNode {
+	private long		id;
+	private String		name;
+	private Pathway	pathway;
+
+	public Organism(long id) {
+		this.id = id;
+	}
+
+	public void addChild(Object identifier, TreeNode child) {
+		throw new UnsupportedOperationException("Organisms do not have children");
+	}
+
+	public TreeNode getChild(Object id) {
+		throw new UnsupportedOperationException("Organisms do not have children");
+	}
+
+	public Iterator getChildren() {
+		// TODO: Fix me!
+		return new ArrayList().iterator(); // work around limitation for TreeNode
+	}
+
+	public Object getData() {
+		return this;
+	}
+
+	public TreeNode getParent() {
+		return pathway;
+	}
+
+	public boolean isLeaf() {
+		return true;
+	}
+
+	public void removeChild(Object id) {
+		throw new UnsupportedOperationException("Organisms do not have children");
+	}
+
+	public void setData(Object data) {
+	}
+
+	public void setParent(TreeNode parent) {
+		this.pathway = (Pathway) parent;
+	}
+
+	public Pathway getPathway() {
+		return pathway;
+	}
+
+	public void setPathway(Pathway artist) {
+		this.pathway = artist;
+	}
+
+	public String getName() {
+		return name;
+	}
+
+	public void setName(String title) {
+		this.name = title;
+	}
+
+	public long getId() {
+		return id;
+	}
+	public String getType() {
+		return "organism";
+	}
+}

Added: trunk/test-applications/facelets/src/main/java/tree/Pathway.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/tree/Pathway.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/tree/Pathway.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,85 @@
+package tree;
+
+
+
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+
+import org.richfaces.model.TreeNode;
+
+public class Pathway implements TreeNode {
+
+    private long id;
+    private Map organisms = new HashMap();
+    private String name;
+    private Library library;
+
+
+    public Pathway(long id) {
+        this.id = id;
+    }
+
+    public void addOrganism(Organism org) {
+        addChild(Long.toString(org.getId()), org);
+        org.setParent(this);
+    }
+
+    public void addChild(Object identifier, TreeNode child) {
+        organisms.put(identifier, child);
+    }
+
+    public TreeNode getChild(Object id) {
+        return (TreeNode) organisms.get(id);
+    }
+
+    public Iterator getChildren() {
+        return organisms.entrySet().iterator();
+    }
+
+    public Object getData() {
+        return this;
+    }
+
+    public TreeNode getParent() {
+        return library;
+    }
+
+    public boolean isLeaf() {
+        return organisms.isEmpty();
+    }
+
+    public void removeChild(Object id) {
+        organisms.remove(id);
+    }
+
+    public void setData(Object data) {
+    }
+
+    public void setParent(TreeNode parent) {
+        library = (Library) parent;
+    }
+
+    public long getId() {
+        return id;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public Library getLibrary() {
+        return library;
+    }
+
+    public void setLibrary(Library library) {
+        this.library = library;
+    }
+    public String getType() {
+        return "pathway";
+    }
+}
\ No newline at end of file

Added: trunk/test-applications/facelets/src/main/java/tree/TreeBean.java
===================================================================
--- trunk/test-applications/facelets/src/main/java/tree/TreeBean.java	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/tree/TreeBean.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,7 @@
+package tree;
+
+public class TreeBean {
+    public Object getPathwayTree() {
+        return new Library();
+    }
+}

Added: trunk/test-applications/facelets/src/main/java/tree/pom_sample.xml
===================================================================
--- trunk/test-applications/facelets/src/main/java/tree/pom_sample.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/tree/pom_sample.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,102 @@
+<?xml version="1.0"?>
+
+<project>
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>org.richfaces</groupId>
+  <artifactId>tree</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.ajax4jsf.cdk</groupId>
+        <artifactId>maven-cdk-plugin</artifactId>
+        <version>1.1.0-SNAPSHOT</version>
+        <executions>
+          <execution>
+            <phase>generate-sources</phase>
+            <goals>
+              <goal>generate</goal>
+            </goals>
+          </execution>
+        </executions>
+        <configuration>
+          <library>
+            <prefix>org.richfaces</prefix>
+            <taglib>
+              <shortName>tree</shortName>
+            </taglib>
+          </library>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+  <repositories>
+    <repository>
+      <releases />
+      <snapshots>
+        <enabled>false</enabled>
+        <updatePolicy>never</updatePolicy>
+      </snapshots>
+      <id>maven2-repository.dev.java.net</id>
+      <name>Java.net Repository for Maven</name>
+      <url>https://maven2-repository.dev.java.net/nonav/repository</url>
+    </repository>
+    <repository>
+      <releases>
+        <enabled>false</enabled>
+      </releases>
+      <snapshots>
+        <updatePolicy>always</updatePolicy>
+      </snapshots>
+      <id>maven2-snapshots.ajax4jsf.org</id>
+      <name>Ajax4jsf Repository for Maven Snapshots</name>
+      <url>https://ajax4jsf.dev.java.net/nonav/snapshots</url>
+    </repository>
+  </repositories>
+  <pluginRepositories>
+    <pluginRepository>
+      <releases>
+        <enabled>false</enabled>
+      </releases>
+      <snapshots>
+        <updatePolicy>always</updatePolicy>
+      </snapshots>
+      <id>maven2-snapshots.ajax4jsf.org</id>
+      <name>Ajax4jsf Repository for Maven Snapshots</name>
+      <url>https://ajax4jsf.dev.java.net/nonav/snapshots</url>
+    </pluginRepository>
+  </pluginRepositories>
+  <dependencies>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>3.8.1</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>com.sun.facelets</groupId>
+      <artifactId>jsf-facelets</artifactId>
+      <version>1.1.6</version>
+    </dependency>
+    <dependency>
+      <groupId>javax.servlet</groupId>
+      <artifactId>servlet-api</artifactId>
+      <version>2.4</version>
+    </dependency>
+    <dependency>
+      <groupId>javax.servlet</groupId>
+      <artifactId>jsp-api</artifactId>
+      <version>2.0</version>
+    </dependency>
+    <dependency>
+      <groupId>javax.faces</groupId>
+      <artifactId>jsf-api</artifactId>
+      <version>1.1_02</version>
+    </dependency>
+    <dependency>
+      <groupId>org.ajax4jsf</groupId>
+      <artifactId>framework</artifactId>
+      <version>1.1.0-SNAPSHOT</version>
+    </dependency>
+  </dependencies>
+</project>
\ No newline at end of file

Added: trunk/test-applications/facelets/src/main/java/tree/test.xml
===================================================================
--- trunk/test-applications/facelets/src/main/java/tree/test.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/java/tree/test.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,56 @@
+<?xml version="1.0"?>
+<web-app version="2.4">
+ <description>Tree demo</description>
+ <display-name>tree-demo</display-name>
+ <context-param>
+  <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
+  <param-value>.xhtml</param-value>
+ </context-param>
+ <context-param>
+  <param-name>org.ajax4jsf.COMPRESS_SCRIPT</param-name>
+  <param-value>false</param-value>
+ </context-param>
+ <context-param>
+  <param-name>facelets.REFRESH_PERIOD</param-name>
+  <param-value>2</param-value>
+ </context-param>
+ <context-param>
+  <param-name>facelets.DEVELOPMENT</param-name>
+  <param-value>true</param-value>
+ </context-param>
+ <context-param>
+  <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
+  <param-value>client</param-value>
+ </context-param>
+ <context-param>
+  <param-name>com.sun.faces.validateXml</param-name>
+  <param-value>true</param-value>
+ </context-param>
+ <context-param>
+  <param-name>com.sun.faces.verifyObjects</param-name>
+  <param-value>true</param-value>
+ </context-param>
+ <filter>
+  <filter-name>a4j</filter-name>
+  <filter-class>org.ajax4jsf.Filter</filter-class>
+ </filter>
+ <filter-mapping>
+  <filter-name>a4j</filter-name>
+  <servlet-name>Faces Servlet</servlet-name>
+  <dispatcher>FORWARD</dispatcher>
+  <dispatcher>REQUEST</dispatcher>
+  <dispatcher>INCLUDE</dispatcher>
+ </filter-mapping>
+ <servlet>
+  <servlet-name>Faces Servlet</servlet-name>
+  <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
+  <load-on-startup>1</load-on-startup>
+ </servlet>
+ <servlet-mapping>
+  <servlet-name>Faces Servlet</servlet-name>
+  <url-pattern>*.jsf</url-pattern>
+ </servlet-mapping>
+ <login-config>
+  <auth-method>BASIC</auth-method>
+ </login-config>
+</web-app>

Added: trunk/test-applications/facelets/src/main/resources/tree/pom_sample.xml
===================================================================
--- trunk/test-applications/facelets/src/main/resources/tree/pom_sample.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/resources/tree/pom_sample.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,102 @@
+<?xml version="1.0"?>
+
+<project>
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>org.richfaces</groupId>
+  <artifactId>tree</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.ajax4jsf.cdk</groupId>
+        <artifactId>maven-cdk-plugin</artifactId>
+        <version>1.1.0-SNAPSHOT</version>
+        <executions>
+          <execution>
+            <phase>generate-sources</phase>
+            <goals>
+              <goal>generate</goal>
+            </goals>
+          </execution>
+        </executions>
+        <configuration>
+          <library>
+            <prefix>org.richfaces</prefix>
+            <taglib>
+              <shortName>tree</shortName>
+            </taglib>
+          </library>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+  <repositories>
+    <repository>
+      <releases />
+      <snapshots>
+        <enabled>false</enabled>
+        <updatePolicy>never</updatePolicy>
+      </snapshots>
+      <id>maven2-repository.dev.java.net</id>
+      <name>Java.net Repository for Maven</name>
+      <url>https://maven2-repository.dev.java.net/nonav/repository</url>
+    </repository>
+    <repository>
+      <releases>
+        <enabled>false</enabled>
+      </releases>
+      <snapshots>
+        <updatePolicy>always</updatePolicy>
+      </snapshots>
+      <id>maven2-snapshots.ajax4jsf.org</id>
+      <name>Ajax4jsf Repository for Maven Snapshots</name>
+      <url>https://ajax4jsf.dev.java.net/nonav/snapshots</url>
+    </repository>
+  </repositories>
+  <pluginRepositories>
+    <pluginRepository>
+      <releases>
+        <enabled>false</enabled>
+      </releases>
+      <snapshots>
+        <updatePolicy>always</updatePolicy>
+      </snapshots>
+      <id>maven2-snapshots.ajax4jsf.org</id>
+      <name>Ajax4jsf Repository for Maven Snapshots</name>
+      <url>https://ajax4jsf.dev.java.net/nonav/snapshots</url>
+    </pluginRepository>
+  </pluginRepositories>
+  <dependencies>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>3.8.1</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>com.sun.facelets</groupId>
+      <artifactId>jsf-facelets</artifactId>
+      <version>1.1.6</version>
+    </dependency>
+    <dependency>
+      <groupId>javax.servlet</groupId>
+      <artifactId>servlet-api</artifactId>
+      <version>2.4</version>
+    </dependency>
+    <dependency>
+      <groupId>javax.servlet</groupId>
+      <artifactId>jsp-api</artifactId>
+      <version>2.0</version>
+    </dependency>
+    <dependency>
+      <groupId>javax.faces</groupId>
+      <artifactId>jsf-api</artifactId>
+      <version>1.1_02</version>
+    </dependency>
+    <dependency>
+      <groupId>org.ajax4jsf</groupId>
+      <artifactId>framework</artifactId>
+      <version>1.1.0-SNAPSHOT</version>
+    </dependency>
+  </dependencies>
+</project>
\ No newline at end of file

Added: trunk/test-applications/facelets/src/main/resources/tree/test.xml
===================================================================
--- trunk/test-applications/facelets/src/main/resources/tree/test.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/resources/tree/test.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,56 @@
+<?xml version="1.0"?>
+<web-app version="2.4">
+ <description>Tree demo</description>
+ <display-name>tree-demo</display-name>
+ <context-param>
+  <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
+  <param-value>.xhtml</param-value>
+ </context-param>
+ <context-param>
+  <param-name>org.ajax4jsf.COMPRESS_SCRIPT</param-name>
+  <param-value>false</param-value>
+ </context-param>
+ <context-param>
+  <param-name>facelets.REFRESH_PERIOD</param-name>
+  <param-value>2</param-value>
+ </context-param>
+ <context-param>
+  <param-name>facelets.DEVELOPMENT</param-name>
+  <param-value>true</param-value>
+ </context-param>
+ <context-param>
+  <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
+  <param-value>client</param-value>
+ </context-param>
+ <context-param>
+  <param-name>com.sun.faces.validateXml</param-name>
+  <param-value>true</param-value>
+ </context-param>
+ <context-param>
+  <param-name>com.sun.faces.verifyObjects</param-name>
+  <param-value>true</param-value>
+ </context-param>
+ <filter>
+  <filter-name>a4j</filter-name>
+  <filter-class>org.ajax4jsf.Filter</filter-class>
+ </filter>
+ <filter-mapping>
+  <filter-name>a4j</filter-name>
+  <servlet-name>Faces Servlet</servlet-name>
+  <dispatcher>FORWARD</dispatcher>
+  <dispatcher>REQUEST</dispatcher>
+  <dispatcher>INCLUDE</dispatcher>
+ </filter-mapping>
+ <servlet>
+  <servlet-name>Faces Servlet</servlet-name>
+  <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
+  <load-on-startup>1</load-on-startup>
+ </servlet>
+ <servlet-mapping>
+  <servlet-name>Faces Servlet</servlet-name>
+  <url-pattern>*.jsf</url-pattern>
+ </servlet-mapping>
+ <login-config>
+  <auth-method>BASIC</auth-method>
+ </login-config>
+</web-app>

Added: trunk/test-applications/facelets/src/main/webapp/Calendar/Calendar.xhtml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/Calendar/Calendar.xhtml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/Calendar/Calendar.xhtml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,123 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:a4j="https://ajax4jsf.dev.java.net/ajax"
+	xmlns:f="http://java.sun.com/jsf/core"
+	xmlns:h="http://java.sun.com/jsf/html"
+	xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+
+<f:view>
+	<head>
+	<title></title>
+	<style type="text/css">
+			.smallText {
+				font-size: xx-small;
+			}
+			.largeText {
+				font-size: xx-large;
+			}
+			
+			.Selecteddayclass {
+				background-color: #0087FF;
+			}
+		</style>
+	</head>
+
+	<body>
+	<a4j:outputPanel ajaxRendered="true">
+		<h:messages />
+	</a4j:outputPanel>
+	<h:form>
+
+		<rich:calendar id="calendar" data="#{calendarDataModel}"
+			locale="#{calendarBean.locale}" popup="#{calendarBean.popup}"
+			datePattern="#{calendarBean.pattern}"
+			weekDayLabelsShort="#{calendarBean.weekDayLabelsShort}"
+			value="#{calendarBean.selectedDate}"
+			currentDate="#{calendarBean.currentDate}"
+			jointPoint="#{calendarBean.jointPoint}"
+			direction="#{calendarBean.direction}" buttonLabel="PopUp">
+
+			<f:validator validatorId="org.richfaces.CalendarValidator" />
+
+			<h:panelGrid columns="2">
+				<f:verbatim>
+					<p style="padding: 2px;" class="largeText">{day}</p>
+				</f:verbatim>
+				<h:panelGrid>
+					<h:outputText styleClass="smallText" value="{data.enLabel}" />
+					<h:outputText styleClass="smallText" value="{data.frLabel}" />
+					<h:outputText styleClass="smallText" value="{data.deLabel}" />
+				</h:panelGrid>
+			</h:panelGrid>
+		</rich:calendar>
+
+		<h:panelGrid columns="2">
+			<h:outputText value="Select Locale:" />
+			<h:selectOneRadio onchange="submit()" value="en/US"
+				valueChangeListener="#{calendarBean.selectLocale}">
+				<f:selectItem itemLabel="US" itemValue="en/US" />
+				<f:selectItem itemLabel="DE" itemValue="de/DE" />
+				<f:selectItem itemLabel="FR" itemValue="fr/FR" />
+				<f:selectItem itemLabel="RU" itemValue="ru/RU" />
+			</h:selectOneRadio>
+			<h:outputText value="Popup Mode:" />
+			<h:selectBooleanCheckbox value="#{calendarBean.popup}"
+				onclick="submit()" />
+			<h:outputText value="Custom day labels:" />
+			<h:selectBooleanCheckbox value="#{calendarBean.useCustomDayLabels}"
+				onclick="submit()" />
+			<h:outputText value="Select Date Pattern:" />
+			<h:selectOneMenu value="#{calendarBean.pattern}" onchange="submit()">
+				<f:selectItem itemLabel="d/M/yy" itemValue="d/M/yy" />
+				<f:selectItem itemLabel="dd/M/yy" itemValue="dd/M/yy" />
+				<f:selectItem itemLabel="d/MMM/y" itemValue="d/MMM/y" />
+				<f:selectItem itemLabel="MMM d, yyyy" itemValue="MMM d, yyyy" />
+			</h:selectOneMenu>
+			<h:inputText id="selectdate" />
+			<h:commandButton type="button" value="Select Date"
+				onclick="$(this.form.id+':calendar').component.selectDate(this.form[this.form.id+':selectdate'].value);" />
+			<h:outputText value="Select Popup Joint Point:" />
+			<h:selectOneRadio onchange="submit()"
+				value="#{calendarBean.jointPoint}"
+				valueChangeListener="#{calendarBean.selectJointPoint}">
+				<f:selectItem itemLabel="bottom-right" itemValue="bottom-right" />
+				<f:selectItem itemLabel="bottom-left" itemValue="bottom-left" />
+				<f:selectItem itemLabel="top-right" itemValue="top-right" />
+				<f:selectItem itemLabel="top-left" itemValue="top-left" />
+			</h:selectOneRadio>
+			<h:outputText value="Select Popup Direction:" />
+			<h:selectOneRadio onchange="submit()"
+				value="#{calendarBean.direction}"
+				valueChangeListener="#{calendarBean.selectDirection}">
+				<f:selectItem itemLabel="bottom-right" itemValue="bottom-right" />
+				<f:selectItem itemLabel="bottom-left" itemValue="bottom-left" />
+				<f:selectItem itemLabel="top-right" itemValue="top-right" />
+				<f:selectItem itemLabel="top-left" itemValue="top-left" />
+				<f:selectItem itemLabel="auto" itemValue="auto" />
+			</h:selectOneRadio>
+
+			<!-- 	<h:commandButton id="calendarPopup" type="button" value="popup" onclick="$(this.form.id+':calendar').component.doSwitch();"/>-->
+	
+		</h:panelGrid>
+
+		<h:outputText value="Current date: " />
+		<h:outputText value="#{calendarBean.currentDateAsText}" />
+		<f:verbatim>
+			<br />
+		</f:verbatim>
+		<h:outputText value="Selected date: " />
+		<h:outputText value="#{calendarBean.selectedDate}" />
+		<f:verbatim>
+			<br />
+		</f:verbatim>
+
+		<h:commandButton value="Submit" />
+
+	</h:form>
+
+	<h:form>
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+	</body>
+</f:view>
+</html>

Added: trunk/test-applications/facelets/src/main/webapp/DataFilterSlider/DataFilterSlider.xhtml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/DataFilterSlider/DataFilterSlider.xhtml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/DataFilterSlider/DataFilterSlider.xhtml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,140 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:f="http://java.sun.com/jsf/core"
+	xmlns:a4j="https://ajax4jsf.dev.java.net/ajax"
+	xmlns:h="http://java.sun.com/jsf/html"
+	xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+<f:view>
+	<head>
+	<title></title>
+	<style type="text/css">
+
+            body{
+                font: normal 11px tahoma, sans-serif;
+            }
+
+            .column{
+                width:75px;
+                font: normal 11px tahoma, sans-serif;
+                text-align:center;
+            }
+
+            .column-index{
+                width:75px;
+                font: normal 11px tahoma, sans-serif;
+                text-align:left;
+            }
+
+            .list-row3{
+                background-color:#ececec;
+            }
+
+            .list-row1{
+                background-color:#f1f6fd;
+            }
+
+            .list-row2{
+                background-color:#fff;
+            }
+
+            .list-header{
+                font: bold 11px tahoma, sans-serif;
+                text-align:center;
+            }
+
+            .list-table1{
+                border:1px solid #bed6f8;
+            }
+
+            .list-table2{
+                border:1px solid #bed6f8;
+            }
+
+            
+            
+        </style>
+
+	</head>
+	<body>
+	<a4j:form id="form1" reRender="list-body" ajaxSubmit="true"
+		ignoreDupResponses="true" requestDelay="100">
+
+		<a4j:region id="stat1">
+
+			<a4j:outputPanel id="slider-body">
+				<rich:dataFilterSlider sliderListener="#{mybean.doSlide}"
+					binding="#{inventoryList.dataFilterSlider}" for="carList"
+					forValRef="inventoryList.carInventory" filterBy="getMileage"
+					manualInput="true" onSlide="true" onChange="true"
+					storeResults="true" trackStyleClass="track" width="400px"
+					styleClass="slider-container" startRange="10000" endRange="60000"
+					increment="10000" rangeStyleClass="range" trailer="true"
+					trailerStyleClass="trailer" handleStyleClass="handle"
+					handleValue="10000" id="slider_1">
+				</rich:dataFilterSlider>
+
+			</a4j:outputPanel>
+
+
+			<a4j:outputPanel id="list-body">
+				<f:verbatim>
+
+				</f:verbatim>
+				<h:dataTable id="carIndex" rows="10"
+					binding="#{inventoryList.carMakeIndexUIData}"
+					value="#{inventoryList.carMakeIndex}" var="category"
+					styleClass="list-table1" columnClasses="column-index"
+					rowClasses="list-row3">
+
+					<h:column>
+						<a4j:commandLink actionListener="#{inventoryList.filterCarList}"
+							reRender="carList">
+							<h:outputText value="#{category}" />
+							<f:attribute name="filterRule" value="showTable" />
+
+						</a4j:commandLink>
+					</h:column>
+
+				</h:dataTable>
+
+				<h:dataTable id="carList" rows="10"
+					value="#{inventoryList.carInventory}" var="category"
+					rowClasses="list-row1, list-row2" columnClasses="column"
+					headerClass="list-header" styleClass="list-table2">
+
+					<h:column>
+						<f:facet name="header">
+							<h:outputText styleClass="headerText" value="Make" />
+						</f:facet>
+						<h:outputText value="#{category.make}" />
+					</h:column>
+					<h:column>
+						<f:facet name="header">
+							<h:outputText styleClass="headerText" value="Model" />
+						</f:facet>
+						<h:outputText value="#{category.model}" />
+					</h:column>
+					<h:column>
+						<f:facet name="header">
+							<h:outputText styleClass="headerText"
+								value="#{inventoryList.priceColumnName}" />
+						</f:facet>
+						<h:outputText value="#{category.price}" />
+					</h:column>
+					<h:column>
+						<f:facet name="header">
+							<h:outputText styleClass="headerText"
+								value="#{inventoryList.mileageColumnName}" />
+						</f:facet>
+						<h:outputText value="#{category.mileage}" />
+					</h:column>
+				</h:dataTable>
+			</a4j:outputPanel>
+		</a4j:region>
+	</a4j:form>
+	<h:form>
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+	</body>
+</f:view>
+</html>

Added: trunk/test-applications/facelets/src/main/webapp/DataScroller/DS.xhtml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/DataScroller/DS.xhtml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/DataScroller/DS.xhtml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,34 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:a4j="https://ajax4jsf.dev.java.net/ajax"
+	xmlns:f="http://java.sun.com/jsf/core"
+	xmlns:h="http://java.sun.com/jsf/html"
+	xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+<f:view>
+	<head>
+	<title></title>
+	</head>
+	<body>
+	<h:form dir="DSform">
+		<h:dataTable width="400" id="dataTableId"
+			value="#{dataScroller.dataTable}" var="dT" cellpadding="5px" rows="5"
+			border="1">
+
+			<a4j:facet name="header">
+				<rich:datascroller maxPages="20"></rich:datascroller>
+			</a4j:facet>
+			<h:column>
+				<h:outputText value="#{dT.data0}" />
+			</h:column>
+			<h:column>
+				<h:outputText value="#{dT.data1}" />
+			</h:column>
+
+
+		</h:dataTable>
+
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+	</body>
+</f:view>
+</html>

Added: trunk/test-applications/facelets/src/main/webapp/DradAndDrop/DragAndDrop.xhtml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/DradAndDrop/DragAndDrop.xhtml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/DradAndDrop/DragAndDrop.xhtml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,204 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:a4j="https://ajax4jsf.dev.java.net/ajax"
+	xmlns:f="http://java.sun.com/jsf/core"
+	xmlns:rich="http://richfaces.ajax4jsf.org/rich"
+	xmlns:h="http://java.sun.com/jsf/html">
+<f:view>
+	<head>
+	<title></title>
+	<style type="text/css">
+			.dropzoneDecoration {
+				width: 70px; height: 70px; border: 2px dotted navy;
+			}
+			
+			.accept {
+				border: 3px dotted green;
+				padding: 10px;
+			}
+
+			.reject {
+				border: 3px dashed red;
+				padding: 10px;
+			}
+		</style>
+	</head>
+	<body>
+	<h:form id="form">
+		<rich:panel>
+			<h:selectOneRadio binding="#{skinBean.component}" />
+			<h:commandLink action="#{skinBean.change}" value="set skin" />
+		</rich:panel>
+
+		<h:panelGroup id="dragValueText">
+			<h:outputText value="#{dndBean.dragValue}" />
+		</h:panelGroup>
+
+		<h:panelGrid columns="2">
+			<h:dataTable var="type" value="#{dndBean.types}">
+				<h:column>
+					<h:panelGrid styleClass="dropzoneDecoration" id="drag1">
+						<h:outputText value="#{type} - drag" />
+						<rich:dragSupport dragType="#{type}" dragValue="#{type} - value"
+							action="#{dndBean.dragAction}"
+							dragListener="#{dndBean.processDrag}">
+						</rich:dragSupport>
+					</h:panelGrid>
+				</h:column>
+			</h:dataTable>
+
+			<h:dataTable var="type" value="#{dndBean.types}">
+				<h:column>
+					<h:panelGrid styleClass="dropzoneDecoration" id="drop2">
+						<h:outputText value="#{type} - drop" />
+						<rich:dropSupport reRender="dragValueText"
+							action="#{dndBean.dropAction}" acceptedTypes="#{type}"
+							dropListener="#{dndBean.processDrop}" dropValue="#{type} - value">
+						</rich:dropSupport>
+					</h:panelGrid>
+				</h:column>
+			</h:dataTable>
+		</h:panelGrid>
+
+		<rich:dragIndicator id="indicator" acceptClass="accept"
+			rejectClass="reject">
+			<f:facet name="single">
+				<f:verbatim>{marker} <b>{testDrag}</b> {label}</f:verbatim>
+			</f:facet>
+			<rich:dndParam name="accept" value="ACCEPT:" />
+			<rich:dndParam name="reject">
+				<f:verbatim>
+					<i style="text-decoration: line-through;">REJECT:</i>
+				</f:verbatim>
+			</rich:dndParam>
+		</rich:dragIndicator>
+
+		<rich:dragIndicator id="dIndicator" acceptClass="defaultIndicator"
+			rejectClass="reject">
+			<f:facet name="single">
+				<f:verbatim>{marker} <b>{testDrag}</b> {label}</f:verbatim>
+			</f:facet>
+			<rich:dndParam name="accept" value="ACCEPT:" />
+			<rich:dndParam name="reject">
+				<f:verbatim>
+					<i style="text-decoration: line-through;">REJECT:</i>
+				</f:verbatim>
+			</rich:dndParam>
+		</rich:dragIndicator>
+
+		<h:panelGrid columns="1" style="position: relative; left: 140px;">
+			<h:panelGrid columns="1"
+				style="position: absolute; top: 30px; left: 300px;">
+				<rich:dragIndicator id="defaultIndicator">
+				</rich:dragIndicator>
+			</h:panelGrid>
+		</h:panelGrid>
+
+		<h:panelGrid columns="4" cellspacing="20">
+			<h:panelGrid styleClass="dropzoneDecoration" id="grid1">
+				<f:verbatim>Accepts file and folder... Customizes</f:verbatim>
+				<rich:dropSupport id="zone1"
+					ondrop="var zone = $('form:grid1'); zone.style.borderColor= 'red'; setTimeout( function() { this.style.borderColor= 'navy'; }.bind(zone), 300);"
+					acceptedTypes="file, folder" typeMapping="{file: testDrop}">
+					<rich:dndParam name="testDrop">
+						<h:graphicImage height="16" width="16"
+							value="#{icon.iconFileManager}" />
+					</rich:dndParam>
+				</rich:dropSupport>
+			</h:panelGrid>
+
+			<h:panelGrid styleClass="dropzoneDecoration" id="grid2">
+				<f:verbatim>Accepts none</f:verbatim>
+				<rich:dropSupport>
+				</rich:dropSupport>
+			</h:panelGrid>
+
+			<h:panelGrid styleClass="dropzoneDecoration" id="grid3">
+				<f:verbatim>Accepts none... Customizes</f:verbatim>
+				<rich:dropSupport typeMapping="{file: testDrop}">
+					<rich:dndParam name="testDrop">
+						<h:graphicImage height="16" width="16"
+							value="#{icon.iconFileManagerReject}" />
+					</rich:dndParam>
+				</rich:dropSupport>
+			</h:panelGrid>
+
+			<h:panelGrid styleClass="dropzoneDecoration" id="grid4">
+				<f:verbatim>Accepts file and folder</f:verbatim>
+				<rich:dropSupport acceptedTypes="file, folder">
+					<rich:dndParam name="testDrop" value="testDropValue" />
+				</rich:dropSupport>
+			</h:panelGrid>
+
+			<h:panelGrid id="grid5">
+				<rich:dragSupport dragType="file">
+					<rich:dndParam name="label" value="Label" />
+					<rich:dndParam name="testDrag" value="testDragValue" />
+				</rich:dragSupport>
+				<f:verbatim>File Draggable - no indicator</f:verbatim>
+			</h:panelGrid>
+
+			<h:panelGrid id="grid6">
+				<rich:dragSupport dragType="file" dragIndicator="indicator">
+					<rich:dndParam name="label" value="Label" />
+					<rich:dndParam name="testDrag" value="testDragValue" />
+				</rich:dragSupport>
+				<f:verbatim>File Draggable with indicator</f:verbatim>
+			</h:panelGrid>
+
+			<h:panelGrid id="grid7">
+				<rich:dragSupport dragType="folder" dragIndicator="indicator">
+					<rich:dndParam name="label" value="Label" />
+					<rich:dndParam name="testDrag" value="testDragValue for Folder" />
+				</rich:dragSupport>
+				<f:verbatim>Folder Draggable with indicator</f:verbatim>
+			</h:panelGrid>
+
+			<h:outputText />
+
+			<h:panelGrid id="grid8">
+				<rich:dragSupport dragType="folder">
+					<rich:dndParam name="label" value="Label" />
+					<rich:dndParam name="testDrag" value="testDragValue for Folder" />
+				</rich:dragSupport>
+				<f:verbatim>Folder Draggable - no indicator</f:verbatim>
+			</h:panelGrid>
+
+			<h:panelGrid id="grid9">
+				<rich:dragSupport dragType="file" dragIndicator="defaultIndicator">
+					<rich:dndParam name="testDrag" value="testDragValue" />
+					<rich:dndParam name="marker" value="testMarkerValue" />
+					<rich:dndParam name="label" value="testDragValue" />
+				</rich:dragSupport>
+				<f:verbatim>File Draggable with defaultIndicator</f:verbatim>
+			</h:panelGrid>
+
+			<h:panelGrid id="grid10">
+				<rich:dragSupport dragType="folder" dragIndicator="defaultIndicator">
+					<rich:dndParam name="label" value="testDragValue for Folder" />
+				</rich:dragSupport>
+				<f:verbatim>Folder Draggable with defaultIndicator</f:verbatim>
+			</h:panelGrid>
+			<h:outputText />
+		</h:panelGrid>
+
+		<h:panelGrid id="renderedId">
+			<rich:dragSupport dragType="file" dragIndicator="defaultIndicator">
+				<rich:dndParam name="marker" value="testMarkerValue" />
+				<rich:dndParam name="label" value="testDragValue" />
+			</rich:dragSupport>
+
+			<h:graphicImage id="dragImage" value="/pics/masshtaby_01.jpg"
+				width="200px" height="200px" />
+			<f:verbatim>dragSupport</f:verbatim>
+		</h:panelGrid>
+
+		<a4j:status startText="...request..." stopText="stop" />
+
+		<a4j:outputPanel ajaxRendered="true">
+			<h:messages />
+		</a4j:outputPanel>
+	</h:form>
+	</body>
+</f:view>
+</html>

Added: trunk/test-applications/facelets/src/main/webapp/DropDownMenu/DDMenu.xhtml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/DropDownMenu/DDMenu.xhtml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/DropDownMenu/DDMenu.xhtml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,164 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:a4j="https://ajax4jsf.dev.java.net/ajax"
+	xmlns:f="http://java.sun.com/jsf/core"
+	xmlns:h="http://java.sun.com/jsf/html"
+	xmlns:rich="http://richfaces.ajax4jsf.org/rich"
+	xmlns:c="http://java.sun.com/jsp/jstl/core">
+<f:view>
+	<head>
+	<style>
+		.mousemove {
+			border: 3px dotted green;
+			padding: 5px;
+		}
+	</style>
+	</head>
+	<body>
+	<h:form>
+		<h:panelGrid columns="3">
+			<h:panelGrid columns="2">
+				<h:outputText value="HideDelay (ms):" />
+				<h:inputText value="#{dDMenu.hideDelay}">
+					<a4j:support event="onchange" reRender="ddmId" />
+				</h:inputText>
+
+				<h:outputText value="ShowDelay (ms):" />
+				<h:inputText value="#{dDMenu.showDelay}">
+					<a4j:support event="onchange" reRender="ddmId" />
+				</h:inputText>
+
+				<h:outputText value="PopupWidth (px):" />
+				<h:inputText value="#{dDMenu.popupWidth}">
+					<a4j:support event="onchange" reRender="ddmId" />
+				</h:inputText>
+
+				<h:outputText value="horizontalOffset (px):" />
+				<h:inputText value="#{dDMenu.horizontalOffset}">
+					<a4j:support event="onchange" reRender="ddmId" />
+				</h:inputText>
+
+				<h:outputText value="verticalOffset (px):" />
+				<h:inputText value="#{dDMenu.verticalOffset}">
+					<a4j:support event="onchange" reRender="ddmId" />
+				</h:inputText>
+
+				<h:outputText value="width" />
+
+
+				<h:outputText value="Direction:" />
+				<h:selectOneRadio value="#{dDMenu.direction}">
+					<f:selectItem itemLabel="top-right" itemValue="top-right" />
+					<f:selectItem itemLabel="top-left" itemValue="top-left" />
+					<f:selectItem itemLabel="bottom-right" itemValue="bottom-right" />
+					<f:selectItem itemLabel="bottom-left" itemValue="bottom-left" />
+					<f:selectItem itemLabel="auto" itemValue="auto" />
+					<a4j:support event="onclick" reRender="ddmId" />
+				</h:selectOneRadio>
+
+				<h:outputText value="GroupDirection:" />
+				<h:selectOneRadio value="#{dDMenu.groupDirection}">
+					<f:selectItem itemLabel="top-right" itemValue="top-right" />
+					<f:selectItem itemLabel="top-left" itemValue="top-left" />
+					<f:selectItem itemLabel="bottom-right" itemValue="bottom-right" />
+					<f:selectItem itemLabel="bottom-left" itemValue="bottom-left" />
+					<f:selectItem itemLabel="auto" itemValue="auto" />
+					<a4j:support event="onclick" reRender="ddmId" />
+				</h:selectOneRadio>
+
+				<h:outputText value="JointPoint:" />
+				<h:selectOneRadio value="#{dDMenu.jointPoint}">
+					<f:selectItem itemLabel="top-right" itemValue="top-right" />
+					<f:selectItem itemLabel="top-left" itemValue="top-left" />
+					<f:selectItem itemLabel="bottom-right" itemValue="bottom-right" />
+					<f:selectItem itemLabel="bottom-left" itemValue="bottom-left" />
+					<f:selectItem itemLabel="auto" itemValue="auto" />
+					<a4j:support event="onclick" reRender="ddmId" />
+				</h:selectOneRadio>
+
+				<h:outputText value="Menu appearance event:" />
+				<h:selectOneRadio value="#{dDMenu.event}" onclick="submit()">
+					<f:selectItem itemLabel="onclick" itemValue="onclick" />
+					<f:selectItem itemLabel="onmouseover" itemValue="onmouseover" />
+					<a4j:support event="onclick" reRender="ddmId" />
+				</h:selectOneRadio>
+
+				<h:outputText value="Rendered:" />
+				<h:selectBooleanCheckbox value="#{dDMenu.rendered}"
+					onclick="submit()">
+
+				</h:selectBooleanCheckbox>
+
+				<h:outputText value="Disable some items:" />
+				<h:selectBooleanCheckbox value="#{dDMenu.disabled}">
+					<a4j:support reRender="ddmId" event="onclick" />
+				</h:selectBooleanCheckbox>
+				<h:commandButton action="#{dDMenu.changeIcons}" value="ChangeIcons" />
+			</h:panelGrid>
+
+			<rich:spacer width="300px"></rich:spacer>
+
+			<rich:panel style="width:200px; height:50px;">
+				<rich:dropDownMenu id="ddmId" value="DropDownMenu"
+					hideDelay="#{dDMenu.hideDelay}" direction="#{dDMenu.direction}"
+					horizontalOffset="#{dDMenu.horizontalOffset}"
+					jointPoint="#{dDMenu.jointPoint}" popupWidth="#{dDMenu.popupWidth}"
+					showDelay="#{dDMenu.showDelay}" rendered="#{dDMenu.rendered}"
+					verticalOffset="#{dDMenu.verticalOffset}" styleClass="panelpos">
+					<rich:menuItem icon="#{dDMenu.icon}">
+						<h:outputText value="Item1" />
+					</rich:menuItem>
+					<rich:menuSeparator />
+					<rich:menuItem icon="#{dDMenu.icon}"
+						onmousedown="alert('OnMouseDown')" selectClass="mousemove">
+						<h:outputText value="OnMouseDown" />
+					</rich:menuItem>
+					<rich:menuSeparator />
+					<rich:menuItem>
+						<h:outputText value="Item2" />
+					</rich:menuItem>
+					<rich:menuItem icon="#{dDMenu.icon}">
+						<h:outputText value="Item3" />
+					</rich:menuItem>
+					<rich:menuSeparator />
+					<rich:menuItem icon="/pics/ajax_process.gif"
+						iconDisabled="/pics/ajax_stoped.gif" disabled="#{dDMenu.disabled}">
+						<h:outputText value="Image"></h:outputText>
+					</rich:menuItem>
+					<rich:menuItem disabled="#{dDMenu.disabled}" icon="#{dDMenu.icon}">
+						<h:outputText value="Image:" />
+						<h:graphicImage value="/pics/ajax_process.gif" />
+					</rich:menuItem>
+					<rich:menuSeparator />
+					<rich:menuGroup value="Second level"
+						direction="#{dDMenu.groupDirection}" disabled="#{dDMenu.disabled}"
+						icon="#{dDMenu.icon}" iconFolder="#{dDMenu.iconFolder}">
+						<rich:menuItem icon="#{dDMenu.icon}">
+							<h:outputText value="Item3" />
+						</rich:menuItem>
+						<rich:menuItem value="Item4">
+							<select id="selectCar" name="selectCar" size="1">
+								<option value="accord">Honda Accord</option>
+								<option value="4runner">Toyota 4Runner</option>
+								<option value="nissan-z">Nissan Z350</option>
+							</select>
+						</rich:menuItem>
+						<rich:menuSeparator />
+						<rich:menuItem icon="#{dDMenu.icon}">
+							<h:outputText value="CheckBox" />
+							<h:selectBooleanCheckbox label="lfllf" value="#{dDMenu.check}"
+								onclick="submit()" />
+						</rich:menuItem>
+					</rich:menuGroup>
+
+				</rich:dropDownMenu>
+			</rich:panel>
+		</h:panelGrid>
+
+		<h:commandLink value="Back" action="main"></h:commandLink>
+
+		<a4j:log></a4j:log>
+	</h:form>
+	</body>
+</f:view>
+</html>

Added: trunk/test-applications/facelets/src/main/webapp/Gmap/Gmap.xhtml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/Gmap/Gmap.xhtml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/Gmap/Gmap.xhtml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,91 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+      xmlns:ui="http://java.sun.com/jsf/facelets"
+      xmlns:h="http://java.sun.com/jsf/html"
+      xmlns:f="http://java.sun.com/jsf/core"
+      xmlns:c="http://java.sun.com/jstl/core"
+      xmlns:rich="http://richfaces.ajax4jsf.org/rich"
+      xmlns:a4j="http://richfaces.org/a4j">
+
+  <f:view contentType="text/html" >
+
+  <body>
+  
+ 
+ <h:panelGrid  columns="2">
+	<rich:gmap id="gm" lat="37.97" zoom="#{gmap.zoom}" gmapVar="map"
+	 gmapKey="ABQIAAAAxU6W9QEhFLMNdc3ATIu-VxT2yXp_ZAY8_ufC3CFXhHIE1NvwkxRkrpOGzxH8_ud3inE9pG1845-FCA"
+	  style="width:500px;height:400px" />
+	
+	
+	<!-- client side solution -->
+	<h:panelGroup>
+		Controls:<br />
+		<a href="javascript:void(0);" onclick="map.hideControls();return false;">Remove</a>
+		<a href="javascript:void(0);" onclick="map.showControls();return false;">Show</a>
+		<br /><br />
+		Type:<br/>
+		<a href="javascript:void(0);" onclick="map.setMapType(G_NORMAL_MAP);return false;">Normal</a>
+		<a href="javascript:void(0);" onclick="map.setMapType(G_SATELLITE_MAP);return false;">Satellite</a>
+		<a href="javascript:void(0);" onclick="map.setMapType(G_HYBRID_MAP);return false;">Hybrid</a>
+		<br /><br />
+		Zoom:<br/>
+		<a href="javascript:void(0);" onclick="map.zoomIn();return false;">In</a>
+		<a href="javascript:void(0);" onclick="map.zoomOut();return false;">Out</a>
+		<br /><br />
+		<a href="javascript:void(0);" onclick="showExadel();return false;">Show Exadel Office</a>
+		
+	</h:panelGroup>	
+
+
+	<!-- client side solution -->
+	<h:form>
+			
+        </h:form>
+	
+</h:panelGrid>
+
+	<a4j:outputPanel id="zoomer">
+		<script>
+		  function zoomIt() {
+		   map.setZoom(#{gmap.zoom});
+		  }
+		</script>
+	</a4j:outputPanel>
+
+	<a4j:outputPanel>
+	   <script>
+	   
+      function createMarker(point,html) {
+        var marker = new GMarker(point);
+        GEvent.addListener(marker, "click", function() {
+          marker.openInfoWindowHtml(html);
+        });
+        return marker;
+      }
+
+	   
+	   
+	   function showExadel() {
+
+	    var point = new  GLatLng(37.9721046, -122.0424842834);
+	    map.setCenter(point);
+      	var marker = createMarker(point,'Go to the <a target="_blank" href="http://www.exadel.com">Exadle Web Site</a>');
+		map.setZoom(16);
+		map.addOverlay(marker);
+	   
+	   }
+	   
+	    function setCenter(lag, lat, zoom) {
+
+	       map.setCenter(new GLatLng(lag, lat), zoom);
+	       var ulp = new GPoint(lag,lat);
+      var ul = G_NORMAL_MAP.getProjection().fromPixelToLatLng(ulp,zoom); 
+	       
+	    }
+	   </script>
+	</a4j:outputPanel>
+
+	</body>
+</f:view>
+</html>
\ No newline at end of file

Added: trunk/test-applications/facelets/src/main/webapp/META-INF/MANIFEST.MF
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/META-INF/MANIFEST.MF	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/META-INF/MANIFEST.MF	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,4 @@
+Manifest-Version: 1.0
+Class-Path: 
+
+f
\ No newline at end of file

Added: trunk/test-applications/facelets/src/main/webapp/ModalPanel/ModalPanel.xhtml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/ModalPanel/ModalPanel.xhtml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/ModalPanel/ModalPanel.xhtml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,77 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:a4j="https://ajax4jsf.dev.java.net/ajax"
+	xmlns:f="http://java.sun.com/jsf/core"
+	xmlns:h="http://java.sun.com/jsf/html"
+	xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+<f:view>
+	<head>
+	<link rel="stylesheet"
+		href="#{facesContext.externalContext.requestContextPath}/styles/styles.css"
+		type="text/css" />
+	</head>
+	<body>
+	<h:form id="MPform">
+		<rich:modalPanel id="MPid" minHeight="#{modalPanel.minHeight}"
+			minWidth="#{modalPanel.minWidth}" height="#{modalPanel.height}"
+			width="#{modalPanel.width}" moveable="#{modalPanel.moveable}"
+			resizeable="#{modalPanel.resizeable}">
+
+			<f:facet name="header">
+				<h:outputText value="Heder goes here..." />
+			</f:facet>
+			<h:outputText value="This is Modal Panel example" styleClass="text1" />
+			<br />
+			<br />
+			<h:outputLink
+				onclick="Richfaces.hideModalPanel('MPform:MPid');return false;"
+				value="Close">
+				<f:verbatim>Close</f:verbatim>
+			</h:outputLink>
+
+		</rich:modalPanel>
+
+		<a onclick="Richfaces.showModalPanel('MPform:MPid');" href="#">Show
+		MP</a>
+
+		<rich:spacer height="20px"></rich:spacer>
+
+		<h:panelGrid columns="2">
+
+			<h:outputText value="Width:" />
+			<h:inputText value="#{modalPanel.width}">
+				<a4j:support event="onchange" reRender="MPform:MPid"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Height:" />
+			<h:inputText value="#{modalPanel.height}">
+				<a4j:support event="onchange" reRender="MPform:MPid"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="minWidth:" />
+			<h:inputText value="#{modalPanel.minWidth}">
+				<a4j:support event="onchange" reRender="MPform:MPid"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="minHeight:" />
+			<h:inputText value="#{modalPanel.minHeight}">
+				<a4j:support event="onchange" reRender="MPform:MPid"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Resizeable:" />
+			<h:selectBooleanCheckbox value="#{modalPanel.resizeable}">
+				<a4j:support event="onclick" reRender="MPform:MPid"></a4j:support>
+			</h:selectBooleanCheckbox>
+
+			<h:outputText value="Moveable:" />
+			<h:selectBooleanCheckbox value="#{modalPanel.moveable}">
+				<a4j:support event="onclick" reRender="MPform:MPid"></a4j:support>
+			</h:selectBooleanCheckbox>
+
+		</h:panelGrid>
+
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+</body>
+</f:view>
+</html>

Added: trunk/test-applications/facelets/src/main/webapp/Paint2D/Paint2D.xhtml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/Paint2D/Paint2D.xhtml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/Paint2D/Paint2D.xhtml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,101 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:a4j="https://ajax4jsf.dev.java.net/ajax"
+	xmlns:f="http://java.sun.com/jsf/core"
+	xmlns:h="http://java.sun.com/jsf/html"
+	xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+<f:view>
+	<head>
+	<link rel="stylesheet"
+		href="#{facesContext.externalContext.requestContextPath}/styles/styles.css"
+		type="text/css" />
+	</head>
+	<h:form>
+		<rich:panel>
+			<h:selectOneRadio binding="#{skinBean.component}" />
+			<h:commandLink action="#{skinBean.change}" value="set skin" />
+		</rich:panel>
+
+		<rich:paint2D id="paint2d" paint="#{paint2D.paint}"
+			data="#{paintData}" width="#{paint2D.width}"
+			height="#{paint2D.height}" align="#{paint2D.align}"
+			hspace="#{paint2D.hspace}" vspace="#{paint2D.vspace}"
+			bgcolor="#{paint2D.bgcolor}" format="#{paint2D.format}"
+			title="#{paint2D.title}" styleClass="style"
+			border="#{paint2D.border}" rendered="#{paint2D.rendered}" />
+
+		<h:panelGrid columns="2" cellpadding="5px" border="2">
+			<h:outputText value="Text"></h:outputText>
+			<h:inputText value="#{paintData.text}">
+				<a4j:support event="onkeyup" reRender="paint2d" />
+			</h:inputText>
+
+			<h:outputText value="Border: "></h:outputText>
+			<h:inputText value="#{paint2D.border}">
+				<a4j:support event="onclick" reRender="paint2d"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Width: "></h:outputText>
+			<h:inputText value="#{paint2D.width}">
+				<a4j:support event="onchange" reRender="paint2d"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Height: "></h:outputText>
+			<h:inputText value="#{paint2D.height}">
+				<a4j:support event="onchange" reRender="paint2d"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Vertical space: "></h:outputText>
+			<h:inputText value="#{paint2D.vspace}">
+				<a4j:support event="onchange" reRender="paint2d"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Horizontal space: "></h:outputText>
+			<h:inputText value="#{paint2D.hspace}">
+				<a4j:support event="onchange" reRender="paint2d"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Align:"></h:outputText>
+			<h:selectOneMenu value="#{paint2D.align}">
+				<f:selectItem itemLabel="left" itemValue="left" />
+				<f:selectItem itemLabel="middle" itemValue="middle" />
+				<f:selectItem itemLabel="right" itemValue="right" />
+				<f:selectItem itemLabel="bottom" itemValue="bottom" />
+				<f:selectItem itemLabel="top" itemValue="top" />
+				<a4j:support event="onclick" reRender="paint2d"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="Format:"></h:outputText>
+			<h:selectOneMenu value="#{paint2D.format}">
+				<f:selectItem itemLabel="jpeg" itemValue="jpeg" />
+				<f:selectItem itemLabel="gif" itemValue="gif" />
+				<f:selectItem itemLabel="png" itemValue="png" />
+				<a4j:support event="onclick" reRender="paint2d"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="Background Colour"></h:outputText>
+			<h:selectOneMenu value="#{paint2D.bgcolor}">
+				<f:selectItem itemLabel="aqua" itemValue="aqua" />
+				<f:selectItem itemLabel="blue" itemValue="blue" />
+				<f:selectItem itemLabel="fuchsia" itemValue="fuchsia" />
+				<f:selectItem itemLabel="gray" itemValue="gray" />
+				<f:selectItem itemLabel="lime" itemValue="lime" />
+				<f:selectItem itemLabel="maroon" itemValue="maroon" />
+				<f:selectItem itemLabel="purple" itemValue="purple" />
+				<f:selectItem itemLabel="red" itemValue="red" />
+				<f:selectItem itemLabel="silver" itemValue="silver" />
+				<f:selectItem itemLabel="teal" itemValue="teal" />
+				<f:selectItem itemLabel="yellow" itemValue="yellow" />
+				<f:selectItem itemLabel="white" itemValue="white" />
+				<a4j:support event="onclick" reRender="paint2d"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="Rendered"></h:outputText>
+			<h:selectBooleanCheckbox value="#{paint2D.rendered}">
+				<a4j:support event="onclick" reRender="paint2d"></a4j:support>
+			</h:selectBooleanCheckbox>
+		</h:panelGrid>
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+</f:view>
+</html>

Added: trunk/test-applications/facelets/src/main/webapp/Panel/Panel.xhtml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/Panel/Panel.xhtml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/Panel/Panel.xhtml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,81 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:rich="http://richfaces.ajax4jsf.org/rich"
+	xmlns:h="http://java.sun.com/jsf/html"
+	xmlns:f="http://java.sun.com/jsf/core"
+	xmlns:a4j="https://ajax4jsf.dev.java.net/ajax"
+	xmlns:c="http://java.sun.com/jstl/core">
+<f:view>
+	<head>
+	</head>
+	<body>
+	<h:form>
+		<h:messages></h:messages>
+
+		<h:outputText
+			value="Panel 1, rendered: #{!panel.rendered}; Panel 2, rendered #{panel.rendered};"></h:outputText>
+
+		<rich:panel rendered="#{!panel.rendered}" id="p1"
+			style="width:#{panel.width};height:#{panel.height};overflow:auto;">
+			<f:facet name="header">
+				<h:outputText id="t1" value="#{panel.title[0]} &nbsp; (Panel 1)" />
+			</f:facet>
+
+			<rich:panel>
+				<f:facet name="header">
+					<h:outputText id="t2" value="#{panel.title[1]}" />
+				</f:facet>
+				<h:panelGrid columns="2">
+					<h:outputText id="o1" value="width #{panel.title[2]}, eg. 250px"></h:outputText>
+					<h:inputText value="#{w}">
+						<a4j:support event="onchange" reRender="p3"></a4j:support>
+					</h:inputText>
+
+					<h:outputText id="o2" value="height #{panel.title[2]}, eg. 200px"></h:outputText>
+					<h:inputText value="#{h}">
+						<a4j:support event="onchange" reRender="p3"></a4j:support>
+					</h:inputText>
+				</h:panelGrid>
+
+				<rich:panel id="p3" style="width:#{w};height:#{h};overflow:auto;">
+					<f:facet name="header">
+						<h:outputText id="t3" value="#{panel.title[2]}" />
+					</f:facet>
+					<h:graphicImage value="/pics/asus.jpg" width="150" height="100"></h:graphicImage>
+				</rich:panel>
+			</rich:panel>
+		</rich:panel>
+
+		<rich:panel onmousedown="alert('OnMouseDown');" id="panelId"
+			onclick="submit()" rendered="#{panel.rendered}"
+			style="width:#{panel.width};height:#{panel.height}">
+			<f:verbatim>This is panel 2 example...</f:verbatim>
+
+		</rich:panel>
+
+		<h:panelGrid columns="2" cellpadding="10px">
+			<h:outputText value="Title"></h:outputText>
+			<h:inputText valueChangeListener="#{panel.makeTitle}">
+				<a4j:support event="onchange" reRender="t1,t2,t3,o1,o2"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Width: "></h:outputText>
+			<h:inputText value="#{panel.width}">
+				<a4j:support event="onchange" reRender="panelId,p1"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Height:  "></h:outputText>
+			<h:inputText value="#{panel.height}">
+				<a4j:support event="onchange" reRender="panelId,p1"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Rendered:"></h:outputText>
+			<h:selectBooleanCheckbox value="#{panel.rendered}" onclick="submit()"></h:selectBooleanCheckbox>
+		</h:panelGrid>
+		<h:commandLink value="Sample 2" action="Sample2"></h:commandLink>
+		<br />
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+	</body>
+</f:view>
+</html>

Added: trunk/test-applications/facelets/src/main/webapp/Panel/panel2.xhtml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/Panel/panel2.xhtml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/Panel/panel2.xhtml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,151 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:ui="http://java.sun.com/jsf/facelets"
+	xmlns:h="http://java.sun.com/jsf/html"
+	xmlns:f="http://java.sun.com/jsf/core"
+	xmlns:rich="http://richfaces.ajax4jsf.org/rich"
+	xmlns:a4j="https://ajax4jsf.dev.java.net/ajax">
+<f:view>
+	<head>
+	<style>
+	 .panel {
+	  vertical-align:top;
+	 }
+	 .rich-panel-header {
+	  color:#F00 !important;
+	 
+	 }
+	 .top {
+	 width:200px !important;height:100px !important;
+	 }
+	 .hea {
+	  color:#FCC !important;
+	 }
+	 .bo {
+	  color:#F00 !important;
+	 }
+	 
+	 .top2 {
+	 width:200px !important;height:100px !important;
+	 border:2px solid #4C9600 !important;
+	 background-color:#E4FFC8 !important;
+	 }
+	 
+	 
+	.hea2 {
+	  background-image : url() !important;
+	  background-color : #4C9600 !important;
+	  height:18px !important;
+	  text-align:center !important;
+	  vertical-align:middle !important;
+	  color:#CFF !important;
+	  padding:4px 0 !important;
+	 }
+	 
+	 .bo2 {
+	  color:#4C9600;
+	 }
+	 .bo3 {
+	  height:100px;
+	  overflow:auto;
+	 }
+	 
+	</style>
+	</head>
+	<body>
+	<h:form>
+		<h:panelGrid columnClasses="panel" border="0" columns="3">
+			<rich:panel styleClass="top">
+				<f:facet name="header">
+					<h:panelGroup>
+						<f:verbatim>dsdsdsdsd<br />sdsd </f:verbatim>
+					</h:panelGroup>
+
+				</f:facet>
+
+				<f:verbatim>This is <b>default</b> panel. content here</f:verbatim>
+			</rich:panel>
+			<rich:panel styleClass="top" headerClass="hea" bodyClass="bo">
+				<f:facet name="header">
+					<h:outputText value="Header of the Panel" />
+				</f:facet>
+				<f:view>This panel contains custom headerClass and bodyClass</f:view>
+			</rich:panel>
+			<rich:panel styleClass="top2" headerClass="hea2" bodyClass="bo2">
+				<f:facet name="header">
+					<h:outputText value="Header of the Panel" />
+				</f:facet>
+				<f:verbatim> This panel also contains custom headerClass and bodyClass. The background is not a 3D anymore.</f:verbatim>
+			</rich:panel>
+
+			<h:panelGroup>
+				<h:form>
+					<rich:panel
+						onmouseover="document.getElementById(this.id+'_header').style.background='#60BA01';document.getElementById(this.id+'_body').style.background='#F4FFF8'"
+						onmouseout="document.getElementById(this.id+'_header').style.background='#4C9600';document.getElementById(this.id+'_body').style.background='#E4FFC8'"
+						style="width:200px;" headerClass="hea2" bodyClass="bo3">
+						<f:facet name="header">
+							<h:outputText value="Header of the Panel" />
+						</f:facet>
+						<f:verbatim>Base on the previous layout, but form element and javascript behaviour are added</f:verbatim>
+						<br />
+						<h:inputText />
+					</rich:panel>
+				</h:form>
+			</h:panelGroup>
+
+			<rich:panel style="width:200px;" headerClass="hea" bodyClass="bo3">
+				<f:facet name="header">
+					<h:outputText value="Scrolling Text Panel" />
+				</f:facet>
+				<f:verbatim>
+				     Long Text Long Text Long Text
+				     Long Text Long Text Long Text
+				     Long Text Long Text Long Text
+				     Long Text Long Text Long Text
+				     Long Text Long Text Long Text
+				     Long Text Long Text Long Text
+				     Long Text Long Text Long Text
+				     Long Text Long Text Long Text
+				     Long Text Long Text Long Text
+				     Long Text Long Text Long Text
+				     Long Text Long Text Long Text
+				     Long Text Long Text Long Text
+				     Long Text Long Text Long Text
+				 </f:verbatim>
+			</rich:panel>
+
+			<rich:panel styleClass="top">
+				<f:verbatim>This is a panel without the header</f:verbatim>
+
+			</rich:panel>
+		</h:panelGrid>
+		<rich:panel style="position: absolute; top: 116px; right: 100px; "
+			styleClass="top">
+			<f:facet name="header">
+				<h:outputText value="Header of the Panel" />
+			</f:facet>
+			<f:verbatim>
+			    This is a panel with absolute position on the screen.<br />
+			    Resize the browser's window for fun.
+		    </f:verbatim>
+		</rich:panel>
+		<rich:panel style="width:#{panel.width};height:#{panel.height}">
+			<f:facet name="header">
+				<f:verbatim>
+		      		Test<br />
+		      		Test<br />
+		      		Test<br />
+				</f:verbatim>
+			</f:facet>
+			<h:form>
+				<h:outputText value="inside the form" />
+			</h:form>
+		</rich:panel>
+	</h:form>
+	<h:form>
+		<h:commandLink value="Back to Panel" action="BackP"></h:commandLink>
+	</h:form>
+	</body>
+</f:view>
+</html>

Added: trunk/test-applications/facelets/src/main/webapp/PanelBar/PanelBar.xhtml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/PanelBar/PanelBar.xhtml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/PanelBar/PanelBar.xhtml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,83 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:a4j="https://ajax4jsf.dev.java.net/ajax"
+	xmlns:h="http://java.sun.com/jsf/html"
+	xmlns:f="http://java.sun.com/jsf/core"
+	xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+<f:view>
+	<head>
+	<link rel="stylesheet"
+		href="#{facesContext.externalContext.requestContextPath}/styles/styles.css"
+		type="text/css" />
+	</head>
+
+	<body>
+	<h:form>
+		<h:messages></h:messages>
+
+		<rich:panelBar id="pBId" height="#{panelBar.height}"
+			width="#{panelBar.width}" contentClass="#{panelBar.contentStyle}"
+			styleClass="#{panelBar.style}" selectedPanel="pBiId4">
+			<rich:panelBarItem rendered="#{panelBar.rendered}" id="pBiId1"
+				label="#{panelBar.label[0]}" headerClass="#{panelBar.headerStyle}">
+				<h:outputText value="Some text..."></h:outputText>
+			</rich:panelBarItem>
+
+			<rich:panelBarItem id="pBiId2" label="#{panelBar.label[1]}"
+				headerClass="#{panelBar.headerStyle}">
+				<h:graphicImage value="/pics/masshtaby_01.jpg" width="300"
+					height="200"></h:graphicImage>
+			</rich:panelBarItem>
+
+			<rich:panelBarItem id="pBiId3" label="#{panelBar.label[2]}"
+				headerClass="#{panelBar.headerStyle}">
+				<f:facet name="openMarker">
+					<h:graphicImage value="/pics/ajax_process.gif"></h:graphicImage>
+				</f:facet>
+				<f:facet name="closeMarker">
+					<h:graphicImage value="/pics/ajax_stoped.gif"></h:graphicImage>
+				</f:facet>
+				<h:graphicImage value="/pics/podb109_61.jpg" width="300"
+					height="200"></h:graphicImage>
+			</rich:panelBarItem>
+
+			<rich:panelBarItem id="pBiId4" label="#{panelBar.label[3]}"
+				headerClass="#{panelBar.headerStyle}">
+				<h:outputText value="Select Panel"></h:outputText>
+			</rich:panelBarItem>
+
+		</rich:panelBar>
+
+		<rich:spacer height="20px"></rich:spacer>
+
+		<h:panelGrid columns="2" cellspacing="10px">
+			<h:outputText value="Label: "></h:outputText>
+			<h:inputText valueChangeListener="#{panelBar.makeLabels}">
+				<a4j:support event="onchange" reRender="pBId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Width: "></h:outputText>
+			<h:inputText value="#{panelBar.width}">
+				<a4j:support event="onchange" reRender="pBId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Height: "></h:outputText>
+			<h:inputText value="#{panelBar.height}">
+				<a4j:support event="onchange" reRender="pBId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Rendered"></h:outputText>
+			<h:selectBooleanCheckbox value="#{panelBar.rendered}">
+				<a4j:support event="onchange" reRender="pBId" />
+			</h:selectBooleanCheckbox>
+
+			<h:outputText value="Switch Styles:" />
+			<h:commandButton action="#{panelBar.doStyles}"
+				value="#{panelBar.btnLabel}" />
+
+		</h:panelGrid>
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+	</body>
+</f:view>
+</html>

Added: trunk/test-applications/facelets/src/main/webapp/PanelMenu/PanelMenu.xhtml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/PanelMenu/PanelMenu.xhtml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/PanelMenu/PanelMenu.xhtml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,574 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:a4j="https://ajax4jsf.dev.java.net/ajax"
+	xmlns:h="http://java.sun.com/jsf/html"
+	xmlns:f="http://java.sun.com/jsf/core"
+	xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+
+
+<head>
+<style>
+	.sPanel
+	{
+		background: gray;
+	}
+    .body
+    {
+ 	 	background-color: pink;
+ 		border: green 3px solid;
+	  	background: gray;
+   	}
+	</style>
+</head>
+
+<body>
+<f:view>
+	<h:form>
+		<rich:panelMenu id="panelMenuID" disabled="#{panelMenu.disabled}"
+			width="#{panelMenu.width}" selectedChild="thisChild"
+			expandSingle="#{panelMenu.expandSingle}" mode="#{panelMenu.mode}"
+			value="PanelMenu" rendered="#{panelMenu.rendered}"
+			iconCollapsedGroup="#{panelMenu.icon.collapsedGroup}"
+			iconCollapsedTopGroup="#{panelMenu.icon.collapsedTopGroup}"
+			iconDisabledGroup="#{panelMenu.icon.disabledGroup}"
+			iconDisabledItem="#{panelMenu.icon.disabledItem}"
+			iconExpandedGroup="#{panelMenu.icon.expandedGroup}"
+			iconExpandedTopGroup="#{panelMenu.icon.expandedTopGroup}"
+			iconItem="#{panelMenu.icon.item}"
+			iconTopDisabledItem="#{panelMenu.icon.disabledItem}"
+			iconTopDisableGroup="#{panelMenu.icon.disabledGroup}"
+			iconTopItem="#{panelMenu.icon.topItem}"
+			iconGroupPosition="#{panelMenu.iconGroupPosition}"
+			iconGroupTopPosition="#{panelMenu.iconGroupTopPosition}"
+			iconItemPosition="#{panelMenu.iconItemPosition}"
+			iconItemTopPosition="#{panelMenu.iconItemTopPosition}"
+			styleClass="sPanel">
+
+			<rich:panelMenuItem value="Item 1"></rich:panelMenuItem>
+			<rich:panelMenuItem disabled="true"
+				iconDisabled="/pics/ajax_stoped.gif">
+				<h:outputText value="Disabled Item" />
+			</rich:panelMenuItem>
+			<rich:panelMenuItem value="Item Image">
+				<h:graphicImage value="/pics/item.png"></h:graphicImage>
+			</rich:panelMenuItem>
+			<rich:panelMenuItem>
+				<h:outputText value="Item4" />
+			</rich:panelMenuItem>
+			<rich:panelMenuItem value="CheckBox">
+				<h:selectBooleanCheckbox value="false"></h:selectBooleanCheckbox>
+			</rich:panelMenuItem>
+			<rich:panelMenuItem>
+				<h:outputText value="CheckBox 2"></h:outputText>
+				<h:selectBooleanCheckbox value="false"></h:selectBooleanCheckbox>
+			</rich:panelMenuItem>
+			<rich:panelMenuItem value="Action"
+				onmousedown="alert('OnMouseDown');"></rich:panelMenuItem>
+
+			<rich:panelMenuGroup label="Group 1 (align)"
+				align="#{panelMenu.align}">
+				<rich:panelMenuItem value="Item 1" disabled="true"></rich:panelMenuItem>
+				<rich:panelMenuItem value="Item 1 (action)"
+					onmousedown="alert('OnMouseDown');"></rich:panelMenuItem>
+				<rich:panelMenuItem value="Item 2"></rich:panelMenuItem>
+
+				<rich:panelMenuGroup label="Group 1_1  (align)"
+					align="#{panelMenu.align}">
+					<rich:panelMenuItem value="Imem 1_1">
+						<h:inputText value="text"></h:inputText>
+					</rich:panelMenuItem>
+
+					<rich:panelMenuItem value="Item 1_2"></rich:panelMenuItem>
+
+					<rich:panelMenuGroup label="Group 1_1_1  (align)"
+						align="#{panelMenu.align}">
+						<rich:panelMenuItem value="Item 1 (action)"
+							onmousedown="alert('OnMouseDown');"></rich:panelMenuItem>
+						<rich:panelMenuItem value="Item 2"></rich:panelMenuItem>
+					</rich:panelMenuGroup>
+
+					<rich:panelMenuGroup label="Group 1_1_2">
+						<rich:panelMenuItem value="Item 1"></rich:panelMenuItem>
+						<rich:panelMenuItem value="Item 2"></rich:panelMenuItem>
+						<rich:panelMenuItem value="Item 3"></rich:panelMenuItem>
+						<rich:panelMenuItem value="Item 4"></rich:panelMenuItem>
+					</rich:panelMenuGroup>
+				</rich:panelMenuGroup>
+
+				<rich:panelMenuGroup label="Group 1_2 (disabled, action)"
+					disabled="true" onmousedown="alert('Disabled');">
+					<rich:panelMenuItem value="Item 1_2_1"></rich:panelMenuItem>
+				</rich:panelMenuGroup>
+
+				<rich:panelMenuGroup label="Group 1_3">
+					<rich:panelMenuItem value="Item 1_3_1"></rich:panelMenuItem>
+					<rich:panelMenuItem value="Item 1_3_1"></rich:panelMenuItem>
+
+					<rich:panelMenuGroup label="Group disabled" disabled="true">
+					</rich:panelMenuGroup>
+				</rich:panelMenuGroup>
+
+			</rich:panelMenuGroup>
+
+			<rich:panelMenuGroup label="Group 2 (mode 2)"
+				mode="#{panelMenu.mode2}">
+				<rich:panelMenuItem value="Item 2_1"></rich:panelMenuItem>
+
+				<rich:panelMenuGroup label="Group 2_2 (mode 2)"
+					mode="#{panelMenu.mode2}">
+					<rich:panelMenuItem value="Item 1"></rich:panelMenuItem>
+					<rich:panelMenuItem value="Item 2"></rich:panelMenuItem>
+				</rich:panelMenuGroup>
+
+				<rich:panelMenuItem value="Item 1"></rich:panelMenuItem>
+				<rich:panelMenuItem value="Item 2"></rich:panelMenuItem>
+			</rich:panelMenuGroup>
+
+			<rich:panelMenuGroup label="Group 3 (mode 2)"
+				mode="#{panelMenu.mode2}">
+				<rich:panelMenuItem value="Item 3_1">
+					<br />
+					text <br />
+					text <br />
+					text
+				</rich:panelMenuItem>
+				<rich:panelMenuItem value="Item 3_2">
+					<h:graphicImage value="/pics/benq.jpg" width="150px" height="100px"></h:graphicImage>
+				</rich:panelMenuItem>
+				<rich:panelMenuItem value="Item 3_3"></rich:panelMenuItem>
+			</rich:panelMenuGroup>
+		</rich:panelMenu>
+
+		<f:verbatim>
+			<br />
+			<br />
+		</f:verbatim>
+
+		<h:outputText id="info"
+			value="Expand Mode: #{panelMenu.mode}, Disabled: #{!panelMenu.disabled}, Align: #{panelMenu.align}, Tab Index: #{panelMenu.tabIndex}"></h:outputText>
+		<!-- triangleUp triangle triangleDown disc chevron chevronUp chevronDown grid -->
+		<f:verbatim>
+			<br />
+		</f:verbatim>
+
+		<rich:panelMenu id="panelMenuID2" expandMode="#{panelMenu.mode}"
+			disabled="#{!panelMenu.disabled}" width="#{panelMenu.width}"
+			selectedChild="thisChild" styleClass="body">
+			<rich:panelMenuGroup label="Group 1 (tabIdex, my Image)"
+				tabindex="#{panelMenu.tabIndex}" align="#{panelMenu.align}">
+				<rich:panelMenuGroup label="Group 1_1 (tabIndex)"
+					tabindex="#{panelMenu.tabIndex}">
+					<rich:panelMenuGroup label="Group 1_1_1 (tabIndex)"
+						tabindex="#{panelMenu.tabIndex}">
+						<rich:panelMenuItem value="Item 1"></rich:panelMenuItem>
+						<rich:panelMenuItem value="Item 2"></rich:panelMenuItem>
+					</rich:panelMenuGroup>
+				</rich:panelMenuGroup>
+
+				<rich:panelMenuGroup label="Group 1_2 (tabIndex)"
+					tabindex="#{panelMenu.tabIndex}">
+					<rich:panelMenuGroup label="Group 1_2_1 (tabIndex)"
+						tabindex="#{panelMenu.tabIndex}">
+						<rich:panelMenuItem value="Item (icon)" icon="#{icon.iconItem}"></rich:panelMenuItem>
+						<rich:panelMenuItem value="Item (iconDisabled)"
+							iconDisabled="#{icon.iconHeader}"></rich:panelMenuItem>
+						<rich:panelMenuItem value="Item (icon)" disabled="true"
+							icon="#{icon.iconItem}"></rich:panelMenuItem>
+						<rich:panelMenuItem value="Item (iconDisabled)" disabled="true"
+							iconDisabled="#{icon.iconItem}"></rich:panelMenuItem>
+					</rich:panelMenuGroup>
+					<rich:panelMenuItem value="Item (icon)" icon="#{icon.iconItem}"></rich:panelMenuItem>
+					<rich:panelMenuItem value="Item (icon)" icon="#{icon.iconItem}"></rich:panelMenuItem>
+					<rich:panelMenuItem value="Item "></rich:panelMenuItem>
+				</rich:panelMenuGroup>
+
+				<rich:panelMenuGroup label="Group 1_3" align="#{panelMenu.align}"
+					iconCollapsed="#{icon.iconCollapse}"
+					iconExpanded="#{icon.iconExpand}" iconDisabled="#{icon.disabled}">
+					<rich:panelMenuItem value="Item 1"></rich:panelMenuItem>
+					<rich:panelMenuItem value="Item 2"></rich:panelMenuItem>
+					<rich:panelMenuItem value="Item 3"></rich:panelMenuItem>
+				</rich:panelMenuGroup>
+
+				<!-- triangleUp triangle triangleDown disc chevron chevronUp chevronDown grid -->
+				<rich:panelMenuItem value="Item (disc)" icon="disc"></rich:panelMenuItem>
+				<rich:panelMenuItem value="Item (grid)" icon="grid"></rich:panelMenuItem>
+				<rich:panelMenuGroup label="Group" iconCollapsed="triangleDown"
+					iconExpanded="triangleUp" iconDisabled="triangle">
+					<rich:panelMenuGroup label="Group" iconCollapsed="chevronDown"
+						iconExpanded="chevronUp" iconDisabled="chevron">
+						<rich:panelMenuItem value="Item (disc)" icon="disc"></rich:panelMenuItem>
+						<rich:panelMenuItem value="Item (grid)" iconDisabled="grid"></rich:panelMenuItem>
+						<rich:panelMenuItem value="Item (grid)" icon="grid"></rich:panelMenuItem>
+						<rich:panelMenuItem value="Item (disc)" iconDisabled="disc"></rich:panelMenuItem>
+					</rich:panelMenuGroup>
+					<rich:panelMenuItem value="Item (icon)" icon="#{icon.iconItem}"></rich:panelMenuItem>
+					<rich:panelMenuItem value="Item (icon)" icon="#{icon.iconItem}"></rich:panelMenuItem>
+					<rich:panelMenuItem value="Item "></rich:panelMenuItem>
+				</rich:panelMenuGroup>
+
+				<rich:panelMenuGroup label="Group 1_3" iconCollapsed="chevronDown"
+					iconExpanded="chevronUp" iconDisabled="chevron">
+					<rich:panelMenuItem value="Item 1"></rich:panelMenuItem>
+					<rich:panelMenuItem value="Item 2"></rich:panelMenuItem>
+					<rich:panelMenuItem value="Item 3"></rich:panelMenuItem>
+				</rich:panelMenuGroup>
+			</rich:panelMenuGroup>
+		</rich:panelMenu>
+		<f:verbatim>
+			<br />
+			<br />
+		</f:verbatim>
+
+		<h:panelGrid columns="2">
+
+			<h:outputText value="Width"></h:outputText>
+			<h:inputText value="#{panelMenu.width}">
+				<a4j:support event="onchange"
+					reRender="panelMenuID,panelMenuID2,info"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Tab Index"></h:outputText>
+			<h:inputText value="#{panelMenu.tabIndex}">
+				<a4j:support event="onchange"
+					reRender="panelMenuID,panelMenuID2,info"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Expand Single"></h:outputText>
+			<h:selectBooleanCheckbox value="#{panelMenu.expandSingle}">
+				<a4j:support event="onchange" reRender="panelMenuID"></a4j:support>
+			</h:selectBooleanCheckbox>
+
+			<h:outputText value="Mode"></h:outputText>
+			<h:selectOneRadio value="#{panelMenu.mode}" id="Mode1ID"
+				onchange="submit();">
+				<f:selectItem itemLabel="none" itemValue="none" />
+				<f:selectItem itemLabel="ajax" itemValue="ajax" />
+				<f:selectItem itemLabel="server" itemValue="server" />
+				<a4j:support event="onclick" reRender="panelMenuID,Mode2ID"></a4j:support>
+			</h:selectOneRadio>
+
+			<h:outputText value="Mode 2"></h:outputText>
+			<h:selectOneRadio value="#{panelMenu.mode2}" id="Mode2ID"
+				onchange="submit();">
+				<f:selectItem itemLabel="none" itemValue="none" />
+				<f:selectItem itemLabel="ajax" itemValue="ajax" />
+				<f:selectItem itemLabel="server" itemValue="server" />
+				<a4j:support event="onclick" reRender="panelMenuID,Mode1ID"></a4j:support>
+			</h:selectOneRadio>
+
+			<h:outputText value="Expand mode"></h:outputText>
+			<h:selectBooleanCheckbox value="#{panelMenu.expandMode}"></h:selectBooleanCheckbox>
+
+			<h:outputText value="Align:"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.align}">
+				<f:selectItem itemLabel="left" itemValue="left" />
+				<f:selectItem itemLabel="middle" itemValue="middle" />
+				<f:selectItem itemLabel="right" itemValue="right" />
+				<f:selectItem itemLabel="bottom" itemValue="bottom" />
+				<f:selectItem itemLabel="top" itemValue="top" />
+				<a4j:support event="onclick"
+					reRender="panelMenuID,panelMenuID2,info"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="Disabled"></h:outputText>
+			<h:selectBooleanCheckbox value="#{panelMenu.disabled}">
+				<a4j:support event="onchange"
+					reRender="panelMenuID,panelMenuID2,info"></a4j:support>
+			</h:selectBooleanCheckbox>
+
+			<h:outputText value="Rendered"></h:outputText>
+			<h:selectBooleanCheckbox value="#{panelMenu.rendered}"
+				onchange="submit();"></h:selectBooleanCheckbox>
+		</h:panelGrid>
+
+		<h:panelGrid columns="4">
+			<h:outputText value="Icon"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.icon}" onchange="submit();">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process"
+					itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped"
+					itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager"
+					itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject"
+					itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item" itemValue="#{icon.iconItem}" />
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Item"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.item}" onchange="submit();">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process"
+					itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped"
+					itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager"
+					itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject"
+					itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item " itemValue="#{icon.iconItem}" />
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Disabled"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.disabled}">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process"
+					itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped"
+					itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager"
+					itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject"
+					itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item" itemValue="#{icon.iconItem}" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Disabled Item"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.disabledItem}">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process"
+					itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped"
+					itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager"
+					itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject"
+					itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item" itemValue="#{icon.iconItem}" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Top Item"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.topItem}">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process"
+					itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped"
+					itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager"
+					itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject"
+					itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item" itemValue="#{icon.iconItem}" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Top Disabled Item"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.topDisabledItem}">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process"
+					itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped"
+					itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager"
+					itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject"
+					itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item" itemValue="#{icon.iconItem}" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Expanded Group"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.expandedGroup}">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process"
+					itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped"
+					itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager"
+					itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject"
+					itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item" itemValue="#{icon.iconItem}" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon CollapsedGroup"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.collapsedGroup}">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process"
+					itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped"
+					itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager"
+					itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject"
+					itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item" itemValue="#{icon.iconItem}" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Disabled Group"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.disabledGroup}">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process"
+					itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped"
+					itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager"
+					itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject"
+					itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item" itemValue="#{icon.iconItem}" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Expanded Top Group"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.expandedTopGroup}">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process"
+					itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped"
+					itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager"
+					itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject"
+					itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item" itemValue="#{icon.iconItem}" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Collapsed Top Group"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.collapsedTopGroup}">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process"
+					itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped"
+					itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager"
+					itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject"
+					itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item" itemValue="#{icon.iconItem}" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Top Disable Group"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.topDisableGroup}">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process"
+					itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped"
+					itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager"
+					itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject"
+					itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item" itemValue="#{icon.iconItem}" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Expanded"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.expanded}">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process"
+					itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped"
+					itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager"
+					itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject"
+					itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item" itemValue="#{icon.iconItem}" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Collapsed"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.collapsed}">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process"
+					itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped"
+					itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager"
+					itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject"
+					itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item" itemValue="#{icon.iconItem}" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+		</h:panelGrid>
+		<br />
+		<h:panelGrid columns="4">
+			<h:outputText value="icon Group Position"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.iconGroupPosition}">
+				<f:selectItem itemLabel="left" itemValue="left" />
+				<f:selectItem itemLabel="right" itemValue="right" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Group Top Position"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.iconGroupTopPosition}">
+				<f:selectItem itemLabel="left" itemValue="left" />
+				<f:selectItem itemLabel="right" itemValue="right" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Item Position"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.iconItemPosition}">
+				<f:selectItem itemLabel="left" itemValue="left" />
+				<f:selectItem itemLabel="right" itemValue="right" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Item Top Position"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.iconItemTopPosition}">
+				<f:selectItem itemLabel="left" itemValue="left" />
+				<f:selectItem itemLabel="right" itemValue="right" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+		</h:panelGrid>
+
+		<f:verbatim>
+			<br />
+		</f:verbatim>
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+</f:view>
+</body>
+</html>

Added: trunk/test-applications/facelets/src/main/webapp/Separator/Separator.xhtml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/Separator/Separator.xhtml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/Separator/Separator.xhtml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,78 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:rich="http://richfaces.ajax4jsf.org/rich"
+	xmlns:scriptfree="http://jakarta.apache.org/taglibs/standard/scriptfree"
+	xmlns:h="http://java.sun.com/jsf/html"
+	xmlns:f="http://java.sun.com/jsf/core"
+	xmlns:a4j="https://ajax4jsf.dev.java.net/ajax"
+	xmlns:c="http://java.sun.com/jstl/core">
+<f:view>
+	<head>
+	<link rel="stylesheet"
+		href="#{facesContext.externalContext.requestContextPath}/styles/styles.css"
+		type="text/css" />
+	</head>
+	<body>
+	<h:form>
+		<h:messages></h:messages>
+		<h:outputText value="Event:"></h:outputText>
+		<rich:separator height="20px" width="300px"
+			onmousedown="alert('mouse click')"></rich:separator>
+
+
+		<h:outputText value="Some text one..." styleClass="text"></h:outputText>
+		<rich:separator id="separatorId" rendered="#{separator.rendered}"
+			width="#{separator.width}" height="#{separator.height}"
+			title="#{separator.title}" lineType="#{separator.lineType}"
+			align="#{separator.align}" styleClass="#{separator.style}"></rich:separator>
+		<h:outputText value="Some text two..." styleClass="text"></h:outputText>
+		<rich:spacer height="20px"></rich:spacer>
+		<h:panelGrid columns="2">
+			<h:outputText value="Width (px or %): "></h:outputText>
+			<h:inputText value="#{separator.width}">
+				<a4j:support event="onchange" reRender="separatorId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Height (px or %):"></h:outputText>
+			<h:inputText value="#{separator.height}">
+				<a4j:support event="onchange" reRender="separatorId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="LineType:"></h:outputText>
+			<h:selectOneRadio value="#{separator.lineType}"
+				layout="pageDirection">
+				<f:selectItem itemLabel="beveled" itemValue="beveled" />
+				<f:selectItem itemLabel="dotted" itemValue="dotted" />
+				<f:selectItem itemLabel="dashed" itemValue="dashed" />
+				<f:selectItem itemLabel="double" itemValue="double" />
+				<f:selectItem itemLabel="solid" itemValue="solid" />
+				<a4j:support event="onclick" reRender="separatorId"></a4j:support>
+			</h:selectOneRadio>
+
+			<h:outputText value="Align:"></h:outputText>
+			<h:selectOneRadio value="#{separator.align}">
+				<f:selectItem itemLabel="left" itemValue="left" />
+				<f:selectItem itemLabel="center" itemValue="center" />
+				<f:selectItem itemLabel="right" itemValue="right" />
+				<a4j:support event="onclick" reRender="separatorId"></a4j:support>
+			</h:selectOneRadio>
+
+			<h:outputText value="Title:"></h:outputText>
+			<h:inputText value="#{separator.title}">
+				<a4j:support event="onchange" reRender="separatorId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Rendered:"></h:outputText>
+			<h:selectBooleanCheckbox value="#{separator.rendered}"
+				onclick="submit()"></h:selectBooleanCheckbox>
+
+			<h:outputText value="Switch Styles:" />
+			<h:commandButton action="#{separator.doStyles}"
+				value="#{separator.btnLabel}" />
+		</h:panelGrid>
+		<h:commandLink value="Back" action="main"></h:commandLink>
+
+	</h:form>
+	</body>
+</f:view>
+</html>

Added: trunk/test-applications/facelets/src/main/webapp/SimpleTogglePanel/SimpleTogglePanel.xhtml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/SimpleTogglePanel/SimpleTogglePanel.xhtml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/SimpleTogglePanel/SimpleTogglePanel.xhtml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,112 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:a4j="https://ajax4jsf.dev.java.net/ajax"
+	xmlns:f="http://java.sun.com/jsf/core"
+	xmlns:h="http://java.sun.com/jsf/html"
+	xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+<f:view>
+	<head>
+	<style type="text/css">
+   .head
+   {
+   background-color: aqua;
+   }
+   .body
+   {
+   background-color: pink;
+   }
+   </style>
+	</head>
+	<body>
+	<h:messages></h:messages>
+	<h:form>
+
+		<rich:simpleTogglePanel id="sTP" bodyClass="body" headerClass="head"
+			label="simpleTogglePanel with some text"
+			width="#{simpleTogglePanel.width}"
+			height="#{simpleTogglePanel.height}"
+			switchType="#{simpleTogglePanel.switchType}" opened="false">
+			<f:facet name="closeMarker">
+				<h:outputText value="Close It" />
+			</f:facet>
+			<f:facet name="openMarker">
+				<h:outputText value="Open It" />
+			</f:facet>
+			<f:verbatim>
+		   	 Some text... Some text...  Some text... Some text... Some text... Some text... Some text... Some text...
+		     Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text... 
+		     Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text...
+		     Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text...
+		     Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text...
+		     Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text...
+	     	</f:verbatim>
+		</rich:simpleTogglePanel>
+
+		<rich:simpleTogglePanel id="sTP1" headerClass="head"
+			label="simpleTogglePanel wiht image"
+			width="#{simpleTogglePanel.width}"
+			height="#{simpleTogglePanel.height}"
+			rendered="#{simpleTogglePanel.rendered}"
+			switchType="#{simpleTogglePanel.switchType}" opened="false">
+			<h:graphicImage value="/pics/podb109_61.jpg" width="500" height="300"></h:graphicImage>
+		</rich:simpleTogglePanel>
+
+		<rich:simpleTogglePanel id="sTP2" label="Focus simpleTogglePanle"
+			width="#{simpleTogglePanel.width}" ignoreDupResponses="true"
+			focus="#{simpleTogglePanel.focus}">
+			<f:facet name="closeMarker">
+				<h:graphicImage value="/pics/ajax_stoped.gif"></h:graphicImage>
+			</f:facet>
+			<f:facet name="openMarker">
+				<h:graphicImage value="/pics/ajax_process.gif"></h:graphicImage>
+			</f:facet>
+			<rich:simpleTogglePanel id="INsTP">
+				<h:panelGrid columns="2">
+					<h:graphicImage value="/pics/podb109_61.jpg" width="250px" height="200px"></h:graphicImage>
+					<f:verbatim>
+	    		   	 Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text...
+				     Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text... 
+				     Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text...
+				     Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text...
+				     Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text...
+				     Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text...
+				     </f:verbatim>
+				</h:panelGrid>
+			</rich:simpleTogglePanel>
+		</rich:simpleTogglePanel>
+
+		<rich:spacer height="20px"></rich:spacer>
+
+		<h:panelGrid columns="2" border="1">
+			<h:outputText value="Width:">
+			</h:outputText>
+			<h:inputText value="#{simpleTogglePanel.width}">
+				<a4j:support event="onchange" reRender="sTP, sTP1"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Height:">
+			</h:outputText>
+			<h:inputText value="#{simpleTogglePanel.height}">
+				<a4j:support event="onchange" reRender="sTP, sTP1"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Switch Type:"></h:outputText>
+			<h:selectOneRadio value="#{simpleTogglePanel.switchType}">
+				<f:selectItem itemLabel="client" itemValue="client" />
+				<f:selectItem itemLabel="server" itemValue="server" />
+				<f:selectItem itemLabel="ajax" itemValue="ajax" />
+				<a4j:support event="onclick" reRender="sTP, sTP1, sTP2"></a4j:support>
+			</h:selectOneRadio>
+
+			<h:outputText value="Rendered:"></h:outputText>
+			<h:selectBooleanCheckbox value="#{simpleTogglePanel.rendered}"
+				onclick="submit()">
+			</h:selectBooleanCheckbox>
+
+		</h:panelGrid>
+
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+	</body>
+</f:view>
+</html>

Added: trunk/test-applications/facelets/src/main/webapp/Spacer/Spacer.xhtml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/Spacer/Spacer.xhtml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/Spacer/Spacer.xhtml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,67 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:a4j="https://ajax4jsf.dev.java.net/ajax"
+	xmlns:f="http://java.sun.com/jsf/core"
+	xmlns:h="http://java.sun.com/jsf/html"
+	xmlns:rich="http://richfaces.ajax4jsf.org/rich"
+	xmlns:sql="http://java.sun.com/jsp/jstl/sql">
+<f:view>
+	<head>
+	<style type="text/css">
+.text
+{
+font-size:20px;
+}
+.spacer
+{
+background-color: aqua;
+}
+</style>
+	</head>
+	<body>
+
+	<h:messages></h:messages>
+	<h:form>
+		<h:outputText value="Event:"></h:outputText>
+		<rich:spacer id="spacerIdEven" rendered="#{spacer.rendered}"
+			style="border: 3px solid red; background: blue;"
+			styleClass="#{spacer.style}" width="#{spacer.width}"
+			height="#{spacer.height}" onmousedown="alert('onmousedown')"
+			title="title"></rich:spacer>
+		<f:verbatim>
+			<br />
+		</f:verbatim>
+		<h:outputText value="Some text one..." styleClass="text"></h:outputText>
+		<rich:spacer id="spacerId" width="#{spacer.width}"
+			height="#{spacer.height}" rendered="#{spacer.rendered}"
+			styleClass="#{spacer.style}">
+		</rich:spacer>
+		<h:outputText value="Some text two..." styleClass="text"></h:outputText>
+
+		<h:panelGrid columns="2">
+			<h:outputText value="Width (px or %):"></h:outputText>
+			<h:inputText value="#{spacer.width}">
+				<a4j:support event="onchange" reRender="spacerId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Height (px or %):"></h:outputText>
+			<h:inputText value="#{spacer.height}">
+				<a4j:support event="onchange" reRender="spacerId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Rendered:"></h:outputText>
+			<h:selectBooleanCheckbox value="#{spacer.rendered}"
+				onclick="submit()">
+			</h:selectBooleanCheckbox>
+
+		</h:panelGrid>
+		<a4j:commandButton id="btn" action="#{spacer.doStyle}"
+			value="#{spacer.btn}" reRender="spacerId, btn"></a4j:commandButton>
+		<f:verbatim>
+			<br />
+		</f:verbatim>
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+	</body>
+</f:view>
+</html>

Added: trunk/test-applications/facelets/src/main/webapp/SuggestionBox/SuggestionBox.xhtml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/SuggestionBox/SuggestionBox.xhtml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/SuggestionBox/SuggestionBox.xhtml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,132 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:a4j="https://ajax4jsf.dev.java.net/ajax"
+	xmlns:f="http://java.sun.com/jsf/core"
+	xmlns:h="http://java.sun.com/jsf/html"
+	xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+<f:view>
+	<head>
+	<title></title>
+	</head>
+
+	<body>
+	<h:form id="suggestionbox_form">
+		<f:verbatim>Suggestion Box will suggest you Town's names if it's started with the "a" or "A" letter
+		<br />
+		</f:verbatim>
+		<h:inputText id="text" />
+		<rich:suggestionbox id="suggestionBoxId" for="text"
+			zindex="#{sb.zindex}" rules="#{sb.rules}"
+			suggestionAction="#{sb.autocomplete}" var="result"
+			width="#{sb.width}" height="#{sb.height}" border="#{sb.border}"
+			cellpadding="#{sb.cellpadding}" cellspacing="#{sb.cellspacing}"
+			first="#{sb.first}" minChars="#{sb.minchars}" tokens=", ]"
+			bgcolor="#{sb.bgColor}" focus="#{sb.forcus}" title="#{result.text}"
+			summary="summary" shadowOpacity="#{sb.shadowOpacity}"
+			shadowDepth="#{sb.shadowDepth}" reRender="#{sb.reRender}"
+			selectValueClass="mousemove">
+			<h:column>
+				<h:outputText value="#{result.text}" />
+			</h:column>
+		</rich:suggestionbox>
+		<div style="position:relative; font-size:50px; z-index:2; color: navy">z-index</div>
+		
+		<f:verbatim>
+			<br />
+			<br />
+		</f:verbatim>
+		
+		<h:panelGrid columns="2" cellpadding="5px">
+
+			<h:outputText value="z-index"></h:outputText>
+			<h:selectOneRadio value="#{sb.zindex}">
+				<f:selectItem itemLabel="1" itemValue="1" />
+				<f:selectItem itemLabel="3" itemValue="3" />
+				<a4j:support event="onclick" reRender="suggestionBoxId"></a4j:support>
+			</h:selectOneRadio>
+
+			<f:verbatim>Border</f:verbatim>
+			<h:inputText value="#{sb.border}">
+				<a4j:support event="onchange" reRender="suggestionBoxId"></a4j:support>
+			</h:inputText>
+
+			<f:verbatim>Width</f:verbatim>
+			<h:inputText value="#{sb.width}">
+				<a4j:support event="onchange" reRender="suggestionBoxId"></a4j:support>
+			</h:inputText>
+
+			<f:verbatim>Height</f:verbatim>
+			<h:inputText value="#{sb.height}">
+				<a4j:support event="onchange" reRender="suggestionBoxId"></a4j:support>
+			</h:inputText>
+
+			<f:verbatim>Cellpadding</f:verbatim>
+			<h:inputText value="#{sb.cellpadding}">
+				<a4j:support event="onchange" reRender="suggestionBoxId"></a4j:support>
+			</h:inputText>
+
+			<f:verbatim>Cellspacing</f:verbatim>
+			<h:inputText value="#{sb.cellspacing}">
+				<a4j:support event="onchange" reRender="suggestionBoxId"></a4j:support>
+			</h:inputText>
+
+			<f:verbatim>First</f:verbatim>
+			<h:inputText value="#{sb.first}">
+				<a4j:support event="onchange" reRender="suggestionBoxId"></a4j:support>
+			</h:inputText>
+
+			<f:verbatim>MinChars</f:verbatim>
+			<h:inputText value="#{sb.minchars}">
+				<a4j:support event="onchange" reRender="suggestionBoxId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Background Colour"></h:outputText>
+			<h:selectOneMenu value="#{sb.bgColor}">
+				<f:selectItem itemLabel="none" itemValue="none" />
+				<f:selectItem itemLabel="aqua" itemValue="aqua" />
+				<f:selectItem itemLabel="blue" itemValue="blue" />
+				<f:selectItem itemLabel="fuchsia" itemValue="fuchsia" />
+				<f:selectItem itemLabel="gray" itemValue="gray" />
+				<f:selectItem itemLabel="lime" itemValue="lime" />
+				<f:selectItem itemLabel="maroon" itemValue="maroon" />
+				<f:selectItem itemLabel="purple" itemValue="purple" />
+				<f:selectItem itemLabel="red" itemValue="red" />
+				<f:selectItem itemLabel="silver" itemValue="silver" />
+				<f:selectItem itemLabel="teal" itemValue="teal" />
+				<f:selectItem itemLabel="yellow" itemValue="yellow" />
+				<f:selectItem itemLabel="white" itemValue="white" />
+				<a4j:support event="onclick" reRender="suggestionBoxId"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="Shadow Opacity"></h:outputText>
+			<h:selectOneRadio value="#{sb.shadowOpacity}">
+				<f:selectItem itemLabel="1" itemValue="1" />
+				<f:selectItem itemLabel="3" itemValue="2" />
+				<f:selectItem itemLabel="5" itemValue="3" />
+				<f:selectItem itemLabel="7" itemValue="4" />
+				<f:selectItem itemLabel="9" itemValue="5" />
+				<f:selectItem itemLabel="11" itemValue="6" />
+				<f:selectItem itemLabel="13" itemValue="7" />
+				<f:selectItem itemLabel="15" itemValue="8" />
+				<a4j:support event="onclick" reRender="suggestionBoxId"></a4j:support>
+			</h:selectOneRadio>
+
+			<h:outputText value="Shadow Depth"></h:outputText>
+			<h:selectOneRadio value="#{sb.shadowDepth}">
+				<f:selectItem itemLabel="3" itemValue="3" />
+				<f:selectItem itemLabel="4" itemValue="4" />
+				<f:selectItem itemLabel="5" itemValue="5" />
+				<f:selectItem itemLabel="6" itemValue="6" />
+				<f:selectItem itemLabel="7" itemValue="6" />
+				<a4j:support event="onclick" reRender="suggestionBoxId"></a4j:support>
+			</h:selectOneRadio>
+
+			<h:outputText value="reRender"></h:outputText>
+			<h:selectBooleanCheckbox value="#{sb.reRender}"></h:selectBooleanCheckbox>
+		</h:panelGrid>
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+
+	</body>
+</f:view>
+</html>

Added: trunk/test-applications/facelets/src/main/webapp/TabPanel/TabPanel.xhtml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/TabPanel/TabPanel.xhtml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/TabPanel/TabPanel.xhtml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,137 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:a4j="https://ajax4jsf.dev.java.net/ajax"
+	xmlns:f="http://java.sun.com/jsf/core"
+	xmlns:h="http://java.sun.com/jsf/html"
+	xmlns:rich="http://richfaces.ajax4jsf.org/rich"
+	xmlns:c="http://java.sun.com/jsp/jstl/core">
+<f:view>
+<head>
+<link rel="stylesheet"
+	href="#{facesContext.externalContext.requestContextPath}/styles/styles.css"
+	type="text/css" />
+<style type="text/css">
+.text
+{
+font-size: 20px
+}
+.bgc
+{
+border: thick;
+background-color: green
+}
+
+</style>
+</head>
+<body>
+<h:form>
+	<h:messages></h:messages>
+	
+	<rich:tabPanel id="tabPanelId" 
+		headerAlignment="#{tabPanel.headerAlignment}"
+		width="#{tabPanel.width}" height="#{tabPanel.height}"
+		rendered="#{tabPanel.rendered}" title="#{tabPanel.title}"
+		switchType="#{tabPanel.switchType}"
+		headerSpacing="#{tabPanel.headerSpacing}"
+		selectedTab="#{tabPanel.selectedTab}"
+		activeTabClass="#{tabPanel.activeTabStyle}"
+		disabledTabClass="#{tabPanel.disabledTabStyle}"
+		inactiveTabClass="#{tabPanel.inactiveTabStyle}"
+		contentClass="#{tabPanel.contentStyle}">
+
+		<rich:tab id="tabOne" onmousedown="alert('OnMouseDown');"
+			labelWidth="#{tabPanel.labelWidth}" label="#{tabPanel.label}">
+			<h:outputText value="This is tab panel test example"
+				styleClass="text1"></h:outputText>
+		</rich:tab>
+		<rich:tab id="tabTwo" label="Tab with image" 
+			disabled="#{tabPanel.disabledTab}">
+			<f:facet name="header">
+				<h:outputText value="client switchType from facet" />
+			</f:facet>
+			<h:graphicImage value="/pics/masshtaby_01.jpg" width="560"
+				height="383"></h:graphicImage>
+		</rich:tab>
+		<rich:tab id="tabThree" label="Tab with some text"
+			disabled="#{tabPanel.disabledTab}">
+			<h:outputText
+				value="   Some text... Some text...  Some text... Some text... Some text... Some text... Some text... Some text...
+				     Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text... 
+				     Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text...
+				     Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text...
+				     Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text...
+				     Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text..." />
+		</rich:tab>
+	</rich:tabPanel>
+
+	<rich:spacer height="20px"></rich:spacer>
+
+	<h:panelGrid columns="2" cellspacing="10px">
+		<h:outputText value="Width (px or %):"></h:outputText>
+		<h:inputText value="#{tabPanel.width}">
+			<a4j:support event="onchange" reRender="tabPanelId"></a4j:support>
+		</h:inputText>
+
+		<h:outputText value="Height (px or %):"></h:outputText>
+		<h:inputText value="#{tabPanel.height}">
+			<a4j:support event="onchange" reRender="tabPanelId"></a4j:support>
+		</h:inputText>
+
+		<h:outputText value="Title:"></h:outputText>
+		<h:inputText value="#{tabPanel.title}">
+			<a4j:support event="onchange" reRender="tabPanelId"></a4j:support>
+		</h:inputText>
+
+		<h:outputText value="LabelWidth:"></h:outputText>
+		<h:inputText value="#{tabPanel.labelWidth}">
+			<a4j:support event="onchange" reRender="tabPanelId"></a4j:support>
+		</h:inputText>
+
+		<h:outputText value="SwitchType:"></h:outputText>
+		<h:selectOneRadio value="#{tabPanel.switchType}">
+			<f:selectItem itemLabel="client" itemValue="client" />
+			<f:selectItem itemLabel="server" itemValue="server" />
+			<f:selectItem itemLabel="ajax" itemValue="ajax" />
+			<a4j:support event="onchange" reRender="tabPanelId"></a4j:support>
+		</h:selectOneRadio>
+
+		<h:outputText value="Header Alignment:"></h:outputText>
+		<h:selectOneRadio value="#{tabPanel.headerAlignment}">
+			<f:selectItem itemLabel="left" itemValue="left" />
+			<f:selectItem itemLabel="center" itemValue="center" />
+			<f:selectItem itemLabel="right" itemValue="right" />
+			<a4j:support event="onchange" reRender="tabPanelId"></a4j:support>
+		</h:selectOneRadio>
+
+		<h:outputText value="Header Spacing:"></h:outputText>
+		<h:inputText value="#{tabPanel.headerSpacing}">
+			<a4j:support event="onchange" reRender="tabPanelId"></a4j:support>
+		</h:inputText>
+
+		<h:outputText value="Selected Tab:"></h:outputText>
+		<h:selectOneRadio value="#{tabPanel.selectedTab}" onchange="submit();">
+			<f:selectItem itemLabel="1" itemValue="tabOne" />
+			<f:selectItem itemLabel="2" itemValue="tabTwo" />
+			<f:selectItem itemLabel="3" itemValue="tabThr" />
+		</h:selectOneRadio>
+
+		<h:outputText value="Rendered"></h:outputText>
+		<h:selectBooleanCheckbox value="#{tabPanel.rendered}"
+			onclick="submit()">
+		</h:selectBooleanCheckbox>
+
+		<h:outputText value="Disable Tab"></h:outputText>
+		<h:selectBooleanCheckbox value="#{tabPanel.disabledTab}"
+			onclick="submit()">
+		</h:selectBooleanCheckbox>
+		<h:outputText value="Switch Styles:" />
+		<h:commandButton action="#{tabPanel.doStyles}"
+			value="#{tabPanel.btnLabel}" />
+
+
+	</h:panelGrid>
+	<h:commandLink value="Back" action="main"></h:commandLink>
+</h:form>
+</body>
+</f:view>
+</html>

Added: trunk/test-applications/facelets/src/main/webapp/TogglePanel/TogglePanel.xhtml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/TogglePanel/TogglePanel.xhtml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/TogglePanel/TogglePanel.xhtml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,209 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:a4j="https://ajax4jsf.dev.java.net/ajax"
+	xmlns:h="http://java.sun.com/jsf/html"
+	xmlns:f="http://java.sun.com/jsf/core"
+	xmlns:rich="http://richfaces.ajax4jsf.org/rich"
+	xmlns:ui="http://java.sun.com/jsf/facelets">
+<f:view>
+	<head></head>
+
+	<body>
+	<h:form id="tooggleTest">
+		<h:messages></h:messages>
+
+		<rich:togglePanel id="panel1" switchType="#{togglePanel.switchType}"
+			initialState="asus" stateOrder="asus,blank"
+			style="width:300px!important">
+			<f:facet name="blank">
+				<rich:panel>
+					<f:facet name="header">
+						<h:panelGroup>
+							<rich:toggleControl id="toggleControl_blank"
+								for="tooggleTest:panel1">
+								<h:outputText value="Expand" style="font-weight: bold;" />
+								<h:graphicImage url="/pics/collapse.gif"
+									style="border-width: 0px;" />
+							</rich:toggleControl>
+						</h:panelGroup>
+					</f:facet>
+				</rich:panel>
+			</f:facet>
+
+			<f:facet name="asus">
+				<rich:panel>
+					<f:facet name="header">
+						<h:panelGroup>
+							<rich:toggleControl id="toggleControl_panel1"
+								for="tooggleTest:panel1">
+								<h:outputText value="Collapse" style="font-weight: bold;" />
+								<h:graphicImage url="/pics/expand.gif"
+									style="border-width: 0px;" />
+							</rich:toggleControl>
+						</h:panelGroup>
+					</f:facet>
+					<h:panelGrid columns="2" border="0"
+						style="width: 100%;background-color: white;">
+						<h:graphicImage url="/pics/asus.jpg" height="300" width="300"
+							alt="asus.jpg" />
+						<h:panelGroup>
+							<h:outputText style="font: 18px;font-weight: bold;"
+								value="Asus F 3 Tc" />
+							<f:verbatim>
+								Processor:  AMD Turion 64 X 2 - 1600 Mhz<br />
+								RAM: 1024 Mb<br />
+								HDD: 100 Gb<br />
+								Screen: 15.4 WXGA<br />
+								Video: NVIDIA GeForce Go 7300<br />
+								Drive: DVD- RW DL<br />
+							</f:verbatim>
+						</h:panelGroup>
+					</h:panelGrid>
+				</rich:panel>
+			</f:facet>
+		</rich:togglePanel>
+		<br />
+		<br />
+
+		<rich:togglePanel id="panel2" switchType="#{togglePanel.switchType}"
+			initialState="#{togglePanel.initialState}"
+			stateOrder="#{togglePanel.stateOrder}">
+			<f:facet name="asus">
+				<rich:panel>
+					<f:facet name="header">
+						<h:panelGroup>
+							<h:outputText value="Customizable toggle panel"
+								style="font-weight: bold;" />
+							<rich:toggleControl id="toggleControl_panel_1"
+								for="tooggleTest:panel2">
+								<h:outputText value="Next"></h:outputText>
+								<h:graphicImage url="/pics/expand.gif"
+									style="border-width: 0px;" />
+							</rich:toggleControl>
+						</h:panelGroup>
+					</f:facet>
+					<h:panelGrid columns="2" border="0"
+						style="width: 100%;background-color: white;">
+						<h:graphicImage url="/pics/asus.jpg" height="300" width="300"
+							alt="asus.jpg" />
+						<h:panelGroup>
+							<h:outputText style="font: 18px;font-weight: bold;"
+								value="Asus F 3 Tc" />
+							<f:verbatim>
+								Processor:  AMD Turion 64 X 2 - 1600 Mhz<br />
+								RAM: 1024 Mb<br />
+								HDD: 100 Gb<br />
+								Screen: 15.4 WXGA<br />
+								Video: NVIDIA GeForce Go 7300<br />
+								Drive: DVD- RW DL<br />
+							</f:verbatim>
+						</h:panelGroup>
+					</h:panelGrid>
+				</rich:panel>
+			</f:facet>
+
+			<f:facet name="benq">
+				<rich:panel>
+					<f:facet name="header">
+						<h:panelGroup>
+							<h:outputText value="Customizable toggle panel"
+								style="font-weight: bold;" />
+							<rich:toggleControl id="toggleControl_panel_2"
+								for="tooggleTest:panel2">
+								<h:outputText value="Next"></h:outputText>
+								<h:graphicImage url="/pics/expand.gif"
+									style="border-width: 0px;" />
+							</rich:toggleControl>
+						</h:panelGroup>
+					</f:facet>
+					<h:panelGrid columns="2" border="0"
+						style="width: 100%;background-color: yellow;">
+						<h:graphicImage url="/pics/benq.jpg" height="300" width="300"
+							alt="benq.jpg" />
+						<h:panelGroup>
+							<h:outputText style="font: 18px;font-weight: bold;"
+								value="BenQ A 52" />
+							<f:verbatim>
+								Processor:  Core Duo T2250 (1.73GHz)<br />
+								RAM: 1024 Mb<br />
+								HDD: 100 Gb<br />
+								Screen: 15.4 WXGA<br />
+								Video: ATI Mobility Radeon X 200<br />
+								Drive: DVD- RW D<br />
+							</f:verbatim>
+						</h:panelGroup>
+					</h:panelGrid>
+				</rich:panel>
+			</f:facet>
+
+			<f:facet name="toshiba">
+				<rich:panel>
+					<f:facet name="header">
+						<h:panelGroup>
+							<h:outputText value="Customizable toggle panel"
+								style="font-weight: bold;" />
+							<rich:toggleControl id="toggleControl_panel_3"
+								for="tooggleTest:panel2">
+								<h:outputText value="Next"></h:outputText>
+								<h:graphicImage url="/pics/expand.gif"
+									style="border-width: 0px;" />
+							</rich:toggleControl>
+						</h:panelGroup>
+					</f:facet>
+					<h:panelGrid columns="2" border="0"
+						style="width: 100%;background-color: orange;">
+						<h:graphicImage url="/pics/toshiba.jpg" height="300" width="300"
+							alt="toshiba.jpg" />
+						<h:panelGroup>
+							<h:outputText style="font: 18px;font-weight: bold;"
+								value="Toshiba Satellite A 100-784" />
+							<f:verbatim>
+								Processor:  Intel Core Duo T2250 - 1.73GHz<br />
+								RAM: 1024 Mb<br />
+								HDD: 100 Gb<br />
+								Screen: 15.4 WXGA<br />
+								Video: Intel Graphics Media 950<br />
+								Drive: DVD- RW DL<br />
+							</f:verbatim>
+						</h:panelGroup>
+					</h:panelGrid>
+				</rich:panel>
+			</f:facet>
+		</rich:togglePanel>
+
+		<br />
+		<br />
+		<rich:separator height="5px" width="500px" />
+
+		<h:panelGrid columns="2" cellpadding="5px" cellspacing="5px">
+			<h:outputText value="InitialState:"></h:outputText>
+			<h:selectOneRadio value="#{togglePanel.initialState}">
+				<f:selectItem itemLabel="Asus" itemValue="asus" />
+				<f:selectItem itemLabel="Benq" itemValue="benq" />
+				<f:selectItem itemLabel="toshiba" itemValue="toshiba" />
+				<a4j:support event="onchange" reRender="tooggleTest:panel2"></a4j:support>
+			</h:selectOneRadio>
+
+			<h:outputText value="StateOrder:"></h:outputText>
+			<h:selectOneRadio value="#{togglePanel.stateOrder}">
+				<f:selectItem itemLabel="Asus,Benq,Toshiba"
+					itemValue="asus,benq,toshiba" />
+				<f:selectItem itemLabel="Toshiba, Asus, Benq"
+					itemValue="toshiba,asus,benq" />
+				<a4j:support event="onchange" reRender="tooggleTest:panel2"></a4j:support>
+			</h:selectOneRadio>
+
+			<h:outputText value="switchType:"></h:outputText>
+			<h:selectOneRadio value="#{togglePanel.switchType}">
+				<f:selectItem itemLabel="client" itemValue="client" />
+				<f:selectItem itemLabel="server" itemValue="server" />
+				<f:selectItem itemLabel="ajax" itemValue="ajax" />
+				<a4j:support event="onclick" reRender="panle1,panel2"></a4j:support>
+			</h:selectOneRadio>
+		</h:panelGrid>
+		<h:commandLink value="Back" action="main"></h:commandLink>
+		<ui:debug hotkey="L"></ui:debug>
+	</h:form>
+	</body>
+</f:view>
+</html>

Added: trunk/test-applications/facelets/src/main/webapp/ToolBar/ToolBar.xhtml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/ToolBar/ToolBar.xhtml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/ToolBar/ToolBar.xhtml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,72 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:a4j="https://ajax4jsf.dev.java.net/ajax"
+	xmlns:f="http://java.sun.com/jsf/core"
+	xmlns:h="http://java.sun.com/jsf/html"
+	xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+<f:view>
+	<head>
+	<link rel="stylesheet"
+		href="#{facesContext.externalContext.requestContextPath}/styles/styles.css"
+		type="text/css "></link>
+	</head>
+	<body>
+	<h:form>
+		<h:messages></h:messages>
+
+		<rich:toolBar id="toolBarId" width="#{toolBar.width}"
+			height="#{toolBar.height}" rendered="#{toolBar.rendered}"
+			itemSeparator="#{toolBar.itemSeparator}"
+			contentClass="#{toolBar.contentStyle}"
+			separatorClass="#{toolBar.separatorStyle}">
+			<h:outputText value="ToolBar" style="font-style: italic"></h:outputText>
+
+			<rich:toolBarGroup>
+				<h:outputText value="Width:"></h:outputText>
+				<h:inputText value="#{toolBar.width}">
+					<a4j:support event="onchange" reRender="toolBarId"></a4j:support>
+				</h:inputText>
+			</rich:toolBarGroup>
+
+			<rich:toolBarGroup>
+				<h:outputText value="Height:"></h:outputText>
+				<h:inputText value="#{toolBar.height}">
+					<a4j:support event="onchange" reRender="toolBarId"></a4j:support>
+				</h:inputText>
+			</rich:toolBarGroup>
+
+			<rich:toolBarGroup location="#{toolBar.location}">
+				<h:graphicImage value="/pics/ajax_process.gif"></h:graphicImage>
+			</rich:toolBarGroup>
+
+		</rich:toolBar>
+
+		<h:panelGrid columns="2">
+			<h:outputText value="Image location:"></h:outputText>
+			<h:selectOneRadio value="#{toolBar.location}">
+				<f:selectItem itemLabel="left" itemValue="left" />
+				<f:selectItem itemLabel="right" itemValue="right" />
+				<a4j:support event="onclick" reRender="toolBarId"></a4j:support>
+			</h:selectOneRadio>
+
+
+			<h:outputText value="itemSeparator:"></h:outputText>
+			<h:selectOneRadio value="#{toolBar.itemSeparator}">
+				<f:selectItem itemLabel="none" itemValue="none" />
+				<f:selectItem itemLabel="line" itemValue="line" />
+				<f:selectItem itemLabel="square" itemValue="square" />
+				<f:selectItem itemLabel="disc" itemValue="disc" />
+				<f:selectItem itemLabel="grid" itemValue="grid" />
+				<a4j:support event="onclick" reRender="toolBarId"></a4j:support>
+			</h:selectOneRadio>
+
+			<h:outputText value="Switch Styles" />
+			<a4j:commandButton id="slBtn" value="#{toolBar.btnLabel}"
+				action="#{toolBar.doStyles}" reRender="toolBarId,slBtn">
+			</a4j:commandButton>
+		</h:panelGrid>
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+	</body>
+</f:view>
+</html>

Added: trunk/test-applications/facelets/src/main/webapp/Tooltip/Tooltip.xhtml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/Tooltip/Tooltip.xhtml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/Tooltip/Tooltip.xhtml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,151 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:a4j="https://ajax4jsf.dev.java.net/ajax"
+	xmlns:f="http://java.sun.com/jsf/core"
+	xmlns:h="http://java.sun.com/jsf/html"
+	xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+<f:view>
+	<head>
+	</head>
+	<body>
+	<h:form>
+		<h:messages></h:messages>
+
+		<h:outputText value="DEFAULT VALUE:"></h:outputText>
+
+		<f:verbatim>
+			<br />
+		</f:verbatim>
+
+		<h:graphicImage value="/pics/ajax_process.gif" width="15px"
+			height="15px">
+			<rich:toolTip value="ajax progress">
+			</rich:toolTip>
+		</h:graphicImage>
+
+		<h:inputText value="Text" id="inp1" size="50">
+			<rich:toolTip value="toolTip for input text">
+				<f:facet name="defaultContent">
+					<f:verbatim>DEFAULT VALUE</f:verbatim>
+				</f:facet>
+			</rich:toolTip>
+		</h:inputText>
+
+		<h:selectOneListbox value="1" id="ddl">
+			<rich:toolTip value="1231231">
+				<f:facet name="defaultContent">
+					<f:verbatim>DEFAULT VALUE DropDown</f:verbatim>
+				</f:facet>
+			</rich:toolTip>
+		</h:selectOneListbox>
+
+		<f:verbatim>
+			<br />
+			<br />
+		</f:verbatim>
+
+		<h:outputText value=" Test tooltip:"></h:outputText>
+		<f:verbatim>
+			<br />
+		</f:verbatim>
+
+		<rich:panel style="width:50px; height:50px; background-color: gray">
+			<rich:toolTip id="tooltipID" value="#{tooltip.value}" 
+				mode="#{tooltip.mode}" delay="#{tooltip.delay}" layout="#{tooltip.layout}"
+				horizontalOffset="#{tooltip.horizontalOffset}"
+				verticalOffset="#{tooltip.verticalOffset}"
+				followmouse="#{tooltip.followMouse}"
+				direction="#{tooltip.direction}" style="#{tooltip.style}"
+				disabled="#{tooltip.disabled}" rendered="#{tooltip.rendered}">
+				<h:graphicImage id="pricsID" value="/pics/ajax_process.gif"></h:graphicImage>
+			</rich:toolTip>
+		</rich:panel>
+
+		<f:verbatim>
+			<br />
+		</f:verbatim>
+		
+		<h:panelGrid columns="2">
+			<h:outputText value="Text:"></h:outputText>
+			<h:inputText value="#{tooltip.value}">
+				<a4j:support event="onchange" reRender="tooltipID" />
+			</h:inputText>
+			
+			<h:outputText value="Delay"></h:outputText>
+			<h:inputText value="#{tooltip.delay}">
+				<a4j:support event="onchange" reRender="tooltipID" />
+			</h:inputText>
+			
+			<h:outputText value="Layout:"></h:outputText>
+			<h:selectOneRadio value="#{tooltip.layout}">
+				<f:selectItem itemLabel="inline" itemValue="inline" />
+				<f:selectItem itemLabel="block" itemValue="block" />
+				<a4j:support event="onclick" reRender="tooltipID" />
+			</h:selectOneRadio>
+			
+			<h:outputText value="Mode:"></h:outputText>
+			<h:selectOneRadio value="#{tooltip.mode}">
+				<f:selectItem itemLabel="client" itemValue="client" />
+				<f:selectItem itemLabel="ajax" itemValue="ajax" />
+				<a4j:support event="onclick" reRender="tooltipID" />
+			</h:selectOneRadio>
+
+			<h:outputText value="Horizontal offset:"></h:outputText>
+			<h:inputText value="#{tooltip.horizontalOffset}">
+				<a4j:support event="onchange" reRender="tooltipID" />
+			</h:inputText>
+
+			<h:outputText value="Vertical offset:"></h:outputText>
+			<h:inputText value="#{tooltip.verticalOffset}">
+				<a4j:support event="onchange" reRender="tooltipID" />
+			</h:inputText>
+
+			<h:outputText value="Follow mouse:"></h:outputText>
+			<h:selectBooleanCheckbox value="#{tooltip.followMouse}">
+				<a4j:support event="onclick" reRender="tooltipID" />
+			</h:selectBooleanCheckbox>
+
+			<h:outputText value="Direction:" />
+			<h:selectOneRadio value="#{tooltip.direction}">
+				<f:selectItem itemLabel="top-right" itemValue="top-right" />
+				<f:selectItem itemLabel="top-left" itemValue="top-left" />
+				<f:selectItem itemLabel="bottom-right" itemValue="bottom-right" />
+				<f:selectItem itemLabel="bottom-left" itemValue="bottom-left" />
+				<f:selectItem itemLabel="auto" itemValue="auto" />
+				<a4j:support event="onclick" reRender="tooltipID" />
+			</h:selectOneRadio>
+
+			<h:outputText value="Style:"></h:outputText>
+			<h:selectOneRadio value="#{tooltip.style}">
+				<f:selectItem itemLabel="none" itemValue="none" />
+				<f:selectItem itemLabel="border:3px; font:bold 14px;"
+					itemValue="border:3px; font:bold 14px;" />
+				<f:selectItem
+					itemLabel="border:green 3px solid; background-color:yellow;"
+					itemValue="border:green 3px solid; background-color:yellow;" />
+				<f:selectItem
+					itemLabel="border:green 2px solid; font-family:monospace;"
+					itemValue="border:green 2px solid; font-family:monospace;" />
+				<a4j:support event="onclick" reRender="tooltipID" />
+			</h:selectOneRadio>
+
+			<h:outputText value="Disambled:"></h:outputText>
+			<h:selectBooleanCheckbox value="#{tooltip.disabled}">
+				<a4j:support event="onclick" reRender="tooltipID" />
+			</h:selectBooleanCheckbox>
+
+			<h:outputText value="Rendered:"></h:outputText>
+			<h:selectBooleanCheckbox value="#{tooltip.rendered}">
+				<a4j:support event="onclick" reRender="tooltipID" />
+			</h:selectBooleanCheckbox>
+		</h:panelGrid>
+		<!-- h:inputText value="ddd"
+			onclick="toolTipAttach();alert(document.getElementById('lkjl'))" /-->
+
+	</h:form>
+	<h:form>
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+	</body>
+</f:view>
+</html>

Added: trunk/test-applications/facelets/src/main/webapp/Tree/Tree.xhtml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/Tree/Tree.xhtml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/Tree/Tree.xhtml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,133 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:a4j="https://ajax4jsf.dev.java.net/ajax"
+	xmlns:f="http://java.sun.com/jsf/core"
+	xmlns:h="http://java.sun.com/jsf/html"
+	xmlns:rich="http://richfaces.ajax4jsf.org/rich"
+	xmlns:dnd="http://richfaces.ajax4jsf.org/drag-drop">
+<f:view>
+	<head>
+	<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
+	<title>Tree</title>
+	</head>
+	<body>
+	<h:form>
+		<a4j:outputPanel ajaxRendered="true">
+			<h:messages />
+		</a4j:outputPanel>
+		
+		<rich:tree id="tree" switchType="#{bean.switchType}"
+			value="#{bean.data}" var="data"
+			nodeFace="#{data.name != 'param-value' ? 'input' : 'text'}"
+			changeExpandListener="#{bean.onExpand}"
+			nodeSelectListener="#{bean.onSelect}" binding="#{bean.tree}"
+			onselected="window.status='selectedNode: '+event.selectedNode;"
+			onexpand="window.status='expandedNode: '+event.expandedNode"
+			oncollapse="window.status='collapsedNode: '+ event.collapsedNode"
+			ajaxSubmitSelection="true" reRender="outputText, selectOneListbox"
+			preserveModel="none" dragIndicator="treeIndicator" immediate="false"
+			acceptedTypes="file1" dragType="#{bean.dragOn ? 'file1' : ''}"
+			iconCollapsed="#{bean.iconCollapsed}"
+			iconExpanded="#{bean.iconExpanded}" iconLeaf="#{bean.iconLeaf}"
+			icon="#{bean.icon}" dropListener="#{bean.processDrop}">
+
+			<f:facet name="icon">
+				<h:outputText value="icon" rendered="#{bean.renderFacets}" />
+			</f:facet>
+			<f:facet name="iconLeaf">
+				<h:outputText value="leaf" rendered="#{bean.renderFacets}" />
+			</f:facet>
+			<f:facet name="iconExpanded">
+				<h:outputText value="expanded" rendered="#{bean.renderFacets}" />
+			</f:facet>
+			<f:facet name="iconCollapsed">
+				<h:outputText value="collapsed" rendered="#{bean.renderFacets}" />
+			</f:facet>
+
+			<dnd:dndParam name="treeParam" value="Tree Parameter" />
+			<dnd:dndParam name="accept" value="accept" />
+
+			<rich:treeNode type="input" dropListener="#{bean.processDrop}"
+				oncollapse="Element.removeClassName(event['treeItem'].getElement(), 'colored')"
+				onexpand="Element.addClassName(event['treeItem'].getElement(), 'colored')">
+				<h:outputText value="#{data} : " />
+				<h:inputText value="#{data.name}" required="true"
+					styleClass="inputs">
+				</h:inputText>
+
+				<dnd:dndParam name="nodeParam" value="Node Parameter" />
+
+			</rich:treeNode>
+			<rich:treeNode type="text" nodeClass="customNode"
+				acceptedTypes="file2" onselected="return false;">
+				<h:outputText value="#{data}" />
+			</rich:treeNode>
+		</rich:tree>
+		
+		<f:verbatim>
+			<br />
+		</f:verbatim>
+
+		<h:outputText value="Enter path to expand:" />
+		<h:inputText value="#{bean.pathToExpand}">
+			<a4j:support event="onchange" reRender="tree"
+				action="#{bean.expandNode}" />
+		</h:inputText>
+
+		<rich:separator></rich:separator>
+
+		<h:panelGrid columns="2">
+			<h:outputText value="Change tree switchType:" />
+			<h:selectOneRadio value="#{bean.switchType}" onclick="submit()">
+				<f:selectItem itemLabel="client" itemValue="client" />
+				<f:selectItem itemLabel="server" itemValue="server" />
+				<f:selectItem itemLabel="ajax" itemValue="ajax" />
+			</h:selectOneRadio>
+
+			<h:outputText value="Drag switch:" />
+			<h:selectBooleanCheckbox value="#{bean.dragOn}" onchange="submit();"></h:selectBooleanCheckbox>
+
+			<h:outputText value="Render facets:" />
+			<h:selectBooleanCheckbox value="#{bean.renderFacets}"
+				onchange="submit();"></h:selectBooleanCheckbox>
+
+			<h:commandButton value="#{bean.commandButtonCaption}"
+				actionListener="#{bean.changeIcons}" />
+		</h:panelGrid>
+
+		<f:verbatim>
+			<br />
+			<br />
+		</f:verbatim>
+
+		<rich:tree id="testTree" var="_data" switchType="ajax"
+			ajaxSubmitSelection="true" preserveModel="none" value="#{bean.data1}"
+			nodeSelectListener="#{bean.onSelectInc}" nodeFace="node">
+			<rich:treeNode type="node">
+				<h:outputText value="#{_data}" />
+			</rich:treeNode>
+		</rich:tree>
+		<rich:separator></rich:separator>
+		<h:outputText value="Tree without treeNode:"></h:outputText>
+		<rich:separator></rich:separator>
+
+		<rich:tree switchType="client" style="width:300px"
+			value="#{pathwayBean.pathwayTree}" var="item" nodeFace="#{item.type}">
+			<rich:treeNode type="library">
+				<h:outputText value="#{item.type}" />
+			</rich:treeNode>
+			<rich:treeNode type="pathway">
+				<h:outputText value="#{item.name}" />
+			</rich:treeNode>
+			<rich:treeNode type="organism">
+				<h:outputText value="#{item.name}" />
+			</rich:treeNode>
+		</rich:tree>
+
+		<rich:spacer></rich:spacer>
+
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+	</body>
+</f:view>
+</html>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/.cvsignore
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/.cvsignore	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/.cvsignore	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1 @@
+lib

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Calendar.xml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Calendar.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Calendar.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,19 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_1.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>calendarDataModel</managed-bean-name>
+  <managed-bean-class>calendar.CalendarDataModelImpl</managed-bean-class>
+  <managed-bean-scope>application</managed-bean-scope>
+ </managed-bean>
+ <managed-bean>
+  <managed-bean-name>calendarBean</managed-bean-name>
+  <managed-bean-class>calendar.CalendarBean</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+ <validator>
+  <validator-id>org.richfaces.CalendarValidator</validator-id>
+  <validator-class>calendar.CalendarValidator</validator-class>
+ </validator>
+</faces-config>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DDMenu.xml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DDMenu.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DDMenu.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>dDMenu</managed-bean-name>
+  <managed-bean-class>ddMenu.DDMenu</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DataFilterSlider.xml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DataFilterSlider.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DataFilterSlider.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,19 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>mybean</managed-bean-name>
+  <managed-bean-class>dfs.DemoSliderBean</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+  <managed-property>
+   <property-name>demoInventoryList</property-name>
+   <value>#{inventoryList}</value>
+  </managed-property>
+ </managed-bean>
+ <managed-bean>
+  <managed-bean-name>inventoryList</managed-bean-name>
+  <managed-bean-class>dfs.DemoInventoryList</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DataFilterSlider.xml.l4t
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DataFilterSlider.xml.l4t	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DataFilterSlider.xml.l4t	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<PROCESS ENTITY="JSFProcess"/>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DataScroller.xml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DataScroller.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DataScroller.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>dataScroller</managed-bean-name>
+  <managed-bean-class>dataScroller.DataScroller</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DataScroller.xml.l4t
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DataScroller.xml.l4t	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DataScroller.xml.l4t	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<PROCESS ENTITY="JSFProcess"/>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DradAbdDrop.xml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DradAbdDrop.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DradAbdDrop.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>dndBean</managed-bean-name>
+  <managed-bean-class>dnd.DndBean</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DradAbdDrop.xml.l4t
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DradAbdDrop.xml.l4t	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-DradAbdDrop.xml.l4t	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<PROCESS ENTITY="JSFProcess"/>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Gmap.xml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Gmap.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Gmap.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,15 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+	<managed-bean>
+		<managed-bean-name>gmap</managed-bean-name>
+		<managed-bean-class>gmap.Gmap</managed-bean-class>
+		<managed-bean-scope>request</managed-bean-scope>
+		<managed-property>
+			<property-name>zoom</property-name>
+			<property-class>java.lang.String</property-class>
+			<value>10</value>
+		</managed-property>
+	</managed-bean>
+</faces-config>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Gmap.xml.l4t
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Gmap.xml.l4t	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Gmap.xml.l4t	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<PROCESS ENTITY="JSFProcess"/>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Icon.xml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Icon.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Icon.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>icon</managed-bean-name>
+  <managed-bean-class>style.icon.Icon</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-InputNumberSlider.xml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-InputNumberSlider.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-InputNumberSlider.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>inputNumberSlider</managed-bean-name>
+  <managed-bean-class>inputNumberSlider.InputNumberSlider</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>
\ No newline at end of file

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-InputNumberSpinner.xml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-InputNumberSpinner.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-InputNumberSpinner.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>inputNumberSpinner</managed-bean-name>
+  <managed-bean-class>inputNumberSpinner.InputNumberSpinner</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-ModalPanel.xml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-ModalPanel.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-ModalPanel.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>modalPanel</managed-bean-name>
+  <managed-bean-class>modalPanel.ModalPanel</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Paint2D.xml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Paint2D.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Paint2D.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,15 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>paint2D</managed-bean-name>
+  <managed-bean-class>paint2D.Paint2D</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+ <managed-bean>
+  <managed-bean-name>paintData</managed-bean-name>
+  <managed-bean-class>paint2D.PaintData</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Panel.xml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Panel.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Panel.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>panel</managed-bean-name>
+  <managed-bean-class>panel.Panel</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-PanelBar.xml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-PanelBar.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-PanelBar.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>panelBar</managed-bean-name>
+  <managed-bean-class>panelBar.PanelBar</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-PanelMenu.xml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-PanelMenu.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-PanelMenu.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>panelMenu</managed-bean-name>
+  <managed-bean-class>panelMenu.PanelMenu</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Separator.xml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Separator.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Separator.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>separator</managed-bean-name>
+  <managed-bean-class>separator.Separator</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Separator.xml.l4t
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Separator.xml.l4t	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Separator.xml.l4t	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<PROCESS ENTITY="JSFProcess"/>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Skin.xml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Skin.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Skin.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+	<managed-bean>
+		<managed-bean-name>skinBean</managed-bean-name>
+		<managed-bean-class>skins.Skins</managed-bean-class>
+		<managed-bean-scope>session</managed-bean-scope>
+	</managed-bean>
+</faces-config>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Spacer.xml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Spacer.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Spacer.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>spacer</managed-bean-name>
+  <managed-bean-class>spacer.Spacer</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Spacer.xml.l4t
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Spacer.xml.l4t	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Spacer.xml.l4t	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<PROCESS ENTITY="JSFProcess"/>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-SuggestionBox.xml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-SuggestionBox.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-SuggestionBox.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>sb</managed-bean-name>
+  <managed-bean-class>sb.Sb</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-SuggestionBox.xml.l4t
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-SuggestionBox.xml.l4t	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-SuggestionBox.xml.l4t	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<PROCESS ENTITY="JSFProcess"/>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-TabPanel.xml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-TabPanel.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-TabPanel.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>tabPanel</managed-bean-name>
+  <managed-bean-class>tabPanel.TabPanel</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+ </faces-config>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-TogglePanel.xml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-TogglePanel.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-TogglePanel.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>simpleTogglePanel</managed-bean-name>
+  <managed-bean-class>sTP.SimpleTogglePanel</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>
\ No newline at end of file

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-ToolBar.xml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-ToolBar.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-ToolBar.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>toolBar</managed-bean-name>
+  <managed-bean-class>toolBar.ToolBar</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-ToolBar.xml.l4t
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-ToolBar.xml.l4t	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-ToolBar.xml.l4t	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<PROCESS ENTITY="JSFProcess"/>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Tree.xml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Tree.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-Tree.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,15 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>bean</managed-bean-name>
+  <managed-bean-class>tree.Bean</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+ <managed-bean>
+  <managed-bean-name>pathwayBean</managed-bean-name>
+  <managed-bean-class>tree.TreeBean</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-tooltip.xml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-tooltip.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config-tooltip.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>tooltip</managed-bean-name>
+  <managed-bean-class>tooltip.Tooltip</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config.xml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_1.dtd">
+<faces-config>
+ <navigation-rule>
+  <from-view-id>/pages/main.xhtml</from-view-id>
+  <navigation-case>
+   <from-outcome>Spinner</from-outcome>
+   <to-view-id>/inputNumberSpinner/inputNumberSpinner.xhtml</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>Panel</from-outcome>
+   <to-view-id>/Panel/Panel.xhtml</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>Separ</from-outcome>
+   <to-view-id>/Separator/Separator.xhtml</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>Spacer</from-outcome>
+   <to-view-id>/Spacer/Spacer.xhtml</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>sTP</from-outcome>
+   <to-view-id>/SimpleTogglePanel/SimpleTogglePanel.xhtml</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>TabPanel</from-outcome>
+   <to-view-id>/TabPanel/TabPanel.xhtml</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>Suggest</from-outcome>
+   <to-view-id>/SuggestionBox/SuggestionBox.xhtml</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>Paint</from-outcome>
+   <to-view-id>/Paint2D/Paint2D.xhtml</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>Tree</from-outcome>
+   <to-view-id>/Tree/Tree.xhtml</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>Slide</from-outcome>
+   <to-view-id>/inputNumberSlider/inputNumberSlider.xhtml</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>PanelBar</from-outcome>
+   <to-view-id>/PanelBar/PanelBar.xhtml</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>TogglePanel</from-outcome>
+   <to-view-id>/TogglePanel/TogglePanel.xhtml</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>Gmap</from-outcome>
+   <to-view-id>/Gmap/Gmap.xhtml</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>ToolBar</from-outcome>
+   <to-view-id>/ToolBar/ToolBar.xhtml</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>dnd</from-outcome>
+   <to-view-id>/DradAndDrop/DragAndDrop.xhtml</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>DS</from-outcome>
+   <to-view-id>/DataScroller/DS.xhtml</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>DDMenu</from-outcome>
+   <to-view-id>/DropDownMenu/DDMenu.xhtml</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>DFS</from-outcome>
+   <to-view-id>/DataFilterSlider/DataFilterSlider.xhtml</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>PanelMenu</from-outcome>
+   <to-view-id>/PanelMenu/PanelMenu.xhtml</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>ModalPanel</from-outcome>
+   <to-view-id>/ModalPanel/ModalPanel.xhtml</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>Tooltip</from-outcome>
+   <to-view-id>/Tooltip/Tooltip.xhtml</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>Calendar</from-outcome>
+   <to-view-id>/Calendar/Calendar.xhtml</to-view-id>
+  </navigation-case>
+ </navigation-rule>
+ <navigation-rule>
+  <from-view-id>/Panel/Panel.xhtml</from-view-id>
+  <navigation-case>
+   <from-outcome>Sample2</from-outcome>
+   <to-view-id>/Panel/panel2.xhtml</to-view-id>
+  </navigation-case>
+ </navigation-rule>
+ <navigation-rule>
+  <from-view-id>/Panel/panel2.xhtml</from-view-id>
+  <navigation-case>
+   <from-outcome>BackP</from-outcome>
+   <to-view-id>/Panel/Panel.xhtml</to-view-id>
+  </navigation-case>
+ </navigation-rule>
+ <navigation-rule>
+  <from-view-id>*</from-view-id>
+  <navigation-case>
+   <from-outcome>main</from-outcome>
+   <to-view-id>/pages/main.xhtml</to-view-id>
+  </navigation-case>
+ </navigation-rule>
+ <application>
+  <view-handler>com.sun.facelets.FaceletViewHandler</view-handler>
+ </application>
+</faces-config>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config.xml.l4t
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config.xml.l4t	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/faces-config.xml.l4t	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,178 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<PROCESS ENTITY="JSFProcess">
+ <PROCESS-ITEM ENTITY="JSFProcessGroup" NAME="rules:#pages#main.xhtml"
+  PATH="/pages/main.xhtml" SHAPE="32,129,0,0">
+  <PROCESS-ITEM ENTITY="JSFProcessItem" ID="rules:#pages#main.xhtml:0"
+   NAME="item" PATH="/pages/main.xhtml">
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="Spinner::#inputNumberSpinner#inputNumberSpinner.xhtml"
+    NAME="output" PATH="/inputNumberSpinner/inputNumberSpinner.xhtml"
+    TARGET="rules:#inputNumberSpinner#inputNumberSpinner.xhtml" TITLE="Spinner"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="Panel::#Panel#Panel.xhtml" NAME="output1"
+    PATH="/Panel/Panel.xhtml" TARGET="rules:#Panel#Panel.xhtml" TITLE="Panel"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="Separ::#Separator#Separator.xhtml" NAME="output2"
+    PATH="/Separator/Separator.xhtml"
+    TARGET="rules:#Separator#Separator.xhtml" TITLE="Separ"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="Spacer::#Spacer#Spacer.xhtml" NAME="output3"
+    PATH="/Spacer/Spacer.xhtml" TARGET="rules:#Spacer#Spacer.xhtml" TITLE="Spacer"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="sTP::#SimpleTogglePanel#SimpleTogglePanel.xhtml" NAME="output4"
+    PATH="/SimpleTogglePanel/SimpleTogglePanel.xhtml"
+    TARGET="rules:#SimpleTogglePanel#SimpleTogglePanel.xhtml" TITLE="sTP"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="TabPanel::#TabPanel#TabPanel.xhtml" NAME="output5"
+    PATH="/TabPanel/TabPanel.xhtml"
+    TARGET="rules:#TabPanel#TabPanel.xhtml" TITLE="TabPanel"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="Suggest::#SuggestionBox#SuggestionBox.xhtml" NAME="output6"
+    PATH="/SuggestionBox/SuggestionBox.xhtml"
+    TARGET="rules:#SuggestionBox#SuggestionBox.xhtml" TITLE="Suggest"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="Paint::#Paint2D#Paint2D.xhtml" NAME="output7"
+    PATH="/Paint2D/Paint2D.xhtml" TARGET="rules:#Paint2D#Paint2D.xhtml" TITLE="Paint"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="Tree::#Tree#Tree.xhtml" NAME="output8" PATH="/Tree/Tree.xhtml"
+    TARGET="rules:#Tree#Tree.xhtml" TITLE="Tree"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="Slide::#inputNumberSlider#inputNumberSlider.xhtml"
+    NAME="output9" PATH="/inputNumberSlider/inputNumberSlider.xhtml"
+    TARGET="rules:#inputNumberSlider#inputNumberSlider.xhtml" TITLE="Slide"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="PanelBar::#PanelBar#PanelBar.xhtml" NAME="output10"
+    PATH="/PanelBar/PanelBar.xhtml"
+    TARGET="rules:#PanelBar#PanelBar.xhtml" TITLE="PanelBar"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="TogglePanel::#TogglePanel#TogglePanel.xhtml" NAME="output11"
+    PATH="/TogglePanel/TogglePanel.xhtml"
+    TARGET="rules:#TogglePanel#TogglePanel.xhtml" TITLE="TogglePanel"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="Gmap::#Gmap#Gmap.xhtml" NAME="output12" PATH="/Gmap/Gmap.xhtml"
+    TARGET="rules:#Gmap#Gmap.xhtml" TITLE="Gmap"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="ToolBar::#ToolBar#ToolBar.xhtml" NAME="output13"
+    PATH="/ToolBar/ToolBar.xhtml" TARGET="rules:#ToolBar#ToolBar.xhtml" TITLE="ToolBar"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="dnd::#DradAndDrop#DragAndDrop.xhtml" NAME="output14"
+    PATH="/DradAndDrop/DragAndDrop.xhtml"
+    TARGET="rules:#DradAndDrop#DragAndDrop.xhtml" TITLE="dnd"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="DS::#DataScroller#DS.xhtml" NAME="output15"
+    PATH="/DataScroller/DS.xhtml" TARGET="rules:#DataScroller#DS.xhtml" TITLE="DS"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="DDMenu::#DropDownMenu#DDMenu.xhtml" NAME="output16"
+    PATH="/DropDownMenu/DDMenu.xhtml"
+    TARGET="rules:#DropDownMenu#DDMenu.xhtml" TITLE="DDMenu"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="DFS::#DataFilterSlider#DataFilterSlider.xhtml" NAME="output17"
+    PATH="/DataFilterSlider/DataFilterSlider.xhtml"
+    TARGET="rules:#DataFilterSlider#DataFilterSlider.xhtml" TITLE="DFS"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="PanelMenu::#PanelMenu#PanelMenu.xhtml" NAME="output18"
+    PATH="/PanelMenu/PanelMenu.xhtml"
+    TARGET="rules:#PanelMenu#PanelMenu.xhtml" TITLE="PanelMenu"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="ModalPanel::#ModalPanel#ModalPanel.xhtml" NAME="output19"
+    PATH="/ModalPanel/ModalPanel.xhtml"
+    TARGET="rules:#ModalPanel#ModalPanel.xhtml" TITLE="ModalPanel"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="Tooltip::#Tooltip#Tooltip.xhtml" NAME="output20"
+    PATH="/Tooltip/Tooltip.xhtml" TARGET="rules:#Tooltip#Tooltip.xhtml" TITLE="Tooltip"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="Calendar::#Calendar#Calendar.xhtml" NAME="output21"
+    PATH="/Calendar/Calendar.xhtml"
+    TARGET="rules:#Calendar#Calendar.xhtml" TITLE="Calendar"/>
+  </PROCESS-ITEM>
+ </PROCESS-ITEM>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#inputNumberSpinner#inputNumberSpinner.xhtml"
+  PATH="/inputNumberSpinner/inputNumberSpinner.xhtml" SHAPE="240,128,50,25"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup" NAME="rules:#Panel#Panel.xhtml"
+  PATH="/Panel/Panel.xhtml" SHAPE="240,176,50,41">
+  <PROCESS-ITEM ENTITY="JSFProcessItem" ID="rules:#Panel#Panel.xhtml:0"
+   NAME="item" PATH="/Panel/Panel.xhtml">
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="Sample2::#Panel#panel2.xhtml" NAME="output"
+    PATH="/Panel/panel2.xhtml" TARGET="rules:#Panel#panel2.xhtml" TITLE="Sample2"/>
+  </PROCESS-ITEM>
+ </PROCESS-ITEM>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup" NAME="rules:#Panel#panel2.xhtml"
+  PATH="/Panel/panel2.xhtml" SHAPE="336,176,50,41">
+  <PROCESS-ITEM ENTITY="JSFProcessItem" ID="rules:#Panel#panel2.xhtml:0"
+   NAME="item" PATH="/Panel/panel2.xhtml">
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="BackP::#Panel#Panel.xhtml" NAME="output"
+    PATH="/Panel/Panel.xhtml" TARGET="rules:#Panel#Panel.xhtml" TITLE="BackP"/>
+  </PROCESS-ITEM>
+ </PROCESS-ITEM>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#Separator#Separator.xhtml"
+  PATH="/Separator/Separator.xhtml" SHAPE="240,248,50,25" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#Spacer#Spacer.xhtml" PATH="/Spacer/Spacer.xhtml"
+  SHAPE="240,296,50,25" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#SimpleTogglePanel#SimpleTogglePanel.xhtml"
+  PATH="/SimpleTogglePanel/SimpleTogglePanel.xhtml"
+  SHAPE="240,344,50,25" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#TabPanel#TabPanel.xhtml" PATH="/TabPanel/TabPanel.xhtml"
+  SHAPE="240,392,50,25" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#SuggestionBox#SuggestionBox.xhtml"
+  PATH="/SuggestionBox/SuggestionBox.xhtml" SHAPE="240,440,50,25" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#Paint2D#Paint2D.xhtml" PATH="/Paint2D/Paint2D.xhtml"
+  SHAPE="240,488,50,25" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#Tree#Tree_old.xhtml" PATH="/Tree/Tree_old.xhtml"
+  SHAPE="248,536,50,25" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#inputNumberSlider#inputNumberSlider.xhtml"
+  PATH="/inputNumberSlider/inputNumberSlider.xhtml"
+  SHAPE="248,584,50,25" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#PanelBar#PanelBar.xhtml" PATH="/PanelBar/PanelBar.xhtml"
+  SHAPE="248,632,50,25" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#TogglePanel#TogglePanel.xhtml"
+  PATH="/TogglePanel/TogglePanel.xhtml" SHAPE="248,680,50,25" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup" NAME="rules:*" PATH="*" SHAPE="40,672,53,42">
+  <PROCESS-ITEM ENTITY="JSFProcessItem" ID="rules:*:0" NAME="item" PATH="*">
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="main::#pages#main.xhtml" NAME="output" PATH="/pages/main.xhtml"
+    TARGET="rules:#pages#main.xhtml" TITLE="main"/>
+  </PROCESS-ITEM>
+ </PROCESS-ITEM>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup" NAME="rules:#Gmap#Gmap.xhtml"
+  PATH="/Gmap/Gmap.xhtml" SHAPE="248,728,50,25" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#ToolBar#ToolBar.xhtml" PATH="/ToolBar/ToolBar.xhtml"
+  SHAPE="278,80,0,0" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#DradAndDrop#DragAndDrop.xhtml"
+  PATH="/DradAndDrop/DragAndDrop.xhtml" SHAPE="240,32,50,25" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#DataScroller#DS.xhtml" PATH="/DataScroller/DS.xhtml"
+  SHAPE="554,300,0,0" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#DropDownMenu#DDMenu.xhtml"
+  PATH="/DropDownMenu/DDMenu.xhtml" SHAPE="573,177,0,0" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#DataFilterSlider#DataFilterSlider.xhtml"
+  PATH="/DataFilterSlider/DataFilterSlider.xhtml" SHAPE="598,433,0,0" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup" NAME="rules:#Tree#Tree.xhtml"
+  PATH="/Tree/Tree.xhtml" SHAPE="32,1313,0,0"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#PanelMenu#PanelMenu.xhtml"
+  PATH="/PanelMenu/PanelMenu.xhtml" SHAPE="304,1393,0,0"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#ModalPanel#ModalPanel.xhtml"
+  PATH="/ModalPanel/ModalPanel.xhtml" SHAPE="304,1425,0,0"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#Tooltip#Tooltip.xhtml" PATH="/Tooltip/Tooltip.xhtml" SHAPE="304,1457,0,0"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#Calendar#Calendar.xhtml" PATH="/Calendar/Calendar.xhtml" SHAPE="304,1489,0,0"/>
+</PROCESS>

Added: trunk/test-applications/facelets/src/main/webapp/WEB-INF/web.xml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/WEB-INF/web.xml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/WEB-INF/web.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,62 @@
+<?xml version="1.0"?>
+<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
+ <description>Vcp Test app.</description>
+ <display-name>vcp-ComponentsTesting_3_0(1.1_F)</display-name>
+ <context-param>
+  <param-name>org.ajax4jsf.SKIN</param-name>
+  <param-value>#{skinBean.skin}</param-value>
+ </context-param>
+ <context-param>
+  <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
+  <param-value>.xhtml</param-value>
+ </context-param>
+ <context-param>
+  <param-name>facelets.REFRESH_PERIOD</param-name>
+  <param-value>2</param-value>
+ </context-param>
+ <context-param>
+  <param-name>facelets.DEVELOPMENT</param-name>
+  <param-value>true</param-value>
+ </context-param>
+ <context-param>
+  <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
+  <param-value>client</param-value>
+ </context-param>
+ <context-param>
+  <param-name>com.sun.faces.validateXml</param-name>
+  <param-value>true</param-value>
+ </context-param>
+ <context-param>
+  <param-name>com.sun.faces.verifyObjects</param-name>
+  <param-value>true</param-value>
+ </context-param>
+ <context-param>
+  <param-name>javax.faces.CONFIG_FILES</param-name>
+  <param-value>/WEB-INF/faces-config-Panel.xml,/WEB-INF/faces-config-PanelBar.xml,/WEB-INF/faces-config-TabPanel.xml,/WEB-INF/faces-config-TogglePanel.xml,/WEB-INF/faces-config-Paint2D.xml,/WEB-INF/faces-config-InputNumberSlider.xml,/WEB-INF/faces-config-InputNumberSpinner.xml,/WEB-INF/faces-config-DDMenu.xml,/WEB-INF/faces-config-Tree.xml,/WEB-INF/faces-config-PanelMenu.xml,/WEB-INF/faces-config-Icon.xml,/WEB-INF/faces-config-ModalPanel.xml,/WEB-INF/faces-config-tooltip.xml,/WEB-INF/faces-config-Skin.xml,/WEB-INF/faces-config-Calendar.xml,/WEB-INF/faces-config-Gmap.xml,/WEB-INF/faces-config-DataFilterSlider.xml,/WEB-INF/faces-config-Separator.xml,/WEB-INF/faces-config-Spacer.xml,/WEB-INF/faces-config-ToolBar.xml,/WEB-INF/faces-config-DataScroller.xml,/WEB-INF/faces-config-DradAbdDrop.xml,/WEB-INF/faces-config-SuggestionBox.xml</param-value>
+ </context-param>
+ <filter>
+  <display-name>Ajax4jsf Filter</display-name>
+  <filter-name>ajax4jsf</filter-name>
+  <filter-class>org.ajax4jsf.Filter</filter-class>
+ </filter>
+ <filter-mapping>
+  <filter-name>ajax4jsf</filter-name>
+  <servlet-name>Faces Servlet</servlet-name>
+  <dispatcher>FORWARD</dispatcher>
+  <dispatcher>REQUEST</dispatcher>
+  <dispatcher>INCLUDE</dispatcher>
+ </filter-mapping>
+ <servlet>
+  <servlet-name>Faces Servlet</servlet-name>
+  <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
+  <load-on-startup>1</load-on-startup>
+ </servlet>
+ <servlet-mapping>
+  <servlet-name>Faces Servlet</servlet-name>
+  <url-pattern>*.jsf</url-pattern>
+ </servlet-mapping>
+ <login-config>
+  <auth-method>BASIC</auth-method>
+ </login-config>
+</web-app>

Added: trunk/test-applications/facelets/src/main/webapp/index.jsp
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/index.jsp	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/index.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,7 @@
+<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
+<html>
+<head></head>
+	<body>
+		<jsp:forward page="pages/main.jsf" />
+	</body>
+</html>
\ No newline at end of file

Added: trunk/test-applications/facelets/src/main/webapp/inputNumberSlider/inputNumberSlider.xhtml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/inputNumberSlider/inputNumberSlider.xhtml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/inputNumberSlider/inputNumberSlider.xhtml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,114 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:a4j="https://ajax4jsf.dev.java.net/ajax"
+	xmlns:f="http://java.sun.com/jsf/core"
+	xmlns:h="http://java.sun.com/jsf/html"
+	xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+<f:view>
+	<head>
+	<link rel="stylesheet"
+		href="#{facesContext.externalContext.requestContextPath}/styles/styles.css"
+		type="text/css" />
+
+	</head>
+	<body>
+	<h:messages></h:messages>
+	<h:form>
+		<h:outputText value="Event:"></h:outputText>
+		<rich:inputNumberSlider minValue="0" maxValue="100" width="300px"
+			onmousedown="alert('OnMouseDown');"></rich:inputNumberSlider>
+
+		<rich:spacer height="15px" width="300px"></rich:spacer>
+
+		<rich:inputNumberSlider id="SliderId"
+			disabled="#{inputNumberSlider.disabled}"
+			enableManualInput="#{inputNumberSlider.enableManualInput}"
+			inputSize="#{inputNumberSlider.inputSize}"
+			maxValue="#{inputNumberSlider.maxValue}"
+			minValue="#{inputNumberSlider.minValue}"
+			rendered="#{inputNumberSlider.rendered}"
+			showBoundaryValues="#{inputNumberSlider.showBoundaryValues}"
+			step="#{inputNumberSlider.step}"
+			showInput="#{inputNumberSlider.showInput}"
+			width="#{inputNumberSlider.width}"
+			barClass="#{inputNumberSlider.barStyle}"
+			tipClass="#{inputNumberSlider.tipStyle}"
+			inputClass="#{inputNumberSlider.inputStyle}"
+			handleClass="#{inputNumberSlider.handleStyle}"
+			styleClass="#{inputNumberSlider.tipStyle}"
+			maxlength="#{inputNumberSlider.maxlength}"></rich:inputNumberSlider>
+
+		<rich:spacer height="20px"></rich:spacer>
+
+		<h:panelGrid columns="2" cellspacing="10px" border="1">
+
+			<h:outputText value="Width:"></h:outputText>
+			<h:inputText value="#{inputNumberSlider.width}">
+				<a4j:support event="onchange" reRender="SliderId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Max Value:"></h:outputText>
+			<h:inputText value="#{inputNumberSlider.maxValue}">
+				<a4j:support event="onchange" reRender="SliderId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Min Value:"></h:outputText>
+			<h:inputText value="#{inputNumberSlider.minValue}">
+				<a4j:support event="onchange" reRender="SliderId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Input Size:"></h:outputText>
+			<h:inputText value="#{inputNumberSlider.inputSize}">
+				<a4j:support event="onchange" reRender="SliderId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Input MaxLength:"></h:outputText>
+			<h:inputText value="#{inputNumberSlider.maxlength}">
+				<a4j:support event="onchange" reRender="SliderId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Step:"></h:outputText>
+			<h:inputText value="#{inputNumberSlider.step}">
+				<a4j:support event="onchange" reRender="SliderId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Disabled:"></h:outputText>
+			<h:selectBooleanCheckbox value="#{inputNumberSlider.disabled}">
+				<a4j:support event="onchange" reRender="SliderId"></a4j:support>
+			</h:selectBooleanCheckbox>
+
+			<h:outputText value="Rendered:"></h:outputText>
+			<h:selectBooleanCheckbox value="#{inputNumberSlider.rendered}"
+				onclick="submit()">
+			</h:selectBooleanCheckbox>
+
+			<h:outputText value="Manual Input:"></h:outputText>
+			<h:selectBooleanCheckbox
+				value="#{inputNumberSlider.enableManualInput}">
+				<a4j:support event="onchange" reRender="SliderId"></a4j:support>
+			</h:selectBooleanCheckbox>
+
+			<h:outputText value="Boundary Values:"></h:outputText>
+			<h:selectBooleanCheckbox
+				value="#{inputNumberSlider.showBoundaryValues}">
+				<a4j:support event="onchange" reRender="SliderId"></a4j:support>
+			</h:selectBooleanCheckbox>
+
+			<h:outputText value="Show Input:"></h:outputText>
+			<h:selectBooleanCheckbox value="#{inputNumberSlider.showInput}">
+				<a4j:support event="onchange" reRender="SliderId"></a4j:support>
+			</h:selectBooleanCheckbox>
+
+			<h:outputText value="Switch Styles" />
+			<a4j:commandButton id="slBtn" value="#{inputNumberSlider.btnLabel}"
+				action="#{inputNumberSlider.doStyles}" reRender="SliderId,slBtn">
+			</a4j:commandButton>
+
+		</h:panelGrid>
+	</h:form>
+	<h:form>
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+	</body>
+</f:view>
+</html>

Added: trunk/test-applications/facelets/src/main/webapp/inputNumberSpinner/inputNumberSpinner.xhtml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/inputNumberSpinner/inputNumberSpinner.xhtml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/inputNumberSpinner/inputNumberSpinner.xhtml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,94 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:rich="http://richfaces.ajax4jsf.org/rich"
+	xmlns:f="http://java.sun.com/jsf/core"
+	xmlns:a4j="https://ajax4jsf.dev.java.net/ajax"
+	xmlns:c="http://java.sun.com/jstl/core"
+	xmlns:h="http://java.sun.com/jsf/html"
+	xmlns:scriptfree="http://jakarta.apache.org/taglibs/standard/scriptfree">
+<f:view>
+	<head>
+	<title></title>
+	<link rel="stylesheet"
+		href="#{facesContext.externalContext.requestContextPath}/styles/styles.css"
+		type="text/css "></link>
+	</head>
+	<body>
+	<h:form>
+		<h:messages></h:messages>
+		<h:outputText value="Event:"></h:outputText>
+		<rich:inputNumberSpinner minValue="0" maxValue="10"
+			onchange="alert('mouse down');"></rich:inputNumberSpinner>
+
+		<rich:spacer height="15px"></rich:spacer>
+
+		<rich:inputNumberSpinner id="SpinnerID"
+			cycled="#{inputNumberSpinner.cycled}"
+			disabled="#{inputNumberSpinner.disabled}"
+			maxValue="#{inputNumberSpinner.max}"
+			minValue="#{inputNumberSpinner.min}"
+			step="#{inputNumberSpinner.step}"
+			rendered="#{inputNumberSpinner.rendered}"
+			value="#{inputNumberSpinner.value}"
+			inputClass="#{inputNumberSpinner.inputStyle}"
+			styleClass="#{inputNumberSpinner.style}"
+			enableManualInput="#{inputNumberSpinner.manualInput}"
+			inputSize="#{inputNumberSpinner.inputSize}"></rich:inputNumberSpinner>
+		<rich:spacer height="20px"></rich:spacer>
+
+
+		<h:panelGrid columns="2" cellpadding="10px" border="1">
+
+			<h:outputText value="Max: "></h:outputText>
+			<h:inputText value="#{inputNumberSpinner.max}">
+				<a4j:support reRender="SpinnerID" event="onchange"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Min: "></h:outputText>
+			<h:inputText value="#{inputNumberSpinner.min}">
+				<a4j:support reRender="SpinnerID" event="onchange"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Step: "></h:outputText>
+			<h:inputText value="#{inputNumberSpinner.step}">
+				<a4j:support reRender="SpinnerID" event="onchange"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Size: "></h:outputText>
+			<h:inputText value="#{inputNumberSpinner.inputSize}">
+				<a4j:support reRender="SpinnerID" event="onchange"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Value: "></h:outputText>
+			<h:inputText value="#{inputNumberSpinner.value}">
+				<a4j:support reRender="SpinnerID" event="onchange"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Cycled:"></h:outputText>
+			<h:selectBooleanCheckbox value="#{inputNumberSpinner.cycled}">
+				<a4j:support event="onclick" reRender="SpinnerID"></a4j:support>
+			</h:selectBooleanCheckbox>
+
+			<h:outputText value="Manual Input:"></h:outputText>
+			<h:selectBooleanCheckbox value="#{inputNumberSpinner.manualInput}">
+				<a4j:support event="onclick" reRender="SpinnerID"></a4j:support>
+			</h:selectBooleanCheckbox>
+
+			<h:outputText value="Disabled:"></h:outputText>
+			<h:selectBooleanCheckbox value="#{inputNumberSpinner.disabled}">
+				<a4j:support event="onclick" reRender="SpinnerID"></a4j:support>
+			</h:selectBooleanCheckbox>
+
+			<h:outputText value="Rendered:"></h:outputText>
+			<h:selectBooleanCheckbox value="#{inputNumberSpinner.rendered}"
+				onclick="submit()">
+			</h:selectBooleanCheckbox>
+			<h:outputText value="Switch Styles:" />
+			<h:commandButton action="#{inputNumberSpinner.doStyles}"
+				value="#{inputNumberSpinner.btnLabel}" />
+		</h:panelGrid>
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+	</body>
+</f:view>
+</html>

Added: trunk/test-applications/facelets/src/main/webapp/pages/main.xhtml
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/pages/main.xhtml	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/pages/main.xhtml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,47 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:ui="http://java.sun.com/jsf/facelets"
+	xmlns:f="http://java.sun.com/jsf/core"
+	xmlns:h="http://java.sun.com/jsf/html"
+	xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+<f:view>
+	<head>
+	</head>
+	<body>
+	<h:form>
+		<rich:panel>
+			<h:selectOneRadio binding="#{skinBean.component}" />
+			<h:commandLink action="#{skinBean.change}" value="set skin" />
+		</rich:panel>
+		
+		<div align="center"><h:outputText
+			value="VCP 3.1.0 Test Application (JSF 1.1RI with Facelets)"
+			style="font-size: 30px"></h:outputText></div>
+		<h:panelGrid columns="2" cellpadding="5px" cellspacing="5px">
+			<h:commandLink value="inputNumberSpinner" action="Spinner"></h:commandLink>
+			<h:commandLink value="inputNumberSlider" action="Slide"></h:commandLink>
+			<h:commandLink value="Panel" action="Panel"></h:commandLink>
+			<h:commandLink value="PanelBar" action="PanelBar"></h:commandLink>
+			<h:commandLink value="Gmap" action="Gmap"></h:commandLink>
+			<h:commandLink action="Separ" value="Separator"></h:commandLink>
+			<h:commandLink value="Spacer" action="Spacer"></h:commandLink>
+			<h:commandLink value="SimpleTogglePanel" action="sTP"></h:commandLink>
+			<h:commandLink value="TabPanel" action="TabPanel"></h:commandLink>
+			<h:commandLink value="SuggestionBox" action="Suggest"></h:commandLink>
+			<h:commandLink value="Paint2D" action="Paint"></h:commandLink>
+			<h:commandLink value="Tree" action="Tree"></h:commandLink>
+			<h:commandLink value="TogglePanel" action="TogglePanel"></h:commandLink>
+			<h:commandLink value="ToolBar" action="ToolBar"></h:commandLink>
+			<h:commandLink value="Drag and Drop" action="dnd"></h:commandLink>
+			<h:commandLink value="Data Scroller" action="DS"></h:commandLink>
+			<h:commandLink value="Drop Down Menu" action="DDMenu"></h:commandLink>
+			<h:commandLink value="Data Filter Slider" action="DFS"></h:commandLink>
+			<h:commandLink value="Panel Menu" action="PanelMenu"></h:commandLink>
+			<h:commandLink value="Modal Panel" action="ModalPanel"></h:commandLink>
+			<h:commandLink value="Tooltip" action="Tooltip"></h:commandLink>
+			<h:commandLink value="Calendar" action="Calendar"></h:commandLink>
+		</h:panelGrid>
+		</h:form>
+	</body>
+</f:view>
+</html>

Added: trunk/test-applications/facelets/src/main/webapp/pics/458_1_big.gif
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/facelets/src/main/webapp/pics/458_1_big.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/facelets/src/main/webapp/pics/458_2_big.jpg
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/facelets/src/main/webapp/pics/458_2_big.jpg
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/facelets/src/main/webapp/pics/ajax_process.gif
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/facelets/src/main/webapp/pics/ajax_process.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/facelets/src/main/webapp/pics/ajax_stoped.gif
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/facelets/src/main/webapp/pics/ajax_stoped.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/facelets/src/main/webapp/pics/asus.jpg
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/facelets/src/main/webapp/pics/asus.jpg
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/facelets/src/main/webapp/pics/benq.jpg
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/facelets/src/main/webapp/pics/benq.jpg
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/facelets/src/main/webapp/pics/collapse.gif
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/facelets/src/main/webapp/pics/collapse.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/facelets/src/main/webapp/pics/error.gif
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/facelets/src/main/webapp/pics/error.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/facelets/src/main/webapp/pics/expand.gif
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/facelets/src/main/webapp/pics/expand.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/facelets/src/main/webapp/pics/fatal.gif
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/facelets/src/main/webapp/pics/fatal.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/facelets/src/main/webapp/pics/file-manager-reject.png
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/facelets/src/main/webapp/pics/file-manager-reject.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/facelets/src/main/webapp/pics/file-manager.png
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/facelets/src/main/webapp/pics/file-manager.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/facelets/src/main/webapp/pics/header.png
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/facelets/src/main/webapp/pics/header.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/facelets/src/main/webapp/pics/info.gif
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/facelets/src/main/webapp/pics/info.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/facelets/src/main/webapp/pics/item.png
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/facelets/src/main/webapp/pics/item.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/facelets/src/main/webapp/pics/masshtaby_01.jpg
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/facelets/src/main/webapp/pics/masshtaby_01.jpg
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/facelets/src/main/webapp/pics/passed.gif
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/facelets/src/main/webapp/pics/passed.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/facelets/src/main/webapp/pics/podb109_61.jpg
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/facelets/src/main/webapp/pics/podb109_61.jpg
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/facelets/src/main/webapp/pics/toshiba.jpg
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/facelets/src/main/webapp/pics/toshiba.jpg
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/facelets/src/main/webapp/pics/warn.gif
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/facelets/src/main/webapp/pics/warn.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/facelets/src/main/webapp/styles/app.css
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/styles/app.css	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/styles/app.css	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,29 @@
+.rich-message-label{
+	padding: 0px 10px;
+}
+
+.rich-messages-label{
+	padding: 0px 10px
+}	
+
+.rich-message-marker{
+}
+
+.rich-message{
+}
+
+.errorLabel{
+	color: #FF0000; 
+}
+
+.warnLabel{
+	color: #0000FF; 
+}
+
+.infoLabel{
+	color: #00FF00;
+}
+
+.fatalLabel{
+	color: #FF1493;
+}

Added: trunk/test-applications/facelets/src/main/webapp/styles/styles.css
===================================================================
--- trunk/test-applications/facelets/src/main/webapp/styles/styles.css	                        (rev 0)
+++ trunk/test-applications/facelets/src/main/webapp/styles/styles.css	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,63 @@
+.maintext {
+	font-size: 30px !important;
+}
+.text1{
+	font-size: 14px !important;
+}
+.style{
+background: teal;
+border: solid 3px red;
+font: bold 14px;
+}
+/* inputNumderSlider Styles */
+.barStyle{
+background-color: purple !important;
+border: red 3px solid;
+}
+.inputStyle
+{
+background-color: lime !important;
+border: red 3px solid;
+font-family: monospace;
+}
+.tipStyle{
+border: green 3px solid;
+background-color: yellow;
+font: italic bold 14px;
+}
+.handleStyle{
+border: green 3px solid;
+background-color: yellow;
+}
+/* TabPanel Styles */
+.activeTabStyle{
+background: lime;
+border: solid 3px black;
+font: italic 14px;
+}
+.inactiveTabStyle{
+background: gray;
+border: solid 3px blue;
+font: bold 14px;
+}
+.disabledTabStyle{
+background: silver;
+border: dotted 3px blue;
+font: small-caps 14px;
+}
+.contentStyle{
+background: silver;
+border: 1px red;
+font: 20px;
+}
+/* inputNumerSpinner Styles*/
+.inputStyle{
+background: aqua ;
+border: thin red;
+font: fantasy 15px;
+}
+/* ToolBar Styles*/
+.separatorStyle{
+border: 3px solid red;
+background: lime;
+}

Added: trunk/test-applications/jsp/pom.xml
===================================================================
--- trunk/test-applications/jsp/pom.xml	                        (rev 0)
+++ trunk/test-applications/jsp/pom.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,16 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <parent>
+    <artifactId>test-applications</artifactId>
+    <groupId>org.richfaces</groupId>
+    <version>3.1.0-SNAPSHOT</version>
+  </parent>
+
+	<modelVersion>4.0.0</modelVersion>
+	<groupId>org.richfaces.test-applications</groupId>
+	<artifactId>jsp</artifactId>
+	<packaging>war</packaging>
+	<name>RichFaces Test Application (JSP)</name>
+	<build>
+		<finalName>richfaces-test-jsp</finalName>
+	</build>
+</project>
\ No newline at end of file

Added: trunk/test-applications/jsp/src/main/java/calendar/CalendarBean.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/calendar/CalendarBean.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/calendar/CalendarBean.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,154 @@
+/**
+ * License Agreement.
+ *
+ * Ajax4jsf 1.1 - Natural Ajax for Java Server Faces (JSF)
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+package calendar;
+
+import java.text.DateFormat;
+import java.util.Date;
+import java.util.Locale;
+
+import javax.faces.event.ValueChangeEvent;
+
+/**
+ * 20/07/2007
+ * @author Alexej Kushunin 
+ * @mailto: akushunin at exadel.com 
+ *
+ */
+public class CalendarBean {
+	
+	private static final String[] WEEK_DAY_LABELS = new String[] {"Sun *", "Mon +", "Tue +", "Wed +", "Thu +", "Fri +", "Sat *"};
+	private Locale locale;
+	
+	private boolean popup;
+	private String pattern;
+	private Date currentDate;
+	private Date selectedDate;
+	private String jointPoint;
+	private String direction;
+	
+	private boolean useCustomDayLabels;
+	
+	public Locale getLocale() {
+		return locale;
+	}
+
+	public void setLocale(Locale locale) {
+		this.locale = locale;
+	}
+
+	
+	public boolean isPopup() {
+		return popup;
+	}
+
+	public void setPopup(boolean popup) {
+		this.popup = popup;
+	}
+	
+
+	public String getPattern() {
+		return pattern;
+	}
+
+	public void setPattern(String pattern) {
+		this.pattern = pattern;
+	}
+
+	public CalendarBean() {
+		
+		locale = Locale.US;
+		popup = true;
+		pattern = "MMM d, yyyy";
+		jointPoint = "bottom-left";
+		direction = "bottom-right";
+	}
+	
+	public void selectLocale(ValueChangeEvent event){
+		
+		String tLocale = (String) event.getNewValue();
+		if (tLocale != null) {
+			String lang = tLocale.substring(0,2);
+			String country = tLocale.substring(3);
+			locale = new Locale(lang,country,"");
+		}
+	}
+
+	public boolean isUseCustomDayLabels() {
+		return useCustomDayLabels;
+	}
+
+	public void setUseCustomDayLabels(boolean useCustomDayLabels) {
+		this.useCustomDayLabels = useCustomDayLabels;
+	}
+	
+	public Object getWeekDayLabelsShort() {
+		if (isUseCustomDayLabels()) {
+			return WEEK_DAY_LABELS;
+		} else {
+			return null;
+		}
+	}
+
+	public String getCurrentDateAsText() {
+		Date currentDate = getCurrentDate();
+		if (currentDate != null) {
+			return DateFormat.getDateInstance(DateFormat.FULL).format(currentDate);
+		}
+		
+		return null;
+	}
+
+	public Date getCurrentDate() {
+		return currentDate;
+	}
+
+	public void setCurrentDate(Date currentDate) {
+		this.currentDate = currentDate;
+	}
+
+	public Date getSelectedDate() {
+		return selectedDate;
+	}
+
+	public void setSelectedDate(Date selectedDate) {
+		this.selectedDate = selectedDate;
+	}
+	
+	public String getJointPoint() {
+		return jointPoint;
+	}
+	public void setJointPoint(String jointPoint) {
+		this.jointPoint = jointPoint;
+	}
+	public void selectJointPoint(ValueChangeEvent event){
+		jointPoint = (String) event.getNewValue();
+	}
+	public String getDirection() {
+		return direction;
+	}
+	public void setDirection(String direction) {
+		this.direction = direction;
+	}
+	public void selectDirection(ValueChangeEvent event){
+		direction = (String) event.getNewValue();
+	}
+}
\ No newline at end of file

Added: trunk/test-applications/jsp/src/main/java/calendar/CalendarDataModelImpl.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/calendar/CalendarDataModelImpl.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/calendar/CalendarDataModelImpl.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,80 @@
+/**
+ * License Agreement.
+ *
+ * Ajax4jsf 1.1 - Natural Ajax for Java Server Faces (JSF)
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+package calendar;
+
+import java.text.DateFormat;
+import java.util.Date;
+import java.util.HashMap;
+import java.util.Locale;
+import java.util.Map;
+
+import org.richfaces.model.CalendarDataModel;
+import org.richfaces.model.CalendarDataModelItem;
+
+/**
+ * @author Nick Belaevski - mailto:nbelaevski at exadel.com
+ * created 30.06.2007
+ *
+ */
+public class CalendarDataModelImpl implements CalendarDataModel {
+
+	/* (non-Javadoc)
+	 * @see org.richfaces.component.CalendarDataModel#getData(java.util.Date[])
+	 */
+	public CalendarDataModelItem[] getData(Date[] dateArray) {
+		if (dateArray == null) {
+			return null;
+		}
+		
+		CalendarDataModelItem[] items = new CalendarDataModelItem[dateArray.length];
+		for (int i = 0; i < dateArray.length; i++) {
+			items[i] = createDataModelItem(dateArray[i]);
+		}
+
+		return items;
+	}
+
+	protected CalendarDataModelItem createDataModelItem(Date date) {
+		CalendarDataModelItemImpl item = new CalendarDataModelItemImpl();
+		item.setDate(date);
+		Map data = new HashMap();
+		DateFormat enFormatter = DateFormat.getDateInstance(DateFormat.MEDIUM, Locale.ENGLISH);
+		DateFormat frFormatter = DateFormat.getDateInstance(DateFormat.MEDIUM, Locale.FRENCH);
+		DateFormat deFormatter = DateFormat.getDateInstance(DateFormat.MEDIUM, Locale.GERMAN);
+		data.put("enLabel", enFormatter.format(date));
+		data.put("frLabel", frFormatter.format(date));
+		data.put("deLabel", deFormatter.format(date));
+		item.setData(data);
+				
+		return item;
+	}
+
+	/* (non-Javadoc)
+	 * @see org.richfaces.component.CalendarDataModel#getToolTip(java.util.Date)
+	 */
+	public Object getToolTip(Date date) {
+	
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+}

Added: trunk/test-applications/jsp/src/main/java/calendar/CalendarDataModelItemImpl.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/calendar/CalendarDataModelItemImpl.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/calendar/CalendarDataModelItemImpl.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,118 @@
+/**
+ * License Agreement.
+ *
+ * Ajax4jsf 1.1 - Natural Ajax for Java Server Faces (JSF)
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+package calendar;
+
+import java.util.Date;
+
+import org.richfaces.model.CalendarDataModelItem;
+
+/**
+ * @author Nick Belaevski - mailto:nbelaevski at exadel.com
+ * created 04.07.2007
+ *
+ */
+public class CalendarDataModelItemImpl implements CalendarDataModelItem {
+
+	private Object data;
+	private Date date;
+	private String styleClass;
+	private Object toolTip;
+	private boolean enabled = true;
+	
+	/* (non-Javadoc)
+	 * @see org.richfaces.component.CalendarDataModelItem#getData()
+	 */
+	public Object getData() {
+		return data;
+	}
+
+	/* (non-Javadoc)
+	 * @see org.richfaces.component.CalendarDataModelItem#getDate()
+	 */
+	public Date getDate() {
+		return date;
+	}
+
+	/* (non-Javadoc)
+	 * @see org.richfaces.component.CalendarDataModelItem#getStyleClass()
+	 */
+	public String getStyleClass() {
+		return styleClass;
+	}
+
+	/* (non-Javadoc)
+	 * @see org.richfaces.component.CalendarDataModelItem#getToolTip()
+	 */
+	public Object getToolTip() {
+		return toolTip;
+	}
+
+	/* (non-Javadoc)
+	 * @see org.richfaces.component.CalendarDataModelItem#hasToolTip()
+	 */
+	public boolean hasToolTip() {
+		return getToolTip() != null;
+	}
+
+	/* (non-Javadoc)
+	 * @see org.richfaces.component.CalendarDataModelItem#isEnabled()
+	 */
+	public boolean isEnabled() {
+		return enabled;
+	}
+
+	/**
+	 * @param data the data to set
+	 */
+	public void setData(Object data) {
+		this.data = data;
+	}
+
+	/**
+	 * @param date the date to set
+	 */
+	public void setDate(Date date) {
+		this.date = date;
+	}
+
+	/**
+	 * @param styleClass the styleClass to set
+	 */
+	public void setStyleClass(String styleClass) {
+		this.styleClass = styleClass;
+	}
+
+	/**
+	 * @param toolTip the toolTip to set
+	 */
+	public void setToolTip(Object toolTip) {
+		this.toolTip = toolTip;
+	}
+
+	/**
+	 * @param enabled the enabled to set
+	 */
+	public void setEnabled(boolean enabled) {
+		this.enabled = enabled;
+	}
+
+}

Added: trunk/test-applications/jsp/src/main/java/calendar/CalendarValidator.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/calendar/CalendarValidator.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/calendar/CalendarValidator.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,40 @@
+/**
+ * 
+ */
+package calendar;
+
+import java.util.Calendar;
+import java.util.Date;
+
+import javax.faces.application.FacesMessage;
+import javax.faces.component.UIComponent;
+import javax.faces.context.FacesContext;
+import javax.faces.validator.Validator;
+import javax.faces.validator.ValidatorException;
+
+/**
+ * @author Nick Belaevski
+ *         mailto:nbelaevski at exadel.com
+ *         created 21.07.2007
+ *
+ */
+public class CalendarValidator implements Validator {
+
+	/* (non-Javadoc)
+	 * @see javax.faces.validator.Validator#validate(javax.faces.context.FacesContext, javax.faces.component.UIComponent, java.lang.Object)
+	 */
+	public void validate(FacesContext context, UIComponent component,
+			Object value) throws ValidatorException {
+
+		Date date = (Date) value;
+		if (date != null) {
+			Calendar calendar = Calendar.getInstance();
+			calendar.setTime(date);
+			int d = calendar.get(Calendar.DATE);
+			if (d == 13 || d == 17) {
+				throw new ValidatorException(new FacesMessage("Test validator: 13th and 17th dates are restricted!"));
+			}
+		}
+	}
+
+}

Added: trunk/test-applications/jsp/src/main/java/dataScroller/Data.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/dataScroller/Data.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/dataScroller/Data.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,35 @@
+package dataScroller;
+
+import java.util.Random;
+
+public class Data {
+
+	public String data0;
+	public int data1;
+	
+	public Data(String str,int a) {
+			this.data0 =str+"_"+a;
+			this.data1 = new Random().nextInt(10+a);
+	
+	}
+
+	public String getData0() {
+		return data0;
+	}
+
+	public void setData0(String data0) {
+		this.data0 = data0;
+	}
+
+	public int getData1() {
+		return data1;
+	}
+
+	public void setData1(int data1) {
+		this.data1 = data1;
+	}
+
+	
+	
+	
+}

Added: trunk/test-applications/jsp/src/main/java/dataScroller/DataScroller.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/dataScroller/DataScroller.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/dataScroller/DataScroller.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,57 @@
+package dataScroller;
+
+import java.util.ArrayList;
+
+import org.richfaces.event.DataScrollerEvent;
+
+public class DataScroller {
+	
+	private ArrayList dataTable;
+	public Data tD;
+	
+	public DataScroller() {
+		
+		dataTable = new ArrayList();
+		
+		for(int i=0;i<40;i++)
+		{
+			dataTable.add(new Data("Random",i));
+		}	
+				
+	}
+	
+	public void CutArray(){
+		int k = dataTable.size()-1;
+		for(int i = k ;i > (k+1)/2; i--)
+		{
+			dataTable.remove(i);						
+		}
+	}
+	
+	public void RestoreArray(){
+		
+		int k = dataTable.size()-1;
+		for(int i = k;i < (k+1)*2;i++)
+		{
+			dataTable.add(new Data("Random",i));
+		}	
+	}
+	
+	public ArrayList getDataTable() {
+		return dataTable;
+	}
+
+	public void setDataTable(ArrayList dataTable) {
+		this.dataTable = dataTable;
+	}
+	
+	public void ScrollerListener(DataScrollerEvent e){
+		
+		System.out.println("NewScrollValue: "+e.getNewScrolVal());
+		System.out.println("OldScrollValue: "+e.getOldScrolVal());
+	}
+
+
+
+	
+}

Added: trunk/test-applications/jsp/src/main/java/dataTable/DataTable.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/dataTable/DataTable.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/dataTable/DataTable.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,30 @@
+package dataTable;
+
+import java.util.ArrayList;
+import dataScroller.Data;
+
+public class DataTable {
+	
+	private ArrayList SubTable;
+	
+		
+	public DataTable() {
+		
+		SubTable = new ArrayList();
+		
+		for(int i=0;i<3;i++)
+		{	
+			SubTable.add( new Data("SubTable",i));
+		}	
+		// TODO Auto-generated constructor stub
+	}
+
+	public ArrayList getSubTable() {
+		return SubTable;
+	}
+
+	public void setSubTable(ArrayList subTable) {
+		SubTable = subTable;
+	}
+
+}

Added: trunk/test-applications/jsp/src/main/java/ddMenu/DDMenu.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/ddMenu/DDMenu.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/ddMenu/DDMenu.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,161 @@
+package ddMenu;
+
+import java.awt.Event;
+
+public class DDMenu {
+
+	private int			hideDelay;
+	private int			showDelay;
+	private int			verticalOffset;
+	private int			horizontalOffset;
+	private String		event;
+	private String		direction	= "";
+	private String		groupDirection;
+	private String		jointPoint	= "";
+	private String		popupWidth	= "";
+	private String		icon			= null;
+	private String		iconFolder	= null;
+	private boolean	rendered;
+	private boolean	disabled;
+	private boolean	check;
+
+	public DDMenu() {
+		hideDelay = 0;
+		showDelay = 0;
+		verticalOffset = 0;
+		horizontalOffset = 0;
+		event = "onmouseover";
+		direction = "";
+		groupDirection = "auto";
+		jointPoint = "";
+		popupWidth = "";
+		icon = null;
+		iconFolder = null;
+		rendered = true;
+		disabled = false;
+		check = false;
+	}
+
+	public String getIcon() {
+		return icon;
+	}
+
+	public void setIcon(String icon) {
+		this.icon = icon;
+	}
+
+	public String getIconFolder() {
+		return iconFolder;
+	}
+
+	public void setIconFolder(String iconFolder) {
+		this.iconFolder = iconFolder;
+	}
+
+	public boolean isDisabled() {
+		return disabled;
+	}
+
+	public void setDisabled(boolean disabled) {
+		this.disabled = disabled;
+	}
+
+	public String getGroupDirection() {
+		return groupDirection;
+	}
+
+	public void setGroupDirection(String groupDirection) {
+		this.groupDirection = groupDirection;
+	}
+
+	public boolean isCheck() {
+		return check;
+	}
+
+	public void setCheck(boolean check) {
+		this.check = check;
+	}
+
+	public String getDirection() {
+		return direction;
+	}
+
+	public void setDirection(String direction) {
+		this.direction = direction;
+	}
+
+	public int getHideDelay() {
+		return hideDelay;
+	}
+
+	public void setHideDelay(int hideDelay) {
+		this.hideDelay = hideDelay;
+	}
+
+	public int getHorizontalOffset() {
+		return horizontalOffset;
+	}
+
+	public void setHorizontalOffset(int horizontalOffset) {
+		this.horizontalOffset = horizontalOffset;
+	}
+
+	public String getJointPoint() {
+		return jointPoint;
+	}
+
+	public void setJointPoint(String jointPoint) {
+		this.jointPoint = jointPoint;
+	}
+
+	public String getPopupWidth() {
+		return popupWidth;
+	}
+
+	public void setPopupWidth(String popupWidth) {
+		this.popupWidth = popupWidth;
+	}
+
+	public boolean isRendered() {
+		return rendered;
+	}
+
+	public void setRendered(boolean rendered) {
+		this.rendered = rendered;
+	}
+
+	public int getShowDelay() {
+		return showDelay;
+	}
+
+	public void setShowDelay(int showDelay) {
+		this.showDelay = showDelay;
+	}
+
+	public int getVerticalOffset() {
+		return verticalOffset;
+	}
+
+	public void setVerticalOffset(int verticalOffset) {
+		this.verticalOffset = verticalOffset;
+	}
+
+	public void changeIcons() {
+		if (icon != null) {
+			icon = null;
+			iconFolder = null;
+		} else {
+			icon = "/pics/header.png";
+			iconFolder = "/pics/ajax_process.gif";
+
+		}
+	}
+
+	public String getEvent() {
+		return event;
+	}
+
+	public void setEvent(String event) {
+		this.event = event;
+	}
+}

Added: trunk/test-applications/jsp/src/main/java/dfs/DataFilterSliderDao.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/dfs/DataFilterSliderDao.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/dfs/DataFilterSliderDao.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,34 @@
+/**
+ * License Agreement.
+ *
+ *  JBoss RichFaces 3.0 - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007  Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+package dfs;
+
+import java.util.List;
+
+public interface DataFilterSliderDao {
+
+    public List getCarsById(String id);
+
+    public List getAllCarMakes();
+
+    public int genRand();
+    
+}

Added: trunk/test-applications/jsp/src/main/java/dfs/DataFilterSliderDaoImpl.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/dfs/DataFilterSliderDaoImpl.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/dfs/DataFilterSliderDaoImpl.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,182 @@
+/**
+ * License Agreement.
+ *
+ *  JBoss RichFaces 3.0 - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007  Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+package dfs;
+
+import java.util.*;
+import java.math.BigDecimal;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: Wesley
+ * Date: Jan 26, 2007
+ * Time: 8:20:38 AM
+ * To change this template use File | Settings | File Templates.
+ */
+public class DataFilterSliderDaoImpl implements DataFilterSliderDao {
+
+    private Map itemKeyMap = new HashMap();
+    private static int DECIMALS = 1;
+    private static int ROUNDING_MODE = BigDecimal.ROUND_HALF_UP;
+    private static DataFilterSliderDaoImpl ourInstance = new DataFilterSliderDaoImpl();
+
+    public static DataFilterSliderDaoImpl getInstance() {
+        return ourInstance;
+    }
+
+    private DataFilterSliderDaoImpl() {
+        loadCarList("0");
+        loadCarList("1");
+        loadCarList("2");
+        loadCarList("3");
+        loadCarList("4");
+        loadCarList("5");
+
+    }
+
+    public List getAllCarMakes(){
+        List retVal = new ArrayList();
+
+        retVal.add("Chevrolet");
+        retVal.add("Ford");
+        retVal.add("Nissan");
+        retVal.add("Toyota");
+        retVal.add("GMC");
+        retVal.add("Infiniti");
+
+        return retVal;
+    }
+
+    public List getCarsById(String id){
+        List retVal = new ArrayList();
+
+        retVal = (ArrayList)itemKeyMap.get( id );
+
+        return retVal;
+    }
+
+    public List loadCarList(String id) {
+
+        ArrayList retVal = new ArrayList();
+        if ( itemKeyMap.containsKey( id ) ){
+            retVal = (ArrayList)itemKeyMap.get( id );
+            //log.info("***************************YES we already have this one in cache: " + id);
+        }else{
+            try{
+
+                if (id.equals("0")){
+                    retVal.addAll(createCar("Chevrolet","Corvette"));
+                    retVal.addAll(createCar("Chevrolet","Malibu"));
+                    retVal.addAll(createCar("Chevrolet","S-10"));
+                    retVal.addAll(createCar("Chevrolet","Tahoe"));
+                }else if(id.equals("1")){
+                    retVal.addAll(createCar("Ford","Taurus"));
+                    retVal.addAll(createCar("Ford","Explorer"));
+                }else if(id.equals("2")){
+                    retVal.addAll(createCar("Nissan","Maxima"));
+                }else if(id.equals("3")){
+                    retVal.addAll(createCar("Toyota","4-Runner"));
+                    retVal.addAll(createCar("Toyota","Camry"));
+                    retVal.addAll(createCar("Toyota","Avalon"));
+                }else if(id.equals("4")){
+                    retVal.addAll(createCar("GMC","Sierra"));
+                    retVal.addAll(createCar("GMC","Yukon"));
+                }else if(id.equals("5")){
+                    retVal.addAll(createCar("Infiniti","G35"));
+                }
+
+            }catch(Exception e){
+                e.printStackTrace();
+            }
+
+            itemKeyMap.put(id,retVal);
+        }
+
+
+        return retVal;
+    }
+
+    public int genRand() {
+        return rand(1,10000);
+    }
+
+    public List createCar(String make, String model){
+
+           ArrayList iiList = null;
+
+           try{
+                int arrayCount = rand(5,20);
+
+                DemoInventoryItem[] demoInventoryItemArrays = new DemoInventoryItem[arrayCount];
+                //System.out.println("******demoInventoryItemArrays: " + demoInventoryItemArrays.length);
+
+                for (int j = 0; j < demoInventoryItemArrays.length; j++){
+                    DemoInventoryItem ii = new DemoInventoryItem();
+
+                    ii.setMake(make);
+                    ii.setModel(model);
+                    ii.setStock(randomstring(6,7));
+                    ii.setVin(randomstring(14,15));
+                    ii.setMileage(new BigDecimal(rand(5000,80000)).setScale(DECIMALS, ROUNDING_MODE));
+                    ii.setMileageMarket(new BigDecimal(rand(25000,45000)).setScale(DECIMALS, ROUNDING_MODE));
+                    ii.setPrice(new Integer(rand(15000,55000)));
+                    ii.setPriceMarket(new BigDecimal(rand(15000,55000)).setScale(DECIMALS, ROUNDING_MODE));
+                    ii.setDaysLive(rand(1,90));
+                    ii.setChangeSearches(new BigDecimal(rand(0,5)).setScale(DECIMALS, ROUNDING_MODE));
+                    ii.setChangePrice(new BigDecimal(rand(0,5)).setScale(DECIMALS, ROUNDING_MODE));
+                    ii.setExposure(new BigDecimal(rand(0,5)).setScale(DECIMALS, ROUNDING_MODE));
+                    ii.setActivity(new BigDecimal(rand(0,5)).setScale(DECIMALS, ROUNDING_MODE));
+                    ii.setPrinted(new BigDecimal(rand(0,5)).setScale(DECIMALS, ROUNDING_MODE));
+                    ii.setInquiries(new BigDecimal(rand(0,5)).setScale(DECIMALS, ROUNDING_MODE));
+                    demoInventoryItemArrays[j] = ii;
+
+                }
+
+                iiList = new ArrayList(Arrays.asList(demoInventoryItemArrays));
+
+                }catch(Exception e){
+                    e.printStackTrace();
+                }
+            return iiList;
+            }
+
+        public static int rand(int lo, int hi)
+        {
+            Random rn2 = new Random();
+            //System.out.println("**" + lo);
+            //System.out.println("**" + hi);
+                int n = hi - lo + 1;
+                int i = rn2.nextInt() % n;
+                if (i < 0)
+                        i = -i;
+                return lo + i;
+        }
+
+        public static String randomstring(int lo, int hi)
+        {
+                int n = rand(lo, hi);
+                byte b[] = new byte[n];
+                for (int i = 0; i < n; i++)
+                        b[i] = (byte)rand('A', 'Z');
+                return new String(b, 0);
+        }
+
+}

Added: trunk/test-applications/jsp/src/main/java/dfs/DemoInventoryItem.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/dfs/DemoInventoryItem.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/dfs/DemoInventoryItem.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,175 @@
+/**
+ * License Agreement.
+ *
+ *  JBoss RichFaces 3.0 - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007  Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+package dfs;
+
+import java.math.BigDecimal;
+import java.io.Serializable;
+
+/**
+ * Created by IntelliJ IDEA.
+ * User: Wesley
+ * Date: Jan 26, 2007
+ * Time: 8:21:36 AM
+ * To change this template use File | Settings | File Templates.
+ */
+public class DemoInventoryItem implements Serializable {
+
+    String make;
+    String model;
+    String stock;
+    String vin;
+
+    BigDecimal mileage;
+    BigDecimal mileageMarket;
+    Integer price;
+    BigDecimal priceMarket;
+
+    int daysLive;
+    BigDecimal changeSearches;
+    BigDecimal changePrice;
+
+    BigDecimal exposure;
+    BigDecimal activity;
+    BigDecimal printed;
+    BigDecimal inquiries;
+
+
+    public String getMake() {
+        return make;
+    }
+
+    public void setMake(String make) {
+        this.make = make;
+    }
+
+    public String getModel() {
+        return model;
+    }
+
+    public void setModel(String model) {
+        this.model = model;
+    }
+
+    public String getStock() {
+        return stock;
+    }
+
+    public void setStock(String stock) {
+        this.stock = stock;
+    }
+
+    public String getVin() {
+        return vin;
+    }
+
+    public void setVin(String vin) {
+        this.vin = vin;
+    }
+
+    public BigDecimal getMileage() {
+        return mileage;
+    }
+
+    public void setMileage(BigDecimal mileage) {
+        this.mileage = mileage;
+    }
+
+    public BigDecimal getMileageMarket() {
+        return mileageMarket;
+    }
+
+    public void setMileageMarket(BigDecimal mileageMarket) {
+        this.mileageMarket = mileageMarket;
+    }
+
+    public Integer getPrice() {
+        return price;
+    }
+
+    public void setPrice(Integer price) {
+        this.price = price;
+    }
+
+    public BigDecimal getPriceMarket() {
+        return priceMarket;
+    }
+
+    public void setPriceMarket(BigDecimal priceMarket) {
+        this.priceMarket = priceMarket;
+    }
+
+    public int getDaysLive() {
+        return daysLive;
+    }
+
+    public void setDaysLive(int daysLive) {
+        this.daysLive = daysLive;
+    }
+
+    public BigDecimal getChangeSearches() {
+        return changeSearches;
+    }
+
+    public void setChangeSearches(BigDecimal changeSearches) {
+        this.changeSearches = changeSearches;
+    }
+
+    public BigDecimal getChangePrice() {
+        return changePrice;
+    }
+
+    public void setChangePrice(BigDecimal changePrice) {
+        this.changePrice = changePrice;
+    }
+
+    public BigDecimal getExposure() {
+        return exposure;
+    }
+
+    public void setExposure(BigDecimal exposure) {
+        this.exposure = exposure;
+    }
+
+    public BigDecimal getActivity() {
+        return activity;
+    }
+
+    public void setActivity(BigDecimal activity) {
+        this.activity = activity;
+    }
+
+    public BigDecimal getPrinted() {
+        return printed;
+    }
+
+    public void setPrinted(BigDecimal printed) {
+        this.printed = printed;
+    }
+
+    public BigDecimal getInquiries() {
+        return inquiries;
+    }
+
+    public void setInquiries(BigDecimal inquiries) {
+        this.inquiries = inquiries;
+    }
+}

Added: trunk/test-applications/jsp/src/main/java/dfs/DemoInventoryList.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/dfs/DemoInventoryList.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/dfs/DemoInventoryList.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,284 @@
+/**
+ * License Agreement.
+ *
+ *  JBoss RichFaces 3.0 - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007  Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+package dfs;
+
+import org.richfaces.component.UIDataFltrSlider;
+
+import javax.faces.component.UIData;
+import javax.faces.event.ActionEvent;
+import java.util.ArrayList;
+import java.util.List;
+
+public class DemoInventoryList {
+
+    DataFilterSliderDao dataFilterSliderDao = DataFilterSliderDaoImpl.getInstance();
+
+
+    public DemoInventoryList() {
+       loadCarMakeIndex();
+    }
+
+    private List headers;
+    private List members;
+
+    // dataTableColumn Names
+    private static final String mileageColumnName = "Mileage";
+    private static final String mileageMktAvgColumnName = "+/- Mkt Avg";
+    private static final String priceColumnName = "Price";
+    private static final String priceMktAvgColumnName = "+/- Mkt Avg";
+    private static final String daysLiveColumnName = "Days Live";
+    private static final String changeSearchesColumnName = "% Change Searches";
+    private static final String changePriceColumnName = "% Change Price";
+    private static final String exposureColumnName = "Exposure";
+    private static final String activityColumnName = "Activity";
+    private static final String printedColumnName = "Printed";
+    private static final String inquiriesColumnName = "Inquiries";
+
+    private void populateHeaderList(){
+        headers = new ArrayList();
+        //headers.add("");
+        headers.add(mileageColumnName);
+        headers.add(mileageMktAvgColumnName);
+        headers.add(priceColumnName);
+        headers.add(priceMktAvgColumnName);
+        headers.add(daysLiveColumnName);
+        headers.add(changeSearchesColumnName);
+        headers.add(changePriceColumnName);
+        headers.add(exposureColumnName);
+        headers.add(activityColumnName);
+        headers.add(printedColumnName);
+        headers.add(inquiriesColumnName);
+
+
+    }
+
+    private void populateMemberList(){
+        members = new ArrayList();
+        members.add("avgMileage");
+        members.add("avgMileageMarket");
+        members.add("avgPrice");
+        members.add("avgPriceMarket");
+        members.add("avgDaysLive");
+        members.add("avgChangeSearches");
+        members.add("avgChangePrice");
+        members.add("avgExposure");
+        members.add("avgActivity");
+        members.add("avgPrinted");
+        members.add("avgInquiries");
+    }
+
+
+
+    public String getMileageColumnName() {
+        return mileageColumnName;
+    }
+
+
+    public String getMileageMktAvgColumnName() {
+        return mileageMktAvgColumnName;
+    }
+
+    public String getPriceMktAvgColumnName() {
+        return priceMktAvgColumnName;
+    }
+
+    public String getPriceColumnName() {
+        return priceColumnName;
+    }
+
+    public String getDaysLiveColumnName() {
+        return daysLiveColumnName;
+    }
+
+    public String getChangeSearchesColumnName() {
+        return changeSearchesColumnName;
+    }
+
+    public String getChangePriceColumnName() {
+        return changePriceColumnName;
+    }
+
+    public String getExposureColumnName() {
+        return exposureColumnName;
+    }
+
+    public String getActivityColumnName() {
+        return activityColumnName;
+    }
+
+    public String getPrintedColumnName() {
+        return printedColumnName;
+    }
+
+    public String getInquiriesColumnName() {
+        return inquiriesColumnName;
+    }
+
+    private List carMakeIndex;
+
+
+    public List getCarMakeIndex() {
+        return carMakeIndex;
+    }
+
+    public void setCarMakeIndex(List carMakeIndex) {
+        this.carMakeIndex = carMakeIndex;
+    }
+
+    private UIData carMakeIndexUIData;
+
+
+    public UIData getCarMakeIndexUIData() {
+        return carMakeIndexUIData;
+    }
+
+    public void setCarMakeIndexUIData(UIData carMakeIndexUIData) {
+        this.carMakeIndexUIData = carMakeIndexUIData;
+    }
+
+    public Object getCarInventory() {
+
+        if (uiData == null){
+            loadCarTable("1");
+        }
+
+        return getUiData().getValue();
+
+    }
+
+    protected void loadCarMakeIndex() {
+
+        carMakeIndex = dataFilterSliderDao.getAllCarMakes();
+    }
+
+    UIData uiData;
+
+
+    public UIData getUiData() {
+        if(uiData == null){
+            uiData = new UIData();
+        }
+        return uiData;
+    }
+
+    public void setUiData(UIData uiData) {
+        this.uiData = uiData;
+    }
+
+    public void loadCarTable(String id) {
+       try{
+
+            getUiData().setValue(dataFilterSliderDao.getCarsById(id));
+
+        }catch(Exception e){
+            e.printStackTrace();
+        }
+    }
+
+
+    private static final String carMileageColumnName = "Mileage";
+    private static final String carMileageMktAvgColumnName = "MktAvg";
+    private static final String carPriceColumnName = "Price";
+
+
+    public String getCarMileageColumnName() {
+        return carMileageColumnName;
+    }
+
+    public String getCarMileageMktAvgColumnName() {
+        return carMileageMktAvgColumnName;
+    }
+
+    public String getCarPriceColumnName() {
+        return carPriceColumnName;
+    }
+
+    private String filterValue;
+    private String filterRule;
+
+
+    public String getFilterValue() {
+        return filterValue;
+    }
+
+    public void setFilterValue(String filterValue) {
+        this.filterValue = filterValue;
+    }
+
+
+    public String getFilterRule() {
+        return filterRule;
+    }
+
+    public void setFilterRule(String filterRule) {
+        this.filterRule = filterRule;
+
+
+    }//Other Functions---------------------------------------------------------------------------------------
+    public void populateTableFromMake(){
+         loadCarTable(filterValue);
+    }
+
+    UIDataFltrSlider dataFilterSlider;
+
+
+    public UIDataFltrSlider getDataFilterSlider() {
+        return dataFilterSlider;
+    }
+
+    public void setDataFilterSlider(UIDataFltrSlider dataFilterSlider) {
+        this.dataFilterSlider = dataFilterSlider;
+    }
+
+    public void filterCarList(ActionEvent event) {
+
+        getDataFilterSlider().resetDataTable();
+
+        try{
+            filterValue = String.valueOf(carMakeIndexUIData.getRowIndex());
+            filterRule = getAttribute(event, "filterRule");
+
+            if (filterRule.equals("showTable")){
+                loadCarTable(filterValue);
+            }
+        }catch(Exception e){
+            e.printStackTrace();
+        }
+
+
+    }
+
+    private static String getAttribute(ActionEvent event, String name) {
+        return (String) event.getComponent().getAttributes().get(name);
+    }
+
+    public int genRandom;
+
+
+    public int getGenRandom() {
+        return dataFilterSliderDao.genRand();
+    }
+
+    public void setGenRandom(int genRandom) {
+        this.genRandom = genRandom;
+    }
+}

Added: trunk/test-applications/jsp/src/main/java/dfs/DemoSliderBean.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/dfs/DemoSliderBean.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/dfs/DemoSliderBean.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,49 @@
+/**
+ * License Agreement.
+ *
+ *  JBoss RichFaces 3.0 - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007  Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+package dfs;
+
+import org.richfaces.event.DataFilterSliderEvent;
+
+
+/**
+ * @author $Autor$
+ *
+ */
+public class DemoSliderBean {
+
+    DemoInventoryList demoInventoryList;
+
+
+    public void setDemoInventoryList(DemoInventoryList demoInventoryList) {
+        this.demoInventoryList = demoInventoryList;
+    }
+
+    public void doSlide(DataFilterSliderEvent event) {
+
+           Integer oldSliderVal = event.getOldSliderVal();
+           Integer newSliderVal = event.getNewSliderVal();
+
+           System.out.println("Old Slider Value = " + oldSliderVal.toString() + "  " + "New Slider Value = " + newSliderVal.toString());
+
+    }
+
+}
\ No newline at end of file

Added: trunk/test-applications/jsp/src/main/java/dnd/DndBean.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/dnd/DndBean.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/dnd/DndBean.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,60 @@
+package dnd;
+
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.richfaces.event.DragEvent;
+import org.richfaces.event.DropEvent;
+
+
+
+public class DndBean {
+
+	private List types = new ArrayList();
+	private Object dragValue;
+	private Object testParam;
+
+	public DndBean() {
+		super();
+
+		types.add("One");
+		types.add("Two");
+	}
+
+	public void processDrop(DropEvent event) {
+		System.out.println("Bean.processDrop()");
+		this.dragValue = event.getDragValue();
+	}
+
+	public void processDrag(DragEvent dragEvent) {
+		System.out.println("Bean.processDrag()");
+	}
+
+	public List getTypes() {
+		return types;
+	}
+
+	public String dragAction() {
+		System.out.println("Bean.dragAction()");
+		return null;
+	}
+
+	public String dropAction() {
+		System.out.println("Bean.dropAction()");
+		return null;
+	}
+
+	public Object getDragValue() {
+		return dragValue;
+	}
+
+	public Object getTestParam() {
+		return testParam;
+	}
+
+	public void setTestParam(Object testParam) {
+		this.testParam = testParam;
+		System.out.println("Bean.setTestParam()" + testParam);
+	}
+}
\ No newline at end of file

Added: trunk/test-applications/jsp/src/main/java/gmap/Gmap.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/gmap/Gmap.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/gmap/Gmap.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,22 @@
+package gmap;
+
+
+public class Gmap {
+
+	 String zoom;
+
+	 public String getZoom() {
+	 	return zoom;
+	 }
+
+	 public void setZoom(String zoom) {
+	 	this.zoom = zoom;
+	 }
+
+	 public String act() {
+	 	zoom = "17";
+	 	System.out.println("zoom="+zoom);
+	 	return null;
+	 }
+}
+

Added: trunk/test-applications/jsp/src/main/java/inputNumberSlider/InputNumberSlider.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/inputNumberSlider/InputNumberSlider.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/inputNumberSlider/InputNumberSlider.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,205 @@
+package inputNumberSlider;
+
+public class InputNumberSlider {
+
+	
+	private int inputSize;
+	private int maxlength;
+	private String width;
+ 	private String minValue;
+	private String maxValue;
+ 	private String step;
+ 	private String btnLabel;
+ 	private String barStyle;
+ 	private String inputStyle;
+ 	private String tipStyle;
+ 	private String handleStyle;
+ 		
+	private boolean disabled;
+	private boolean showInput;
+	private boolean rendered;
+	private boolean enableManualInput;
+	private boolean showBoundaryValues;
+	
+	public InputNumberSlider() {
+		// TODO Auto-generated constructor stub
+		
+		inputSize = 5;
+		maxlength = 3;
+		width = "300px";
+		minValue="10";
+		maxValue="100";
+		step="5";
+		btnLabel="On";
+		barStyle=null;
+		inputStyle=null;
+		tipStyle=null;
+		handleStyle=null;
+		disabled = false;
+		showInput=true;
+		rendered=true;
+		enableManualInput = true;
+		showBoundaryValues=true;
+	}
+
+	
+	public boolean isDisabled() {
+		return disabled;
+	}
+
+	public void setDisabled(boolean disabled) {
+		this.disabled = disabled;
+	}
+
+	public boolean isEnableManualInput() {
+		return enableManualInput;
+	}
+
+	public void setEnableManualInput(boolean enableManualInput) {
+		this.enableManualInput = enableManualInput;
+	}
+
+	public int getInputSize() {
+		return inputSize;
+	}
+
+	public void setInputSize(int inputSize) {
+		this.inputSize = inputSize;
+	}
+
+	public String getMaxValue() {
+		return maxValue;
+	}
+
+	public void setMaxValue(String maxValue) {
+		this.maxValue = maxValue;
+	}
+
+	public String getMinValue() {
+		return minValue;
+	}
+
+	public void setMinValue(String minValue) {
+		this.minValue = minValue;
+	}
+
+	public boolean isShowBoundaryValues() {
+		return showBoundaryValues;
+	}
+
+	public void setShowBoundaryValues(boolean showBoundaryValues) {
+		this.showBoundaryValues = showBoundaryValues;
+	}
+
+	public boolean isShowInput() {
+		return showInput;
+	}
+
+	public void setShowInput(boolean showInput) {
+		this.showInput = showInput;
+	}
+
+	public String getStep() {
+		return step;
+	}
+
+	public void setStep(String step) {
+		this.step = step;
+	}
+
+	public String getWidth() {
+		return width;
+	}
+
+	public void setWidth(String width) {
+		this.width = width;
+	}
+
+
+	public boolean isRendered() {
+		return rendered;
+	}
+
+
+	public void setRendered(boolean rendered) {
+		this.rendered = rendered;
+	}
+	
+	public void doStyles()
+	{
+		if (getBarStyle() == null) {
+			setBtnLabel("Off");
+			setBarStyle("barStyle");
+			setInputStyle("inputStyle");
+			setTipStyle("tipStyle");
+			setHandleStyle("handleStyle");
+		} else {
+			setBarStyle(null);
+			setBtnLabel("On");
+			setInputStyle(null);
+			setTipStyle(null);
+			setHandleStyle(null);
+		}
+	}
+
+
+	public String getBarStyle() {
+		return barStyle;
+	}
+
+
+	public void setBarStyle(String barStyle) {
+		this.barStyle = barStyle;
+	}
+
+
+	public String getBtnLabel() {
+		return btnLabel;
+	}
+
+
+	public void setBtnLabel(String btnLabel) {
+		this.btnLabel = btnLabel;
+	}
+
+
+	public String getInputStyle() {
+		return inputStyle;
+	}
+
+
+	public void setInputStyle(String inputStyle) {
+		this.inputStyle = inputStyle;
+	}
+
+
+	public String getTipStyle() {
+		return tipStyle;
+	}
+
+
+	public void setTipStyle(String tipStyle) {
+		this.tipStyle = tipStyle;
+	}
+
+
+	public String getHandleStyle() {
+		return handleStyle;
+	}
+
+
+	public void setHandleStyle(String handleStyle) {
+		this.handleStyle = handleStyle;
+	}
+
+
+	public int getMaxlength() {
+		return maxlength;
+	}
+
+
+	public void setMaxlength(int maxlength) {
+		this.maxlength = maxlength;
+	}
+	
+}

Added: trunk/test-applications/jsp/src/main/java/inputNumberSpinner/InputNumberSpinner.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/inputNumberSpinner/InputNumberSpinner.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/inputNumberSpinner/InputNumberSpinner.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,158 @@
+package inputNumberSpinner;
+
+public class InputNumberSpinner {
+
+	// private String size;
+	// private String controlPosition;
+	private int			inputSize;
+	private String		max;
+	private String		min;
+	private String		value;
+	private String		step;
+	private String		inputStyle;
+	private String		style;
+	private String		btnLabel	= "ON";
+	private boolean	cycled;
+	private boolean	disabled;
+	private boolean	manualInput;
+	private boolean	rendered;
+
+	public InputNumberSpinner() {
+		// TODO Auto-generated constructor stub
+		// size= "200";
+		inputSize = 2;
+		cycled = false;
+		disabled = false;
+		manualInput = true;
+		max = "100";
+		min = "10";
+		// value="50";
+		// controlPosition="outside";
+		step = "1";
+		rendered = true;
+		style = null;
+		inputStyle = null;
+
+	}
+
+	public void doStyles() {
+		if (getStyle() == null) {
+			setBtnLabel("OFF");
+			setStyle("style");
+			setInputStyle("inputStyle");
+
+		} else {
+			setStyle(null);
+			setBtnLabel("ON");
+			setInputStyle(null);
+
+		}
+	}
+	/*
+	 * public String getControlPosition() { return controlPosition; } public void
+	 * setControlPosition(String controlPosition) { this.controlPosition =
+	 * controlPosition; }
+	 */
+
+	public boolean isCycled() {
+		return cycled;
+	}
+
+	public void setCycled(boolean cycled) {
+		this.cycled = cycled;
+	}
+
+	public boolean isDisabled() {
+		return disabled;
+	}
+
+	public void setDisabled(boolean disabled) {
+		this.disabled = disabled;
+	}
+
+	public boolean isManualInput() {
+		return manualInput;
+	}
+
+	public void setManualInput(boolean manualInput) {
+		this.manualInput = manualInput;
+	}
+
+	public String getMax() {
+		return max;
+	}
+
+	public void setMax(String max) {
+		this.max = max;
+	}
+
+	public String getMin() {
+		return min;
+	}
+
+	public void setMin(String min) {
+		this.min = min;
+	}
+
+	/*
+	 * public String getSize() { return size; } public void setSize(String size) {
+	 * this.size = size; }
+	 */
+
+	public String getStep() {
+		return step;
+	}
+
+	public void setStep(String step) {
+		this.step = step;
+	}
+
+	public String getValue() {
+		return value;
+	}
+
+	public void setValue(String value) {
+		this.value = value;
+	}
+
+	public boolean isRendered() {
+		return rendered;
+	}
+
+	public void setRendered(boolean rendered) {
+		this.rendered = rendered;
+	}
+
+	public String getInputStyle() {
+		return inputStyle;
+	}
+
+	public void setInputStyle(String inputStyle) {
+		this.inputStyle = inputStyle;
+	}
+
+	public String getStyle() {
+		return style;
+	}
+
+	public void setStyle(String style) {
+		this.style = style;
+	}
+
+	public String getBtnLabel() {
+		return btnLabel;
+	}
+
+	public void setBtnLabel(String btnLabel) {
+		this.btnLabel = btnLabel;
+	}
+
+	public int getInputSize() {
+		return inputSize;
+	}
+
+	public void setInputSize(int inputSize) {
+		this.inputSize = inputSize;
+	}
+
+}

Added: trunk/test-applications/jsp/src/main/java/modalPanel/ModalPanel.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/modalPanel/ModalPanel.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/modalPanel/ModalPanel.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,75 @@
+package modalPanel;
+
+public class ModalPanel {
+
+	
+	private int minHeight;
+	private int minWidth;
+	private int height;
+	private int width;
+	 
+	private boolean moveable;
+	private boolean resizeable;
+	
+	public ModalPanel() {
+		
+		minHeight = 100;
+		minWidth = 100;
+		height = 300;
+		width = 300;
+		
+		moveable=true;
+		resizeable=true;
+		
+		// TODO Auto-generated constructor stub
+	}
+
+	public int getHeight() {
+		return height;
+	}
+
+	public void setHeight(int height) {
+		this.height = height;
+	}
+
+	public int getMinHeight() {
+		return minHeight;
+	}
+
+	public void setMinHeight(int minHeight) {
+		this.minHeight = minHeight;
+	}
+
+	public int getMinWidth() {
+		return minWidth;
+	}
+
+	public void setMinWidth(int minWidth) {
+		this.minWidth = minWidth;
+	}
+
+	public boolean isMoveable() {
+		return moveable;
+	}
+
+	public void setMoveable(boolean moveable) {
+		this.moveable = moveable;
+	}
+
+	public boolean isResizeable() {
+		return resizeable;
+	}
+
+	public void setResizeable(boolean resizeable) {
+		this.resizeable = resizeable;
+	}
+
+	public int getWidth() {
+		return width;
+	}
+
+	public void setWidth(int width) {
+		this.width = width;
+	}
+
+}

Added: trunk/test-applications/jsp/src/main/java/paint2D/Paint2D.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/paint2D/Paint2D.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/paint2D/Paint2D.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,154 @@
+package paint2D;
+
+import java.awt.Color;
+import java.awt.Font;
+import java.awt.Graphics2D;
+import java.awt.geom.AffineTransform;
+import java.awt.geom.Rectangle2D;
+
+public class Paint2D {
+
+	private static int size = 100;
+	private static float location = 150;
+
+	private int width;
+	private int height;
+	private String title;
+	private String align; // bottom, middle, top
+	private String hspace;
+	private String vspace;
+	private String format; // jpeg|gif|png
+	private String bgcolor;
+	private String border;
+	private boolean rendered;
+
+	public boolean isRerender() {
+		return rendered;
+	}
+
+	public void setRerender(boolean rendered) {
+		this.rendered = rendered;
+	}
+
+	public String getBorder() {
+		return border;
+	}
+
+	public void setBorder(String border) {
+		this.border = border;
+	}
+
+	public Paint2D() {
+
+		width = 400;
+		align = "left";
+		height = 200;
+		title = "Pain2D title";
+		bgcolor = "white";
+		rendered = true;
+	}
+
+	public void paint(Graphics2D g2, Object obj) {
+		PaintData data = (PaintData) obj;
+		int testLenght = data.text.length();
+		int fontSize = testLenght < 8 ? 40 : 40 - (testLenght - 8);
+		if (fontSize < 12) fontSize = 12;
+		Font font = new Font("Serif", Font.HANGING_BASELINE, fontSize);
+		g2.setFont(font);
+
+		int x = 10;
+		int y = fontSize * 5 / 2;
+		g2.translate(x, y);
+
+		g2.setPaint(Color.BLUE);
+		g2.drawString(data.text, 0, 0);
+	}
+
+	public int getHeight() {
+		return height;
+	}
+
+	public void setHeight(int height) {
+		this.height = height;
+	}
+
+	public int getWidth() {
+		return width;
+	}
+
+	public void setWidth(int width) {
+		this.width = width;
+	}
+
+	public String getAlign() {
+		return align;
+	}
+
+	public void setAlign(String align) {
+		this.align = align;
+	}
+
+	public String getHspace() {
+		return hspace;
+	}
+
+	public void setHspace(String hspace) {
+		this.hspace = hspace;
+	}
+
+	public String getTitle() {
+		return title;
+	}
+
+	public void setTitle(String title) {
+		this.title = title;
+	}
+
+	public String getVspace() {
+		return vspace;
+	}
+
+	public void setVspace(String vspace) {
+		this.vspace = vspace;
+	}
+
+	public String getFormat() {
+		return format;
+	}
+
+	public void setFormat(String format) {
+		this.format = format;
+	}
+
+	public String getBgcolor() {
+		return bgcolor;
+	}
+
+	public void setBgcolor(String bgcolor) {
+		this.bgcolor = bgcolor;
+	}
+
+	public float getLocation() {
+		return location;
+	}
+
+	public void setLocation(float location) {
+		this.location = location;
+	}
+
+	public int getSize() {
+		return size;
+	}
+
+	public void setSize(int size) {
+		this.size = size;
+	}
+
+	public boolean isRendered() {
+		return rendered;
+	}
+
+	public void setRendered(boolean rendered) {
+		this.rendered = rendered;
+	}
+}

Added: trunk/test-applications/jsp/src/main/java/paint2D/PaintData.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/paint2D/PaintData.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/paint2D/PaintData.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,22 @@
+package paint2D;
+
+import java.io.Serializable;
+
+public class PaintData implements Serializable{
+	String text;
+
+	public PaintData() 
+	{
+		text = "Paint2D";
+	}
+
+	public String getText() 
+	{
+		return text;
+	}
+	public void setText(String text) 
+	{
+		this.text = text;
+	}
+}
+

Added: trunk/test-applications/jsp/src/main/java/panel/Panel.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/panel/Panel.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/panel/Panel.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,62 @@
+package panel;
+
+import javax.faces.event.ValueChangeEvent;
+
+public class Panel {
+
+	private boolean rendered;
+
+	private String width;
+	private String height;
+	private String[] title ;
+
+	public Panel() {
+		rendered = false;
+		width = "350px";
+		height = "400px";
+		title = new String[] {"Titles_0", "Titles_1", "Titles_2"};
+	}
+
+	public String getHeight() {
+		return height;
+	}
+
+	public void setHeight(String height) {
+		this.height = height;
+	}
+
+	public boolean isRendered() {
+		return rendered;
+	}
+
+	public void setRendered(boolean rendered) {
+		this.rendered = rendered;
+	}
+
+	public String getWidth() {
+		return width;
+	}
+
+	public void setWidth(String width) {
+		this.width = width;
+	}
+
+	public String[] getTitle() {
+		return title;
+	}
+
+	public void setTitle(String[] title) {
+		this.title = title;
+	}
+	
+	public void makeTitle(ValueChangeEvent event){
+		String t = event.getNewValue().toString();
+		if(t.equalsIgnoreCase(""))
+			for(int i = 0; i < title.length; i++) 
+				title[i] = "Titles_" + i;
+		else
+			for(int i = 0; i < title.length; i++) 
+				title[i] = t + "_" + i;  
+		
+	}
+}

Added: trunk/test-applications/jsp/src/main/java/panelBar/PanelBar.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/panelBar/PanelBar.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/panelBar/PanelBar.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,124 @@
+package panelBar;
+
+import javax.faces.event.ValueChangeEvent;
+
+public class PanelBar {
+
+	private String width;
+
+	private String height;
+	private String contentStyle;
+	private String style=null;
+	private String headerStyle=null;
+	private String btnLabel="ON";
+
+	private String[] label = {"label_0","label_1", "label_2", "label_3"};
+	               
+	private boolean rendered;
+
+	public PanelBar() {
+
+		height = "300px";
+		width = "500px";
+		rendered = true;
+		//contentStyle=null;
+		//style=null;
+		//headerStyle=null;
+	}
+	
+	public void doStyles()
+	{
+		if (getContentStyle() == null) {
+			setBtnLabel("OFF");
+			setContentStyle("contentStyle");
+			setHeaderStyle("activeTabStyle");
+			setStyle("style");			
+		} else {
+			setBtnLabel("ON");
+			setContentStyle(null);
+			setHeaderStyle(null);
+			setStyle(null);	
+		}
+	}
+	
+	public String getHeight() {
+		return height;
+	}
+
+	public String getContentStyle() {
+		return contentStyle;
+	}
+
+	public void setContentStyle(String contentStyle) {
+		this.contentStyle = contentStyle;
+	}
+
+	public String getHeaderStyle() {
+		return headerStyle;
+	}
+
+	public void setHeaderStyle(String headerStyle) {
+		this.headerStyle = headerStyle;
+	}
+
+	public String getStyle() {
+		return style;
+	}
+
+	public void setStyle(String style) {
+		this.style = style;
+	}
+
+	public void setHeight(String height) {
+		this.height = height;
+	}
+
+	public String[] getLabel() {
+		return label;
+	}
+
+	public boolean isRendered() {
+		return rendered;
+	}
+
+	public void setRendered(boolean rendered) {
+		this.rendered = rendered;
+	}
+
+	public String getWidth() {
+		return width;
+	}
+
+	public void setWidth(String width) {
+		this.width = width;
+	}
+
+	public void setLabel(String[] label) {
+
+		this.label = label;
+
+	}
+
+	public void makeLabels(ValueChangeEvent event) {
+		String tlabel = event.getNewValue().toString();
+		if (tlabel.equalsIgnoreCase("")) {
+			for (int i = 0; i < 4; i++) {
+				label[i] = "label_" + i;
+			}
+		} else {
+			for (int i = 0; i < 4; i++) {
+				label[i] = tlabel + "_" + i;
+			}
+		}
+
+	}
+
+	public String getBtnLabel() {
+		return btnLabel;
+	}
+
+	public void setBtnLabel(String btnLabel) {
+		this.btnLabel = btnLabel;
+	}
+
+}

Added: trunk/test-applications/jsp/src/main/java/panelMenu/PanelMenu.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/panelMenu/PanelMenu.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/panelMenu/PanelMenu.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,130 @@
+package panelMenu;
+
+import style.icon.Icon;
+
+public class PanelMenu {
+
+	private Icon icon;
+	private String width;
+	private String mode;
+	private String mode2;
+	private String align;
+	private String rendered;
+	private String iconItemPosition;
+	private String iconItemTopPosition;
+	private String iconGroupPosition;
+	private String iconGroupTopPosition;
+	private String tabIndex;
+	private String expandMode;
+	private boolean disabled;
+	private boolean expandSingle;
+	
+	public PanelMenu() {
+		width = "500px";
+		mode = "none";
+		mode2 = "none";
+		align = "";
+		rendered = "true";
+		disabled = false;
+		tabIndex = "1";
+		iconItemPosition = "left";
+		iconItemTopPosition = "left";
+		iconGroupPosition = "left";
+		iconGroupTopPosition = "left";
+		icon = new Icon();
+
+	}
+	
+	public boolean isDisabled() {
+		return disabled;
+	}
+	public String getWidth() {
+		return width;
+	}
+	public void setWidth(String width) {
+		this.width = width;
+	}
+	public void setDisabled(boolean disabled) {
+		this.disabled = disabled;
+	}
+	public boolean isExpandSingle() {
+		return expandSingle;
+	}
+	public void setExpandSingle(boolean expandSingle) {
+		this.expandSingle = expandSingle;
+	}
+	public String getAlign() {
+		return align;
+	}
+	public void setAlign(String align) {
+		this.align = align;
+	}
+	public String getRendered() {
+		return rendered;
+	}
+	public void setRendered(String rendered) {
+		this.rendered = rendered;
+	}
+	public Icon getIcon() {
+		return icon;
+	}
+	public void setIcon(Icon icon) {
+		this.icon = icon;
+	}
+	public String getIconGroupPosition() {
+		return iconGroupPosition;
+	}
+	public void setIconGroupPosition(String iconGroupPosition) {
+		this.iconGroupPosition = iconGroupPosition;
+	}
+	public String getIconGroupTopPosition() {
+		return iconGroupTopPosition;
+	}
+	public void setIconGroupTopPosition(String iconGroupTopPosition) {
+		this.iconGroupTopPosition = iconGroupTopPosition;
+	}
+	public String getIconItemPosition() {
+		return iconItemPosition;
+	}
+	public void setIconItemPosition(String iconItemPosition) {
+		this.iconItemPosition = iconItemPosition;
+	}
+	public String getIconItemTopPosition() {
+		return iconItemTopPosition;
+	}
+	public void setIconItemTopPosition(String iconItemTopPosition) {
+		this.iconItemTopPosition = iconItemTopPosition;
+	}
+
+	public String getMode2() {
+		return mode2;
+	}
+
+	public void setMode2(String mode2) {
+		this.mode2 = mode2;
+	}
+	
+	public String getMode() {
+		return mode;
+	}
+	
+	public void setMode(String mode) {
+		this.mode = mode;
+	}
+
+	public String getTabIndex() {
+		return tabIndex;
+	}
+
+	public void setTabIndex(String tabIndex) {
+		this.tabIndex = tabIndex;
+	}
+
+	public String getExpandMode() {
+		return expandMode;
+	}
+
+	public void setExpandMode(String expandMode) {
+		this.expandMode = expandMode;
+	}
+}

Added: trunk/test-applications/jsp/src/main/java/sTP/SimpleTogglePanel.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/sTP/SimpleTogglePanel.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/sTP/SimpleTogglePanel.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,60 @@
+package sTP;
+
+public class SimpleTogglePanel {
+
+	private String		switchType; // "client", "server"(default), "ajax"
+	private String		width;
+	private String		height;
+
+	private boolean	focus;
+	private boolean	rendered;
+
+	public SimpleTogglePanel() {
+		// TODO Auto-generated constructor stub
+		width = "75%";
+		height = "100%";
+		switchType = "server";
+		focus = true;
+		rendered = true;
+	}
+
+	public String getHeight() {
+		return height;
+	}
+
+	public void setHeight(String height) {
+		this.height = height;
+	}
+
+	public boolean isRendered() {
+		return rendered;
+	}
+
+	public void setRendered(boolean rendered) {
+		this.rendered = rendered;
+	}
+
+	public String getSwitchType() {
+		return switchType;
+	}
+
+	public void setSwitchType(String switchType) {
+		this.switchType = switchType;
+	}
+
+	public String getWidth() {
+		return width;
+	}
+
+	public void setWidth(String width) {
+		this.width = width;
+	}
+
+	public boolean isFocus() {
+		return focus;
+	}
+
+	public void setFocus(boolean focus) {
+		this.focus = focus;
+	}
+}

Added: trunk/test-applications/jsp/src/main/java/sb/Data.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/sb/Data.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/sb/Data.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,39 @@
+package sb;
+
+public class Data {
+	private String text;
+
+	private String label;
+	
+	private String flag; 
+	
+	public Data(String text, String label){
+		this.text = text;
+		this.label = label;
+		this.flag = "/images/flag.png";
+	}
+
+	public String getLabel() {
+		return label;
+	}
+
+	public void setLabel(String label) {
+		this.label = label;
+	}
+
+	public String getText() {
+		return text;
+	}
+
+	public void setText(String text) {
+		this.text = text;
+	}
+
+	public String getFlag() {
+		return flag;
+	}
+
+	public void setFlag(String flag) {
+		this.flag = flag;
+	}
+}

Added: trunk/test-applications/jsp/src/main/java/sb/Sb.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/sb/Sb.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/sb/Sb.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,261 @@
+package sb;
+import java.util.*;
+
+import org.richfaces.renderkit.html.SuggestionBoxRenderer;
+
+public class Sb {
+
+	private ArrayList					cities;
+	private ArrayList					data;
+	private ArrayList					tokens;
+	private int							first;
+	private int							zindex;
+	private String						property;
+	private String						rows;
+	private String						cellspacing;
+	private String						cellpadding;
+	private String						minchars;
+	private String						frequency;
+	private String						rules;
+	private String						border;
+	private String						width;
+	private String						height;
+	private String						shadowOpacity;
+	private String						bgColor;
+	private String						shadowDepth;
+	private boolean					focus;
+	private boolean					check;
+	private boolean					reRender;
+
+	private static final String[]	cit	= {"Abba", "Abbeville", "Acworth", "Adairsville", "Adel",
+			"Adrian", "Ailey", "Alamo", "Alapaha", "Albany", "Allenhurst", "Alma", "Alma",
+			"Alpharetta", "Alston", "Amboy", "Ambrose", "Americus", "Appling", "Arlington", "Ashburn",
+			"Athens", "Athens-Clarke County", "Atkinson", "Atlanta", "Attapulgus", "Auburn",
+			"Augusta", "Augusta-Richmond County", "Austell", "Avondale Estates", "Axson"};
+
+	public Sb() {
+		border = "1";
+		width = "200";
+		height = "150";
+		shadowOpacity = "1";
+		shadowDepth = Integer.toString(SuggestionBoxRenderer.SHADOW_DEPTH);
+		reRender = true;
+		zindex = 3;
+		focus = true;
+		rows = "0";
+		first = 0;
+		cellspacing = "2";
+		cellpadding = "2";
+		minchars = "1";
+		frequency = "0";
+		rules = "none";
+		setCities(getAllData());
+		// TODO Auto-generated constructor stub
+	}
+
+	public List autocomplete(Object event) {
+		String pref = event.toString();
+		ArrayList result = new ArrayList();
+
+		Iterator iterator = getAllData().iterator();
+		while (iterator.hasNext()) {
+			Data elem = (Data) iterator.next();
+			if ((elem != null && elem.getText().toLowerCase().indexOf(pref.toLowerCase()) == 0)
+					|| "".equals(pref)) {
+				result.add(elem);
+			}
+		}
+		return result;
+	}
+
+	public ArrayList getCities() {
+		return cities;
+	}
+
+	public void setCities(ArrayList cities) {
+		this.cities = cities;
+	}
+
+	public ArrayList getAllData() {
+		ArrayList result = new ArrayList();
+		for (int i = 0; i < cit.length; i++) {
+			Data data = new Data(cit[i], String.valueOf(i + 1));
+			result.add(data);
+		}
+		return result;
+	}
+
+	public ArrayList getData() {
+		return data;
+	}
+
+	public void setData(ArrayList data) {
+		this.data = data;
+	}
+
+	public String getProperty() {
+		return property;
+	}
+
+	public void setProperty(String property) {
+		this.property = property;
+	}
+
+	public String getCellpadding() {
+		return cellpadding;
+	}
+
+	public void setCellpadding(String cellpadding) {
+		this.cellpadding = cellpadding;
+	}
+
+	public String getCellspacing() {
+		return cellspacing;
+	}
+
+	public void setCellspacing(String cellspacing) {
+		this.cellspacing = cellspacing;
+	}
+
+	public boolean isCheck() {
+		return check;
+	}
+
+	public void setCheck(boolean check) {
+		this.check = check;
+	}
+
+	public int getFirst() {
+		return first;
+	}
+	public int getIntFirst() {
+		return first;
+	}
+
+	public void setFirst(int first) {
+		this.first = first;
+	}
+
+	public String getFrequency() {
+		return frequency;
+	}
+	public double getDoubleFrequency() {
+		return Double.parseDouble(getFrequency());
+	}
+
+	public void setFrequency(String frequency) {
+		this.frequency = frequency;
+	}
+
+	public String getMinchars() {
+		return minchars;
+	}
+
+	public void setMinchars(String minchars) {
+		this.minchars = minchars;
+	}
+
+	public String getRows() {
+		return rows;
+	}
+	public int getIntRows() {
+		return Integer.parseInt(getRows());
+	}
+
+	public void setRows(String rows) {
+		this.rows = rows;
+	}
+
+	public String getRules() {
+		return rules;
+	}
+
+	public void setRules(String rules) {
+		this.rules = rules;
+	}
+
+	public ArrayList getTokens() {
+		return tokens;
+	}
+
+	public void setTokens(ArrayList tokens) {
+		this.tokens = tokens;
+	}
+	public void OnSelect() {
+		System.out.print("Onselect works!!!");
+
+	}
+
+	public String getBorder() {
+		return border;
+	}
+
+	public void setBorder(String border) {
+		this.border = border;
+	}
+
+	public String getHeight() {
+		return height;
+	}
+
+	public void setHeight(String height) {
+		this.height = height;
+	}
+
+	public String getShadowOpacity() {
+		return shadowOpacity;
+	}
+
+	public void setShadowOpacity(String shadowOpacity) {
+		this.shadowOpacity = shadowOpacity;
+	}
+
+	public String getWidth() {
+		return width;
+	}
+
+	public void setWidth(String width) {
+		this.width = width;
+	}
+
+	public String getBgColor() {
+		return bgColor;
+	}
+
+	public void setBgColor(String bgColor) {
+		this.bgColor = bgColor;
+	}
+
+	public boolean isFocus() {
+		return focus;
+	}
+
+	public void setFocus(boolean focus) {
+		this.focus = focus;
+	}
+
+	public int getZindex() {
+		return zindex;
+	}
+
+	public void setZindex(int zindex) {
+		this.zindex = zindex;
+	}
+
+	public String getShadowDepth() {
+		return shadowDepth;
+	}
+
+	public void setShadowDepth(String shadowDepth) {
+		this.shadowDepth = shadowDepth;
+	}
+
+	public boolean isReRender() {
+		return reRender;
+	}
+
+	public void setReRender(boolean reRender) {
+		this.reRender = reRender;
+	}
+
+}

Added: trunk/test-applications/jsp/src/main/java/separator/Separator.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/separator/Separator.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/separator/Separator.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,135 @@
+package separator;
+
+public class Separator {
+
+	
+	
+	private String width;
+	private String title;
+	private String height;
+	private String lineType;
+	private String align;
+	private String btnLabel="ON";
+	private String style;
+	
+	private boolean rendered; 
+	
+	
+		
+	public String getBtnLabel() {
+		return btnLabel;
+	}
+
+
+
+	public void setBtnLabel(String btnLabel) {
+		this.btnLabel = btnLabel;
+	}
+
+
+
+	public String getStyle() {
+		return style;
+	}
+
+
+
+	public void setStyle(String style) {
+		this.style = style;
+	}
+
+
+
+	public Separator() {
+		width="300px";
+		height="10px";
+		title="title goes here";
+		rendered=true;
+		lineType="beveled";//beveled (default), dotted, dashed, double and solid
+		align="left"; //left|center|right
+		style=null;
+	}
+	
+	public void doStyles() {
+		if (getStyle() == null) {
+			setBtnLabel("OFF");
+			setStyle("style");
+		} else {
+			setStyle(null);
+			setBtnLabel("ON");
+		}
+	
+	}
+
+
+	public String getAlign() {
+		return align;
+	}
+
+
+
+	public void setAlign(String align) {
+		this.align = align;
+	}
+
+
+
+	public String getHeight() {
+		return height;
+	}
+
+
+
+	public void setHeight(String height) {
+		this.height = height;
+	}
+
+
+
+	public String getLineType() {
+		return lineType;
+	}
+
+
+
+	public void setLineType(String lineType) {
+		this.lineType = lineType;
+	}
+
+
+
+	public boolean isRendered() {
+		return rendered;
+	}
+
+
+
+	public void setRendered(boolean rendered) {
+		this.rendered = rendered;
+	}
+
+
+
+	public String getTitle() {
+		return title;
+	}
+
+
+
+	public void setTitle(String title) {
+		this.title = title;
+	}
+
+
+
+	public String getWidth() {
+		return width;
+	}
+
+
+
+	public void setWidth(String width) {
+		this.width = width;
+	}
+
+}

Added: trunk/test-applications/jsp/src/main/java/skins/Skins.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/skins/Skins.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/skins/Skins.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,66 @@
+package skins;
+
+import java.util.Map;
+
+import javax.faces.component.UIComponent;
+import javax.faces.component.UISelectItem;
+import javax.faces.component.UISelectOne;
+import javax.faces.context.FacesContext;
+
+public class Skins {
+
+	private String[] skinsArray = new String[] { "blueSky", "classic",
+			"deepMarine", "DEFAULT", "emeraldTown", "japanCherry", "ruby",
+			"wine", "plain" };
+
+	private String defaultSkin = "blueSky";
+
+	private String skin = defaultSkin;
+
+	private UISelectOne createComponent() {
+		UISelectOne selectOne = new UISelectOne();
+		selectOne.setValue(skin);
+
+		for (int i = 0; i < skinsArray.length; i++) {
+			String skinName = skinsArray[i];
+
+			UISelectItem item = new UISelectItem();
+			item.setItemLabel(skinName);
+			item.setItemValue(skinName);
+			item.setId("skinSelectionFor_" + skinName);
+
+			selectOne.getChildren().add(item);
+		}
+
+		return selectOne;
+	}
+
+	public String getSkin() {
+		return skin;
+	}
+
+	public UIComponent getComponent() {
+		FacesContext facesContext = FacesContext.getCurrentInstance();
+		Map requestMap = facesContext.getExternalContext().getRequestMap();
+		Object object = requestMap.get("SkinBean");
+		if (object != null) {
+			return (UISelectOne) object;
+		}
+
+		UISelectOne selectOne = createComponent();
+		requestMap.put("SkinBean", selectOne);
+		return selectOne;
+	}
+
+	public void setComponent(UIComponent component) {
+		FacesContext facesContext = FacesContext.getCurrentInstance();
+		Map requestMap = facesContext.getExternalContext().getRequestMap();
+		requestMap.put("SkinBean", component);
+	}
+
+	public String change() {
+		UISelectOne selectOne = (UISelectOne) getComponent();
+		skin = (String) selectOne.getValue();
+		return null;
+	}
+}

Added: trunk/test-applications/jsp/src/main/java/spacer/Spacer.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/spacer/Spacer.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/spacer/Spacer.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,77 @@
+package spacer;
+
+public class Spacer {
+
+	private String width;
+
+	private String height;
+
+	private String style;
+
+	private String btn;
+
+	private boolean rendered;
+
+	public Spacer() {
+		// TODO Auto-generated constructor stub
+
+		height = "50px";
+		width = "300px";
+		rendered = true;
+		style = null;
+		btn = "Switch on styleClass";
+	}
+
+	public String getHeight() {
+		return height;
+	}
+
+	public void setHeight(String height) {
+		this.height = height;
+	}
+
+	public boolean isRendered() {
+		return rendered;
+	}
+
+	public void setRendered(boolean rendered) {
+		this.rendered = rendered;
+	}
+
+	public String getWidth() {
+		return width;
+	}
+
+	public void setWidth(String width) {
+		this.width = width;
+	}
+
+	public String getStyle() {
+		return style;
+	}
+
+	public void setStyle(String style) {
+		this.style = style;
+	}
+
+	public String doStyle() {
+		if (getStyle() == null) {
+			setBtn("Switch off styleClass");
+			setStyle("spacer");
+		} else {
+			setStyle(null);
+			setBtn("Switch on styleClass");
+		}
+		// if("spacer".equals(getStyle())) setStyle(null);
+		return null;
+	}
+
+	public String getBtn() {
+		return btn;
+	}
+
+	public void setBtn(String btn) {
+		this.btn = btn;
+	}
+
+}

Added: trunk/test-applications/jsp/src/main/java/style/icon/Icon.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/style/icon/Icon.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/style/icon/Icon.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,194 @@
+package style.icon;
+
+public class Icon {
+
+	public final String iconAjaxProcess = "/pics/ajax_process.gif";
+	public final String iconAjaxStoped = "/pics/ajax_stoped.gif";
+	public final String iconCollapse = "/pics/collapse.gif";
+	public final String iconExpand = "/pics/expand.gif";
+	public final String iconFileManagerReject = "/pics/file-manager-reject.png";
+	public final String iconFileManager = "/pics/file-manager.png";
+	public final String iconHeader = "/pics/header.png";
+	public final String iconItem = "/pics/item.png";
+	public final String none = "none";
+
+	private String icon;
+	private String item;
+	private String disabled;
+	private String disabledItem;
+	private String topItem;
+	private String topDisabledItem;
+	private String expandedGroup;
+	private String collapsedGroup;
+	private String disabledGroup;
+	private String expandedTopGroup;
+	private String collapsedTopGroup;
+	private String topDisableGroup;
+	private String expanded;
+	private String collapsed;
+ 
+	public Icon() {
+		icon = "none";
+		item = "none";
+		disabled = "none";
+		disabledItem = "none";
+		topItem = "none";
+		topDisabledItem = "none";
+		expandedGroup = "none";
+		collapsedGroup = "none";
+		disabledGroup = "none";
+		expandedTopGroup = "none";
+		collapsedTopGroup = "none";
+		topDisableGroup = "none";
+		expanded = "none";
+		collapsed = "none";
+	}
+
+	public final String getIconAjaxProcess() {
+		return iconAjaxProcess;
+	}
+
+	public final String getIconAjaxStoped() {
+		return iconAjaxStoped;
+	}
+
+	public final String getIconCollapse() {
+		return iconCollapse;
+	}
+
+	public final String getIconExpand() {
+		return iconExpand;
+	}
+
+	public final String getIconFileManager() {
+		return iconFileManager;
+	}
+
+	public final String getIconFileManagerReject() {
+		return iconFileManagerReject;
+	}
+
+	public final String getIconHeader() {
+		return iconHeader;
+	}
+
+	public final String getIconItem() {
+		return iconItem;
+	}
+
+	public String getCollapsed() {
+		return collapsed;
+	}
+
+	public void setCollapsed(String collapsed) {
+		this.collapsed = collapsed;
+	}
+
+	public String getCollapsedGroup() {
+		return collapsedGroup;
+	}
+
+	public void setCollapsedGroup(String collapsedGroup) {
+		this.collapsedGroup = collapsedGroup;
+	}
+
+	public String getCollapsedTopGroup() {
+		return collapsedTopGroup;
+	}
+
+	public void setCollapsedTopGroup(String collapsedTopGroup) {
+		this.collapsedTopGroup = collapsedTopGroup;
+	}
+
+	public String getDisabled() {
+		return disabled;
+	}
+
+	public void setDisabled(String disabled) {
+		this.disabled = disabled;
+	}
+
+	public String getDisabledGroup() {
+		return disabledGroup;
+	}
+
+	public void setDisabledGroup(String disabledGroup) {
+		this.disabledGroup = disabledGroup;
+	}
+
+	public String getDisabledItem() {
+		return disabledItem;
+	}
+
+	public void setDisabledItem(String disabledItem) {
+		this.disabledItem = disabledItem;
+	}
+
+	public String getExpanded() {
+		return expanded;
+	}
+
+	public void setExpanded(String expanded) {
+		this.expanded = expanded;
+	}
+
+	public String getExpandedGroup() {
+		return expandedGroup;
+	}
+
+	public void setExpandedGroup(String expandedGroup) {
+		this.expandedGroup = expandedGroup;
+	}
+
+	public String getExpandedTopGroup() {
+		return expandedTopGroup;
+	}
+
+	public void setExpandedTopGroup(String expandedTopGroup) {
+		this.expandedTopGroup = expandedTopGroup;
+	}
+
+	public String getIcon() {
+		return icon;
+	}
+
+	public void setIcon(String icon) {
+		this.icon = icon;
+	}
+
+	public String getItem() {
+		return item;
+	}
+
+	public void setItem(String item) {
+		this.item = item;
+	}
+
+	public String getTopDisabledItem() {
+		return topDisabledItem;
+	}
+
+	public void setTopDisabledItem(String topDisabledItem) {
+		this.topDisabledItem = topDisabledItem;
+	}
+
+	public String getTopDisableGroup() {
+		return topDisableGroup;
+	}
+
+	public void setTopDisableGroup(String topDisableGroup) {
+		this.topDisableGroup = topDisableGroup;
+	}
+
+	public String getTopItem() {
+		return topItem;
+	}
+
+	public void setTopItem(String topItem) {
+		this.topItem = topItem;
+	}
+
+	public final String getNone() {
+		return none;
+	}
+}

Added: trunk/test-applications/jsp/src/main/java/tabPanel/TabPanel.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/tabPanel/TabPanel.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/tabPanel/TabPanel.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,191 @@
+package tabPanel;
+
+public class TabPanel {
+	
+	private String width;
+	private String height;
+	private String title;
+	private String switchType; //"client", "server"(default), "ajax"
+	private String headerAlignment; //"left", "center" and "right". 
+	private String headerSpacing;
+	private String selectedTab;
+	//private String timeout;
+	private String labelWidth;
+	private String label;
+	private String activeTabStyle;
+	private String	disabledTabStyle;
+	private String	inactiveTabStyle;
+	private String	contentStyle;
+	private String BtnLabel="ON";
+	
+	
+	private boolean rendered;
+	private boolean disabledTab;
+	
+	public TabPanel() {
+		// TODO Auto-generated constructor stub
+		
+		width="75%";
+		height="200px";
+		title="title goes here...";
+		switchType="server";
+		headerAlignment="center";
+		headerSpacing="20px";
+		label="Tab Label";
+		labelWidth="150px";
+		
+		activeTabStyle=null;
+		disabledTabStyle=null;
+		inactiveTabStyle=null;
+		contentStyle=null;
+		
+		rendered=true;
+		disabledTab=false;
+		
+	}
+	
+	public void doStyles()
+	{
+		if (getContentStyle() == null) {
+			setBtnLabel("Off");
+			setActiveTabStyle("activeTabStyle");
+			setContentStyle("contentStyle");
+			setDisabledTabStyle("disabledTabStyle");
+			setInactiveTabStyle("inactiveTabStyle");
+		} else {
+			setBtnLabel("OFF");
+			setActiveTabStyle(null);
+			setContentStyle(null);
+			setDisabledTabStyle(null);
+			setInactiveTabStyle(null);
+		}
+	}
+	public String getHeaderAlignment() {
+		return headerAlignment;
+	}
+
+	public void setHeaderAlignment(String headerAlignment) {
+		this.headerAlignment = headerAlignment;
+	}
+
+	public String getHeaderSpacing() {
+		return headerSpacing;
+	}
+
+	public void setHeaderSpacing(String headerSpacing) {
+		this.headerSpacing = headerSpacing;
+	}
+
+	public String getHeight() {
+		return height;
+	}
+
+	public void setHeight(String height) {
+		this.height = height;
+	}
+
+	public String getLabel() {
+		return label;
+	}
+
+	public void setLabel(String label) {
+		this.label = label;
+	}
+
+	public String getLabelWidth() {
+		return labelWidth;
+	}
+
+	public void setLabelWidth(String labelWidth) {
+		this.labelWidth = labelWidth;
+	}
+
+	public boolean isRendered() {
+		return rendered;
+	}
+
+	public void setRendered(boolean rendered) {
+		this.rendered = rendered;
+	}
+
+	public String getSelectedTab() {
+		return selectedTab;
+	}
+
+	public void setSelectedTab(String selectedTab) {
+		this.selectedTab = selectedTab;
+	}
+
+	public String getSwitchType() {
+		return switchType;
+	}
+
+	public void setSwitchType(String switchType) {
+		this.switchType = switchType;
+	}
+
+	public String getTitle() {
+		return title;
+	}
+
+	public void setTitle(String title) {
+		this.title = title;
+	}
+
+	public String getWidth() {
+		return width;
+	}
+
+	public void setWidth(String width) {
+		this.width = width;
+	}
+
+	public boolean isDisabledTab() {
+		return disabledTab;
+	}
+
+	public void setDisabledTab(boolean disabledTab) {
+		this.disabledTab = disabledTab;
+	}
+
+	public String getActiveTabStyle() {
+		return activeTabStyle;
+	}
+
+	public void setActiveTabStyle(String activeTabStyle) {
+		this.activeTabStyle = activeTabStyle;
+	}
+
+	public String getContentStyle() {
+		return contentStyle;
+	}
+
+	public void setContentStyle(String contentStyle) {
+		this.contentStyle = contentStyle;
+	}
+
+	public String getDisabledTabStyle() {
+		return disabledTabStyle;
+	}
+
+	public void setDisabledTabStyle(String disabledTabStyl) {
+		this.disabledTabStyle = disabledTabStyl;
+	}
+
+	public String getInactiveTabStyle() {
+		return inactiveTabStyle;
+	}
+
+	public void setInactiveTabStyle(String inactiveTabStyle) {
+		this.inactiveTabStyle = inactiveTabStyle;
+	}
+
+	public String getBtnLabel() {
+		return BtnLabel;
+	}
+
+	public void setBtnLabel(String btnLabel) {
+		BtnLabel = btnLabel;
+	}
+	
+}

Added: trunk/test-applications/jsp/src/main/java/togglePanel/TogglePanel.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/togglePanel/TogglePanel.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/togglePanel/TogglePanel.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,54 @@
+package togglePanel;
+
+public class TogglePanel {
+	
+	private String initialState;
+	private String stateOrder;
+	private String switchType;
+	
+
+	
+	public TogglePanel() {
+		// TODO Auto-generated constructor stub
+		initialState="asus";
+		switchType="server";
+		stateOrder="asus,benq,toshiba";
+	}
+
+
+
+	public String getInitialState() {
+		return initialState;
+	}
+
+
+
+	public void setInitialState(String initialState) {
+		this.initialState = initialState;
+	}
+
+
+
+	public String getStateOrder() {
+		return stateOrder;
+	}
+
+
+
+	public void setStateOrder(String stateOrder) {
+		this.stateOrder = stateOrder;
+	}
+
+
+
+	public String getSwitchType() {
+		return switchType;
+	}
+
+
+
+	public void setSwitchType(String switchType) {
+		this.switchType = switchType;
+	}
+
+}

Added: trunk/test-applications/jsp/src/main/java/toolBar/ToolBar.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/toolBar/ToolBar.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/toolBar/ToolBar.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,135 @@
+package toolBar;
+
+public class ToolBar {
+
+	private String width;
+	private String height;
+	private String itemSeparator;//none, line, square, disc and grid
+	private String location;//A location of a group on a menu bar. Possible values are left and right
+	
+	private String contentStyle;
+	private String separatorStyle;
+	private String btnLabel="ON";
+	private boolean rendered;
+	
+	
+	
+	public ToolBar() {
+		rendered=true;
+		width="75%";
+		height="50px";
+		itemSeparator="square";
+		location="left";
+		contentStyle=null;
+		separatorStyle=null;
+		// TODO Auto-generated constructor stub
+	}
+
+	
+	public void doStyles()
+	{
+		if (getSeparatorStyle() == null) {
+			setBtnLabel("OFF");
+			setContentStyle("contentStyle");
+			setSeparatorStyle("separatorStyle");
+			
+		} else {
+			setBtnLabel("ON");
+			setContentStyle(null);
+			setSeparatorStyle(null);
+		}
+	}
+	
+	public String getHeight() {
+		return height;
+	}
+
+
+
+	public void setHeight(String height) {
+		this.height = height;
+	}
+
+
+
+	public String getItemSeparator() {
+		return itemSeparator;
+	}
+
+
+
+	public void setItemSeparator(String itemSeparator) {
+		this.itemSeparator = itemSeparator;
+	}
+
+
+
+	public String getLocation() {
+		return location;
+	}
+
+
+
+	public void setLocation(String location) {
+		this.location = location;
+	}
+
+
+
+	public boolean isRendered() {
+		return rendered;
+	}
+
+
+
+	public void setRendered(boolean rendered) {
+		this.rendered = rendered;
+	}
+
+
+
+	public String getWidth() {
+		return width;
+	}
+
+
+
+	public void setWidth(String width) {
+		this.width = width;
+	}
+
+
+
+	public String getContentStyle() {
+		return contentStyle;
+	}
+
+
+
+	public void setContentStyle(String contentStyle) {
+		this.contentStyle = contentStyle;
+	}
+
+
+
+	public String getSeparatorStyle() {
+		return separatorStyle;
+	}
+
+
+
+	public void setSeparatorStyle(String separatorStyle) {
+		this.separatorStyle = separatorStyle;
+	}
+
+
+	public String getBtnLabel() {
+		return btnLabel;
+	}
+
+
+	public void setBtnLabel(String btnLabel) {
+		this.btnLabel = btnLabel;
+	}
+
+}

Added: trunk/test-applications/jsp/src/main/java/tooltip/Tooltip.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/tooltip/Tooltip.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/tooltip/Tooltip.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,117 @@
+package tooltip;
+
+public class Tooltip {
+	
+	private boolean followMouse;
+	private boolean rendered;
+	private boolean disabled;
+	private int horizontalOffset;
+	private int verticalOffset;
+	private int delay;
+	private String value;
+	private String mode;
+	private String direction;
+	private String style;
+	private String layout;
+		
+	public Tooltip() {
+		followMouse = false;
+		rendered = true;
+		disabled = false;
+		value = "tooltip";
+		mode = "client";
+		direction = "auto";
+		horizontalOffset = 0;
+		verticalOffset = 0;
+		style = "none";
+	}
+
+	public String getDirection() {
+		return direction;
+	}
+
+	public void setDirection(String direction) {
+		this.direction = direction;
+	}
+
+	public boolean isFollowMouse() {
+		return followMouse;
+	}
+
+	public void setFollowMouse(boolean followMouse) {
+		this.followMouse = followMouse;
+	}
+
+	public int getHorizontalOffset() {
+		return horizontalOffset;
+	}
+
+	public void setHorizontalOffset(int horizontalOffset) {
+		this.horizontalOffset = horizontalOffset;
+	}
+
+	public boolean isDisabled() {
+		return disabled;
+	}
+
+	public void setDisabled(boolean disabled) {
+		this.disabled = disabled;
+	}
+
+	public String getMode() {
+		return mode;
+	}
+
+	public void setMode(String mode) {
+		this.mode = mode;
+	}
+
+	public boolean isRendered() {
+		return rendered;
+	}
+
+	public void setRendered(boolean rendered) {
+		this.rendered = rendered;
+	}
+
+	public String getValue() {
+		return value;
+	}
+
+	public void setValue(String value) {
+		this.value = value;
+	}
+
+	public int getVerticalOffset() {
+		return verticalOffset;
+	}
+
+	public void setVerticalOffset(int verticalOffset) {
+		this.verticalOffset = verticalOffset;
+	}
+
+	public String getStyle() {
+		return style;
+	}
+
+	public void setStyle(String style) {
+		this.style = style;
+	}
+
+	public int getDelay() {
+		return delay;
+	}
+
+	public void setDelay(int delay) {
+		this.delay = delay;
+	}
+
+	public String getLayout() {
+		return layout;
+	}
+
+	public void setLayout(String layout) {
+		this.layout = layout;
+	}
+
+}

Added: trunk/test-applications/jsp/src/main/java/tree/Bean.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/tree/Bean.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/tree/Bean.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,360 @@
+/**
+ * License Agreement.
+ *
+ *  JBoss RichFaces 3.0 - Ajax4jsf Component Library
+ *
+ * Copyright (C) 2007  Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301  USA
+ */
+
+package tree;
+
+import java.io.IOException;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.LinkedHashMap;
+import java.util.Map;
+import java.util.Set;
+
+import javax.faces.FacesException;
+import javax.faces.component.UIComponent;
+import javax.faces.context.FacesContext;
+import javax.faces.event.FacesEvent;
+
+import org.ajax4jsf.context.AjaxContext;
+import org.richfaces.component.UITree;
+import org.richfaces.component.UITreeNode;
+import org.richfaces.component.xml.XmlTreeDataBuilder;
+import org.richfaces.event.DropEvent;
+import org.richfaces.event.NodeExpandedEvent;
+import org.richfaces.event.NodeSelectedEvent;
+import org.richfaces.model.ListRowKey;
+import org.richfaces.model.TreeNode;
+import org.richfaces.model.TreeNodeImpl;
+import org.richfaces.model.TreeRowKey;
+import org.xml.sax.InputSource;
+import org.xml.sax.SAXException;
+
+/**
+ * @author $Autor$
+ */
+public class Bean {
+	private String switchType = "client";
+	private TreeNode data;
+	private TreeNode selectedNode = null;
+	private Map selectedNodeChildren = new LinkedHashMap();
+	private String commandButtonCaption = "Set user icons";
+	private String iconCollapsed = null;
+	private String iconExpanded = null;
+	private String iconLeaf = null;
+	private String icon = null;
+	private boolean renderFacets = false;
+	private String pathToExpand;
+	private boolean dragOn = true;
+	private TreeNodeImpl data1;
+	private int counter = 0;
+	private String expandPath;
+	private UITree tree;
+
+	public Bean() {
+		try {
+			FacesContext context = FacesContext.getCurrentInstance();
+			data = XmlTreeDataBuilder
+					.build(new InputSource(getClass().getResourceAsStream("test.xml")));
+			TreeNode pomData = XmlTreeDataBuilder.build(new InputSource(getClass()
+					.getResourceAsStream("pom_sample.xml")));
+			Iterator children = pomData.getChildren();
+			while (children.hasNext()) {
+				Map.Entry entry = (Map.Entry) children.next();
+				data.addChild(new Long(1), (TreeNode) entry.getValue());
+			}
+		} catch (SAXException e) {
+			e.printStackTrace();
+		} catch (IOException e) {
+			e.printStackTrace();
+		}
+
+		data1 = new TreeNodeImpl();
+		data1.setData("Root node");
+		for (int i = 0; i < 10; i++) {
+			TreeNodeImpl child = new TreeNodeImpl() {
+
+				public Object getData() {
+					return super.getData() + " " + counter;
+				}
+			};
+			String id = Integer.toString(i);
+			child.setData("Node: " + id);
+			data1.addChild(id, child);
+		}
+		initData();
+	}
+
+	public String getIcon() {
+		return icon;
+	}
+
+	public void setIcon(String icon) {
+		this.icon = icon;
+	}
+
+	public String getCommandButtonCaption() {
+		return commandButtonCaption;
+	}
+
+	public void setCommandButtonCaption(String commandButtonCaption) {
+		this.commandButtonCaption = commandButtonCaption;
+	}
+
+	public void changeIcons(javax.faces.event.ActionEvent event) {
+		if (null == icon) {
+			iconCollapsed = "/pics/header.png";
+			iconExpanded = "/pics/item.png";
+			iconLeaf = "/pics/ajax_process.gif";
+			icon = "/pics/ajax_stoped.gif";
+			commandButtonCaption = "Set defoult icons";
+		} else {
+			iconCollapsed = null;
+			iconExpanded = null;
+			iconLeaf = null;
+			icon = null;
+			commandButtonCaption = "Set user icons";
+		}
+	}
+
+	public TreeNode getData() {
+		return data;
+	}
+
+	public String getSwitchType() {
+		return switchType;
+	}
+
+	public void setSwitchType(String switchType) {
+		this.switchType = switchType;
+	}
+
+	private UITree getTree(FacesEvent event) {
+		UIComponent component = event.getComponent();
+		if (component instanceof UITree) {
+			return ((UITree) component);
+		}
+
+		if (component instanceof UITreeNode) {
+			return ((UITree) component.getParent());
+		}
+
+		return null;
+	}
+
+	public void up() {
+		if (selectedNode.getParent() != null) {
+			selectedNode = selectedNode.getParent();
+		}
+		initData();
+	}
+
+	public void onSelect(NodeSelectedEvent event) {
+		System.out.println("Node selected: " + getTree(event).getRowKey());
+		if (getTree(event).getTreeNode() != null) {
+			selectedNode = getTree(event).getTreeNode();
+			initData();
+		}
+	}
+
+	public void onSelectInc(NodeSelectedEvent event) {
+		counter++;
+
+		UITree tree = getTree(event);
+		TreeRowKey key = (TreeRowKey) tree.getRowKey();
+		Set keys = tree.getAjaxKeys();
+		if (keys == null) {
+			keys = new HashSet();
+			tree.setAjaxKeys(keys);
+		}
+
+		AjaxContext ajaxCtx = AjaxContext.getCurrentInstance();
+		FacesContext fctx = FacesContext.getCurrentInstance();
+		tree.setRowKey(null);
+		// Force more than one node to update here:
+		for (int i = 0; i < 5; i++) {
+			ListRowKey dirtyKey = new ListRowKey(Integer.toString(i));
+			keys.add(dirtyKey);
+			tree.setRowKey(dirtyKey);
+			ajaxCtx.addComponentToAjaxRender(tree.getParent(), tree.getClientId(fctx));
+		}
+		tree.setRowKey(key);
+	}
+
+	private void initData() {
+		selectedNodeChildren.clear();
+		if (selectedNode != null) {
+			Iterator iter = selectedNode.getChildren();
+			int i = 0;
+			while (iter.hasNext()) {
+				Map.Entry entry = (Map.Entry) iter.next();
+				selectedNodeChildren
+						.put(((TreeNode) entry.getValue()).getData(), Integer.toString(i++));
+			}
+		}
+	}
+
+	public void onExpand(NodeExpandedEvent event) {
+		UITree tree = getTree(event);
+		System.out.println("Node " + (tree.isExpanded() ? "expanded" : "collapsed") + " "
+				+ tree.getRowKey());
+	}
+
+	public String expand() {
+		if (expandPath != null && expandPath.length() != 0) {
+			try {
+				tree.queueNodeExpand(new ListRowKey(expandPath));
+			} catch (IOException e) {
+				// TODO Auto-generated catch block
+				e.printStackTrace();
+			}
+		}
+
+		return null;
+	}
+
+	public String getExpandPath() {
+		return expandPath;
+	}
+
+	public void setExpandPath(String expandPath) {
+		this.expandPath = expandPath;
+	}
+
+	public UIComponent getTree() {
+		return tree;
+	}
+
+	public void setTree(UIComponent tree) {
+		this.tree = (UITree) tree;
+	}
+
+	public String collapseAll() throws IOException {
+		this.tree.queueCollapseAll();
+		return null;
+	}
+
+	public String expandAll() {
+		try {
+			this.tree.queueExpandAll();
+		} catch (IOException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
+		return null;
+	}
+
+	public Map getSelectedNodeChildren() {
+		return selectedNodeChildren;
+	}
+
+	public void setSelectedNodeChildren(Map selectedNodeChildren) {
+		this.selectedNodeChildren = selectedNodeChildren;
+	}
+
+	public TreeNode getSelectedNode() {
+		return selectedNode;
+	}
+
+	public void setSelectedNode(TreeNode selectedNode) {
+		this.selectedNode = selectedNode;
+	}
+
+	public void processDrop(DropEvent dropEvent) {
+		System.out.println("Should be printed twice per event!!!");
+		System.out.println(dropEvent);
+		System.out.println("DragValue: " + dropEvent.getDragValue());
+		System.out.println("DropValue: " + dropEvent.getDropValue());
+		System.out.println("Drag row data: "
+				+ getTree(dropEvent).getRowData(dropEvent.getDragValue()));
+		System.out.println("Drop row data: "
+				+ getTree(dropEvent).getRowData(dropEvent.getDropValue()));
+		System.out.println("+++++");
+	}
+
+	public String getIconCollapsed() {
+		return iconCollapsed;
+	}
+
+	public void setIconCollapsed(String iconCollapsed) {
+		this.iconCollapsed = iconCollapsed;
+	}
+
+	public String getIconExpanded() {
+		return iconExpanded;
+	}
+
+	public void setIconExpanded(String iconExpanded) {
+		this.iconExpanded = iconExpanded;
+	}
+
+	public String getIconLeaf() {
+		return iconLeaf;
+	}
+
+	public void setIconLeaf(String iconLeaf) {
+		this.iconLeaf = iconLeaf;
+	}
+
+	public String getPathToExpand() {
+		return pathToExpand;
+	}
+
+	public void setPathToExpand(String pathToExpand) {
+		this.pathToExpand = pathToExpand;
+	}
+
+	public String expandNode() {
+		String pathToExpand = getPathToExpand();
+		if (pathToExpand != null && pathToExpand.trim().length() != 0) {
+			try {
+				((UITree) getTree()).queueNodeExpand(new ListRowKey(pathToExpand));
+			} catch (IOException e) {
+				throw new FacesException(e);
+			}
+		}
+
+		return null;
+	}
+
+	public boolean isDragOn() {
+		return dragOn;
+	}
+
+	public void setDragOn(boolean dragOn) {
+		this.dragOn = dragOn;
+	}
+
+	public TreeNodeImpl getData1() {
+		return data1;
+	}
+
+	public void setData1(TreeNodeImpl data1) {
+		this.data1 = data1;
+	}
+
+	public boolean isRenderFacets() {
+		return renderFacets;
+	}
+
+	public void setRenderFacets(boolean renderFacets) {
+		this.renderFacets = renderFacets;
+	}
+}
\ No newline at end of file

Added: trunk/test-applications/jsp/src/main/java/tree/CachingTreeDataLocator.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/tree/CachingTreeDataLocator.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/tree/CachingTreeDataLocator.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,66 @@
+/**
+ * 
+ */
+package tree;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+import org.richfaces.model.TreeRowKey;
+
+
+
+/**
+ * @author Nick Belaevski - nbelaevski at exadel.com
+ * created 30.12.2006
+ * 
+ */
+public class CachingTreeDataLocator {
+
+	private static class CacheEntry {
+		private int pid;
+		private TreeRowKey key;
+		private Object data;
+	}
+	
+	private List cache = new ArrayList();
+	private int number = 0;
+	
+	/* (non-Javadoc)
+	 * @see com.exadel.jsf.model.preserve.TreeDataLocator#createData(java.lang.Object, com.exadel.jsf.model.TreeRowKey, com.exadel.jsf.model.TreeNode)
+	 */
+	public Object createData(Object locator, TreeRowKey rowKey) {
+		for (Iterator iterator = cache.iterator(); iterator.hasNext();) {
+			CacheEntry entry = (CacheEntry) iterator.next();
+			if (entry.pid  == ((Integer) locator).intValue()) {
+				return entry.data;
+			}
+		}
+		
+		return null;
+	}
+
+	/* (non-Javadoc)
+	 * @see com.exadel.jsf.model.preserve.TreeDataLocator#createLocator(java.lang.Object, com.exadel.jsf.model.TreeRowKey, com.exadel.jsf.model.TreeNode)
+	 */
+	public Object createLocator(Object data, TreeRowKey rowKey) {
+		for (Iterator iterator = cache.iterator(); iterator.hasNext();) {
+			CacheEntry entry = (CacheEntry) iterator.next();
+
+			if (entry.key.equals(rowKey)) {
+				return Integer.valueOf(entry.pid);
+			}
+		}
+		
+		CacheEntry cacheEntry = new CacheEntry();
+		cacheEntry.data = data;
+		cacheEntry.key = rowKey;
+		cacheEntry.pid = number++;
+		
+		cache.add(cacheEntry);
+		
+		return Integer.valueOf(cacheEntry.pid);
+	}
+
+}

Added: trunk/test-applications/jsp/src/main/java/tree/Library.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/tree/Library.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/tree/Library.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,117 @@
+package tree;
+
+
+
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+
+import org.richfaces.model.TreeNode;
+
+public class Library implements TreeNode {
+
+	private Map pathways = null;
+	private Object state1;
+	// private Object state2;
+
+	private List listPathway;
+
+	public Library() {
+	}
+
+	public Library(List l) {
+		this.listPathway = l;
+	}
+
+	private Map getPathways() {
+		if (this.pathways == null) {
+			initData();
+		}
+		return this.pathways;
+	}
+
+	public void addPathway(Pathway pw) {
+		addChild(Long.toString(pw.getId()), pw);
+		pw.setParent(this);
+	}
+
+	public void addChild(Object identifier, TreeNode child) {
+		getPathways().put(identifier, child);
+	}
+
+	public TreeNode getChild(Object id) {
+		return (TreeNode) getPathways().get(id);
+	}
+
+	public Iterator getChildren() {
+		return getPathways().entrySet().iterator();
+	}
+
+	public Object getData() {
+		return this;
+	}
+
+	public TreeNode getParent() {
+		return null;
+	}
+
+	public boolean isLeaf() {
+		return getPathways().isEmpty();
+	}
+
+	public void removeChild(Object id) {
+		getPathways().remove(id);
+	}
+
+	public void setData(Object data) {
+	}
+
+	public void setParent(TreeNode parent) {
+	}
+
+	public String getType() {
+		return "library";
+	}
+
+	private long nextId = 0;
+
+	private long getNextId() {
+		return nextId++;
+	}
+
+	private Map pathCache = new HashMap();
+
+	private Pathway getPathwayByName(String name, Library library) {
+		Pathway pathway = (Pathway) pathCache.get(name);
+		if (pathway == null) {
+			pathway = new Pathway(getNextId());
+			pathway.setName(name);
+			pathCache.put(name, pathway);
+			library.addPathway(pathway);
+		}
+		return pathway;
+	}
+
+	private void initData() {
+		pathways = new HashMap();
+
+		for (int i = 0; i < 15; i++) {
+			Pathway path = getPathwayByName("PATH_" + i, this);
+			for (int j = 0; j < 20; j++) {
+				Organism org = new Organism(getNextId());
+				org.setName("ORG_" + i + "." + j);
+				path.addOrganism(org);
+			}
+		}
+
+	}
+
+	public Object getState1() {
+		return state1;
+	}
+
+	public void setState1(Object state1) {
+		this.state1 = state1;
+	}
+}
\ No newline at end of file

Added: trunk/test-applications/jsp/src/main/java/tree/Organism.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/tree/Organism.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/tree/Organism.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,77 @@
+package tree;
+
+
+
+import java.util.ArrayList;
+import java.util.Iterator;
+
+import org.richfaces.model.TreeNode;
+
+public class Organism implements TreeNode {
+	private long		id;
+	private String		name;
+	private Pathway	pathway;
+
+	public Organism(long id) {
+		this.id = id;
+	}
+
+	public void addChild(Object identifier, TreeNode child) {
+		throw new UnsupportedOperationException("Organisms do not have children");
+	}
+
+	public TreeNode getChild(Object id) {
+		throw new UnsupportedOperationException("Organisms do not have children");
+	}
+
+	public Iterator getChildren() {
+		// TODO: Fix me!
+		return new ArrayList().iterator(); // work around limitation for TreeNode
+	}
+
+	public Object getData() {
+		return this;
+	}
+
+	public TreeNode getParent() {
+		return pathway;
+	}
+
+	public boolean isLeaf() {
+		return true;
+	}
+
+	public void removeChild(Object id) {
+		throw new UnsupportedOperationException("Organisms do not have children");
+	}
+
+	public void setData(Object data) {
+	}
+
+	public void setParent(TreeNode parent) {
+		this.pathway = (Pathway) parent;
+	}
+
+	public Pathway getPathway() {
+		return pathway;
+	}
+
+	public void setPathway(Pathway artist) {
+		this.pathway = artist;
+	}
+
+	public String getName() {
+		return name;
+	}
+
+	public void setName(String title) {
+		this.name = title;
+	}
+
+	public long getId() {
+		return id;
+	}
+	public String getType() {
+		return "organism";
+	}
+}

Added: trunk/test-applications/jsp/src/main/java/tree/Pathway.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/tree/Pathway.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/tree/Pathway.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,85 @@
+package tree;
+
+
+
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+
+import org.richfaces.model.TreeNode;
+
+public class Pathway implements TreeNode {
+
+    private long id;
+    private Map organisms = new HashMap();
+    private String name;
+    private Library library;
+
+
+    public Pathway(long id) {
+        this.id = id;
+    }
+
+    public void addOrganism(Organism org) {
+        addChild(Long.toString(org.getId()), org);
+        org.setParent(this);
+    }
+
+    public void addChild(Object identifier, TreeNode child) {
+        organisms.put(identifier, child);
+    }
+
+    public TreeNode getChild(Object id) {
+        return (TreeNode) organisms.get(id);
+    }
+
+    public Iterator getChildren() {
+        return organisms.entrySet().iterator();
+    }
+
+    public Object getData() {
+        return this;
+    }
+
+    public TreeNode getParent() {
+        return library;
+    }
+
+    public boolean isLeaf() {
+        return organisms.isEmpty();
+    }
+
+    public void removeChild(Object id) {
+        organisms.remove(id);
+    }
+
+    public void setData(Object data) {
+    }
+
+    public void setParent(TreeNode parent) {
+        library = (Library) parent;
+    }
+
+    public long getId() {
+        return id;
+    }
+
+    public String getName() {
+        return name;
+    }
+
+    public void setName(String name) {
+        this.name = name;
+    }
+
+    public Library getLibrary() {
+        return library;
+    }
+
+    public void setLibrary(Library library) {
+        this.library = library;
+    }
+    public String getType() {
+        return "pathway";
+    }
+}
\ No newline at end of file

Added: trunk/test-applications/jsp/src/main/java/tree/TreeBean.java
===================================================================
--- trunk/test-applications/jsp/src/main/java/tree/TreeBean.java	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/tree/TreeBean.java	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,7 @@
+package tree;
+
+public class TreeBean {
+    public Object getPathwayTree() {
+        return new Library();
+    }
+}

Added: trunk/test-applications/jsp/src/main/java/tree/pom_sample.xml
===================================================================
--- trunk/test-applications/jsp/src/main/java/tree/pom_sample.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/tree/pom_sample.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,102 @@
+<?xml version="1.0"?>
+
+<project>
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>org.richfaces</groupId>
+  <artifactId>tree</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.ajax4jsf.cdk</groupId>
+        <artifactId>maven-cdk-plugin</artifactId>
+        <version>1.1.0-SNAPSHOT</version>
+        <executions>
+          <execution>
+            <phase>generate-sources</phase>
+            <goals>
+              <goal>generate</goal>
+            </goals>
+          </execution>
+        </executions>
+        <configuration>
+          <library>
+            <prefix>org.richfaces</prefix>
+            <taglib>
+              <shortName>tree</shortName>
+            </taglib>
+          </library>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+  <repositories>
+    <repository>
+      <releases />
+      <snapshots>
+        <enabled>false</enabled>
+        <updatePolicy>never</updatePolicy>
+      </snapshots>
+      <id>maven2-repository.dev.java.net</id>
+      <name>Java.net Repository for Maven</name>
+      <url>https://maven2-repository.dev.java.net/nonav/repository</url>
+    </repository>
+    <repository>
+      <releases>
+        <enabled>false</enabled>
+      </releases>
+      <snapshots>
+        <updatePolicy>always</updatePolicy>
+      </snapshots>
+      <id>maven2-snapshots.ajax4jsf.org</id>
+      <name>Ajax4jsf Repository for Maven Snapshots</name>
+      <url>https://ajax4jsf.dev.java.net/nonav/snapshots</url>
+    </repository>
+  </repositories>
+  <pluginRepositories>
+    <pluginRepository>
+      <releases>
+        <enabled>false</enabled>
+      </releases>
+      <snapshots>
+        <updatePolicy>always</updatePolicy>
+      </snapshots>
+      <id>maven2-snapshots.ajax4jsf.org</id>
+      <name>Ajax4jsf Repository for Maven Snapshots</name>
+      <url>https://ajax4jsf.dev.java.net/nonav/snapshots</url>
+    </pluginRepository>
+  </pluginRepositories>
+  <dependencies>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>3.8.1</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>com.sun.facelets</groupId>
+      <artifactId>jsf-facelets</artifactId>
+      <version>1.1.6</version>
+    </dependency>
+    <dependency>
+      <groupId>javax.servlet</groupId>
+      <artifactId>servlet-api</artifactId>
+      <version>2.4</version>
+    </dependency>
+    <dependency>
+      <groupId>javax.servlet</groupId>
+      <artifactId>jsp-api</artifactId>
+      <version>2.0</version>
+    </dependency>
+    <dependency>
+      <groupId>javax.faces</groupId>
+      <artifactId>jsf-api</artifactId>
+      <version>1.1_02</version>
+    </dependency>
+    <dependency>
+      <groupId>org.ajax4jsf</groupId>
+      <artifactId>framework</artifactId>
+      <version>1.1.0-SNAPSHOT</version>
+    </dependency>
+  </dependencies>
+</project>
\ No newline at end of file

Added: trunk/test-applications/jsp/src/main/java/tree/test.xml
===================================================================
--- trunk/test-applications/jsp/src/main/java/tree/test.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/java/tree/test.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,56 @@
+<?xml version="1.0"?>
+<web-app version="2.4">
+ <description>Tree demo</description>
+ <display-name>tree-demo</display-name>
+ <context-param>
+  <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
+  <param-value>.xhtml</param-value>
+ </context-param>
+ <context-param>
+  <param-name>org.ajax4jsf.COMPRESS_SCRIPT</param-name>
+  <param-value>false</param-value>
+ </context-param>
+ <context-param>
+  <param-name>facelets.REFRESH_PERIOD</param-name>
+  <param-value>2</param-value>
+ </context-param>
+ <context-param>
+  <param-name>facelets.DEVELOPMENT</param-name>
+  <param-value>true</param-value>
+ </context-param>
+ <context-param>
+  <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
+  <param-value>client</param-value>
+ </context-param>
+ <context-param>
+  <param-name>com.sun.faces.validateXml</param-name>
+  <param-value>true</param-value>
+ </context-param>
+ <context-param>
+  <param-name>com.sun.faces.verifyObjects</param-name>
+  <param-value>true</param-value>
+ </context-param>
+ <filter>
+  <filter-name>a4j</filter-name>
+  <filter-class>org.ajax4jsf.Filter</filter-class>
+ </filter>
+ <filter-mapping>
+  <filter-name>a4j</filter-name>
+  <servlet-name>Faces Servlet</servlet-name>
+  <dispatcher>FORWARD</dispatcher>
+  <dispatcher>REQUEST</dispatcher>
+  <dispatcher>INCLUDE</dispatcher>
+ </filter-mapping>
+ <servlet>
+  <servlet-name>Faces Servlet</servlet-name>
+  <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
+  <load-on-startup>1</load-on-startup>
+ </servlet>
+ <servlet-mapping>
+  <servlet-name>Faces Servlet</servlet-name>
+  <url-pattern>*.jsf</url-pattern>
+ </servlet-mapping>
+ <login-config>
+  <auth-method>BASIC</auth-method>
+ </login-config>
+</web-app>

Added: trunk/test-applications/jsp/src/main/resources/tree/pom_sample.xml
===================================================================
--- trunk/test-applications/jsp/src/main/resources/tree/pom_sample.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/resources/tree/pom_sample.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,102 @@
+<?xml version="1.0"?>
+
+<project>
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>org.richfaces</groupId>
+  <artifactId>tree</artifactId>
+  <version>1.0-SNAPSHOT</version>
+  <build>
+    <plugins>
+      <plugin>
+        <groupId>org.ajax4jsf.cdk</groupId>
+        <artifactId>maven-cdk-plugin</artifactId>
+        <version>1.1.0-SNAPSHOT</version>
+        <executions>
+          <execution>
+            <phase>generate-sources</phase>
+            <goals>
+              <goal>generate</goal>
+            </goals>
+          </execution>
+        </executions>
+        <configuration>
+          <library>
+            <prefix>org.richfaces</prefix>
+            <taglib>
+              <shortName>tree</shortName>
+            </taglib>
+          </library>
+        </configuration>
+      </plugin>
+    </plugins>
+  </build>
+  <repositories>
+    <repository>
+      <releases />
+      <snapshots>
+        <enabled>false</enabled>
+        <updatePolicy>never</updatePolicy>
+      </snapshots>
+      <id>maven2-repository.dev.java.net</id>
+      <name>Java.net Repository for Maven</name>
+      <url>https://maven2-repository.dev.java.net/nonav/repository</url>
+    </repository>
+    <repository>
+      <releases>
+        <enabled>false</enabled>
+      </releases>
+      <snapshots>
+        <updatePolicy>always</updatePolicy>
+      </snapshots>
+      <id>maven2-snapshots.ajax4jsf.org</id>
+      <name>Ajax4jsf Repository for Maven Snapshots</name>
+      <url>https://ajax4jsf.dev.java.net/nonav/snapshots</url>
+    </repository>
+  </repositories>
+  <pluginRepositories>
+    <pluginRepository>
+      <releases>
+        <enabled>false</enabled>
+      </releases>
+      <snapshots>
+        <updatePolicy>always</updatePolicy>
+      </snapshots>
+      <id>maven2-snapshots.ajax4jsf.org</id>
+      <name>Ajax4jsf Repository for Maven Snapshots</name>
+      <url>https://ajax4jsf.dev.java.net/nonav/snapshots</url>
+    </pluginRepository>
+  </pluginRepositories>
+  <dependencies>
+    <dependency>
+      <groupId>junit</groupId>
+      <artifactId>junit</artifactId>
+      <version>3.8.1</version>
+      <scope>test</scope>
+    </dependency>
+    <dependency>
+      <groupId>com.sun.facelets</groupId>
+      <artifactId>jsf-facelets</artifactId>
+      <version>1.1.6</version>
+    </dependency>
+    <dependency>
+      <groupId>javax.servlet</groupId>
+      <artifactId>servlet-api</artifactId>
+      <version>2.4</version>
+    </dependency>
+    <dependency>
+      <groupId>javax.servlet</groupId>
+      <artifactId>jsp-api</artifactId>
+      <version>2.0</version>
+    </dependency>
+    <dependency>
+      <groupId>javax.faces</groupId>
+      <artifactId>jsf-api</artifactId>
+      <version>1.1_02</version>
+    </dependency>
+    <dependency>
+      <groupId>org.ajax4jsf</groupId>
+      <artifactId>framework</artifactId>
+      <version>1.1.0-SNAPSHOT</version>
+    </dependency>
+  </dependencies>
+</project>
\ No newline at end of file

Added: trunk/test-applications/jsp/src/main/resources/tree/test.xml
===================================================================
--- trunk/test-applications/jsp/src/main/resources/tree/test.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/resources/tree/test.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,56 @@
+<?xml version="1.0"?>
+<web-app version="2.4">
+ <description>Tree demo</description>
+ <display-name>tree-demo</display-name>
+ <context-param>
+  <param-name>javax.faces.DEFAULT_SUFFIX</param-name>
+  <param-value>.xhtml</param-value>
+ </context-param>
+ <context-param>
+  <param-name>org.ajax4jsf.COMPRESS_SCRIPT</param-name>
+  <param-value>false</param-value>
+ </context-param>
+ <context-param>
+  <param-name>facelets.REFRESH_PERIOD</param-name>
+  <param-value>2</param-value>
+ </context-param>
+ <context-param>
+  <param-name>facelets.DEVELOPMENT</param-name>
+  <param-value>true</param-value>
+ </context-param>
+ <context-param>
+  <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
+  <param-value>client</param-value>
+ </context-param>
+ <context-param>
+  <param-name>com.sun.faces.validateXml</param-name>
+  <param-value>true</param-value>
+ </context-param>
+ <context-param>
+  <param-name>com.sun.faces.verifyObjects</param-name>
+  <param-value>true</param-value>
+ </context-param>
+ <filter>
+  <filter-name>a4j</filter-name>
+  <filter-class>org.ajax4jsf.Filter</filter-class>
+ </filter>
+ <filter-mapping>
+  <filter-name>a4j</filter-name>
+  <servlet-name>Faces Servlet</servlet-name>
+  <dispatcher>FORWARD</dispatcher>
+  <dispatcher>REQUEST</dispatcher>
+  <dispatcher>INCLUDE</dispatcher>
+ </filter-mapping>
+ <servlet>
+  <servlet-name>Faces Servlet</servlet-name>
+  <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
+  <load-on-startup>1</load-on-startup>
+ </servlet>
+ <servlet-mapping>
+  <servlet-name>Faces Servlet</servlet-name>
+  <url-pattern>*.jsf</url-pattern>
+ </servlet-mapping>
+ <login-config>
+  <auth-method>BASIC</auth-method>
+ </login-config>
+</web-app>

Added: trunk/test-applications/jsp/src/main/webapp/Calendar/Calendar.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/Calendar/Calendar.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/Calendar/Calendar.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,122 @@
+<%@ page pageEncoding="UTF-8"%>
+
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="http://richfaces.org/a4j" prefix="a4j"%>
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich"%>
+
+<html>
+<head>
+<title></title>
+<style type="text/css">
+			.smallText {
+				font-size: xx-small;
+			}
+			.largeText {
+				font-size: xx-large;
+			}
+			
+			.Selecteddayclass {
+				background-color: #0087FF;
+			}
+		</style>
+</head>
+<body>
+<f:view>
+	<a4j:outputPanel ajaxRendered="true">
+		<h:messages />
+	</a4j:outputPanel>
+	<h:form>
+
+		<rich:calendar id="calendar" data="#{calendarDataModel}"
+			locale="#{calendarBean.locale}" popup="#{calendarBean.popup}"
+			datePattern="#{calendarBean.pattern}"
+			weekDayLabelsShort="#{calendarBean.weekDayLabelsShort}"
+			value="#{calendarBean.selectedDate}"
+			currentDate="#{calendarBean.currentDate}"
+			jointPoint="#{calendarBean.jointPoint}"
+			direction="#{calendarBean.direction}" buttonLabel="PopUp">
+
+			<f:validator validatorId="org.richfaces.CalendarValidator" />
+
+			<h:panelGrid columns="2">
+				<f:verbatim>
+					<p style="padding: 2px;"<%-- class="largeText"--%>>{day}</p>
+				</f:verbatim>
+				<%-- h:panelGrid>
+							<h:outputText styleClass="smallText" value="{data.enLabel}" />
+							<h:outputText styleClass="smallText" value="{data.frLabel}" />
+							<h:outputText styleClass="smallText" value="{data.deLabel}" />
+						</h:panelGrid--%>
+			</h:panelGrid>
+		</rich:calendar>
+
+		<h:panelGrid columns="2">
+			<h:outputText value="Select Locale:" />
+			<h:selectOneRadio onchange="submit()" value="en/US"
+				valueChangeListener="#{calendarBean.selectLocale}">
+				<f:selectItem itemLabel="US" itemValue="en/US" />
+				<f:selectItem itemLabel="DE" itemValue="de/DE" />
+				<f:selectItem itemLabel="FR" itemValue="fr/FR" />
+				<f:selectItem itemLabel="RU" itemValue="ru/RU" />
+			</h:selectOneRadio>
+			<h:outputText value="Popup Mode:" />
+			<h:selectBooleanCheckbox value="#{calendarBean.popup}"
+				onclick="submit()" />
+			<h:outputText value="Custom day labels:" />
+			<h:selectBooleanCheckbox value="#{calendarBean.useCustomDayLabels}"
+				onclick="submit()" />
+			<h:outputText value="Select Date Pattern:" />
+			<h:selectOneMenu value="#{calendarBean.pattern}" onchange="submit()">
+				<f:selectItem itemLabel="d/M/yy" itemValue="d/M/yy" />
+				<f:selectItem itemLabel="dd/M/yy" itemValue="dd/M/yy" />
+				<f:selectItem itemLabel="d/MMM/y" itemValue="d/MMM/y" />
+				<f:selectItem itemLabel="MMM d, yyyy" itemValue="MMM d, yyyy" />
+			</h:selectOneMenu>
+			<h:inputText id="selectdate" />
+			<h:commandButton type="button" value="Select Date"
+				onclick="$(this.form.id+':calendar').component.selectDate(this.form[this.form.id+':selectdate'].value);" />
+			<h:outputText value="Select Popup Joint Point:" />
+			<h:selectOneRadio onchange="submit()"
+				value="#{calendarBean.jointPoint}"
+				valueChangeListener="#{calendarBean.selectJointPoint}">
+				<f:selectItem itemLabel="bottom-right" itemValue="bottom-right" />
+				<f:selectItem itemLabel="bottom-left" itemValue="bottom-left" />
+				<f:selectItem itemLabel="top-right" itemValue="top-right" />
+				<f:selectItem itemLabel="top-left" itemValue="top-left" />
+			</h:selectOneRadio>
+			<h:outputText value="Select Popup Direction:" />
+			<h:selectOneRadio onchange="submit()"
+				value="#{calendarBean.direction}"
+				valueChangeListener="#{calendarBean.selectDirection}">
+				<f:selectItem itemLabel="bottom-right" itemValue="bottom-right" />
+				<f:selectItem itemLabel="bottom-left" itemValue="bottom-left" />
+				<f:selectItem itemLabel="top-right" itemValue="top-right" />
+				<f:selectItem itemLabel="top-left" itemValue="top-left" />
+				<f:selectItem itemLabel="auto" itemValue="auto" />
+			</h:selectOneRadio>
+
+			<%-- 	<h:commandButton id="calendarPopup" type="button" value="popup" onclick="$(this.form.id+':calendar').component.doSwitch();"/>														
+	--%>
+		</h:panelGrid>
+
+		<h:outputText value="Current date: " />
+		<h:outputText value="#{calendarBean.currentDateAsText}" />
+		<f:verbatim>
+			<br />
+		</f:verbatim>
+		<h:outputText value="Selected date: " />
+		<h:outputText value="#{calendarBean.selectedDate}" />
+		<f:verbatim>
+			<br />
+		</f:verbatim>
+
+		<h:commandButton value="Submit" />
+
+	</h:form>
+	<h:form>
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+</f:view>
+</body>
+</html>

Added: trunk/test-applications/jsp/src/main/webapp/DataFilterSlider/DFS.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/DataFilterSlider/DFS.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/DataFilterSlider/DFS.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,146 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich"%>
+<html>
+<head>
+<title></title>
+<style type="text/css">
+
+            body{
+                font: normal 11px tahoma, sans-serif;
+            }
+
+            .column{
+                width:75px;
+                font: normal 11px tahoma, sans-serif;
+                text-align:center;
+            }
+
+            .column-index{
+                width:75px;
+                font: normal 11px tahoma, sans-serif;
+                text-align:left;
+            }
+
+            .list-row3{
+                background-color:#ececec;
+            }
+
+            .list-row1{
+                background-color:#f1f6fd;
+            }
+
+            .list-row2{
+                background-color:#fff;
+            }
+
+            .list-header{
+                font: bold 11px tahoma, sans-serif;
+                text-align:center;
+            }
+
+            .list-table1{
+                border:1px solid #bed6f8;
+            }
+
+            .list-table2{
+                border:1px solid #bed6f8;
+            }
+
+            
+            
+        </style>
+
+</head>
+<body>
+<f:view>
+
+	<a4j:form id="form1" reRender="list-body" ajaxSubmit="true"
+		ignoreDupResponses="true" requestDelay="100">
+
+		<a4j:region id="stat1">
+			<a4j:outputPanel id="slider-body">
+
+				<rich:dataFilterSlider sliderListener="#{mybean.doSlide}"
+					binding="#{inventoryList.dataFilterSlider}" for="carList"
+					forValRef="inventoryList.carInventory" filterBy="getMileage"
+					manualInput="true" onSlide="true"
+					storeResults="true" trackStyleClass="track" width="400px"
+					styleClass="slider-container" startRange="10000" endRange="60000"
+					increment="10000" rangeStyleClass="range" trailer="true"
+					trailerStyleClass="trailer" handleStyleClass="handle"
+					handleValue="10000" id="slider_1">
+				</rich:dataFilterSlider>
+
+			</a4j:outputPanel>
+
+
+			<a4j:outputPanel id="list-body">
+				<f:verbatim>
+
+				</f:verbatim>
+				<h:dataTable id="carIndex" rows="10"
+					binding="#{inventoryList.carMakeIndexUIData}"
+					value="#{inventoryList.carMakeIndex}" var="category"
+					styleClass="list-table1" columnClasses="column-index"
+					rowClasses="list-row3">
+
+					<h:column>
+						<a4j:commandLink actionListener="#{inventoryList.filterCarList}"
+							reRender="carList">
+							<h:outputText value="#{category}" />
+							<f:attribute name="filterRule" value="showTable" />
+
+						</a4j:commandLink>
+					</h:column>
+
+				</h:dataTable>
+
+				<h:dataTable id="carList" rows="10"
+					value="#{inventoryList.carInventory}" var="category"
+					rowClasses="list-row1, list-row2" columnClasses="column"
+					headerClass="list-header" styleClass="list-table2">
+
+					<h:column>
+						<f:facet name="header">
+							<h:outputText styleClass="headerText" value="Make" />
+						</f:facet>
+						<h:outputText value="#{category.make}" />
+					</h:column>
+					<h:column>
+						<f:facet name="header">
+							<h:outputText styleClass="headerText" value="Model" />
+						</f:facet>
+						<h:outputText value="#{category.model}" />
+					</h:column>
+					<h:column>
+						<f:facet name="header">
+							<h:outputText styleClass="headerText"
+								value="#{inventoryList.priceColumnName}" />
+						</f:facet>
+						<h:outputText value="#{category.price}" />
+					</h:column>
+					<h:column>
+						<f:facet name="header">
+							<h:outputText styleClass="headerText"
+								value="#{inventoryList.mileageColumnName}" />
+						</f:facet>
+						<h:outputText value="#{category.mileage}" />
+					</h:column>
+
+				</h:dataTable>
+
+
+			</a4j:outputPanel>
+
+
+
+		</a4j:region>
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</a4j:form>
+
+</f:view>
+</body>
+
+</html>

Added: trunk/test-applications/jsp/src/main/webapp/DataScroller/DS.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/DataScroller/DS.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/DataScroller/DS.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,32 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich"%>
+<html>
+<head>
+<title></title>
+</head>
+<body>
+<f:view>
+	<h:form dir="DSform">
+
+		<h:dataTable id="dataTableId" value="#{dataScroller.dataTable}"
+			var="dT" cellpadding="5px" rows="5" border="1">
+			<f:facet name="header">
+				<rich:datascroller maxPages="20" scrollerListener="#{dataScroller.ScrollerListener}"/>
+			</f:facet>
+			<h:column>
+				<h:outputText value="#{dT.data0}" />
+			</h:column>
+			<h:column>
+				<h:outputText value="#{dT.data1}" />
+			</h:column>
+
+		</h:dataTable>
+		<h:commandButton action="#{dataScroller.CutArray}" value="CutArray" />
+		<h:commandButton action="#{dataScroller.RestoreArray}" value="RestoreArray" />
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+</f:view>
+</body>
+</html>

Added: trunk/test-applications/jsp/src/main/webapp/DataTable/DT.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/DataTable/DT.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/DataTable/DT.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,74 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich"%>
+<html>
+<head>
+<title></title>
+</head>
+<body>
+<f:view>
+	<h:form>
+		<rich:dataTable value="#{dataScroller.dataTable}" var="dG" id="dGid">
+			<f:facet name="header">
+				<h:outputText value="Header" />
+			</f:facet>
+			<f:facet name="footer">
+				<h:outputText value="Footer" />
+			</f:facet>
+			<rich:column>
+				<f:facet name="header">
+					<h:outputText value="ColumnHeader" />
+				</f:facet>
+				<h:outputText value="#{dG.data0}  " />
+				<h:commandButton action="submit()" value="Submit" />
+				<f:facet name="footer">
+					<h:outputText value="ColumnFooter" />
+				</f:facet>
+			</rich:column>
+			<rich:column >
+				<f:facet name="header">
+					<h:outputText value="ColumnHeader" />
+				</f:facet>
+				<h:outputText value="#{dG.data1}  " />
+				<h:commandLink action="submit()" value="Submit" />				
+				<f:facet name="footer">
+					<h:outputText value="ColumnFooter" />
+				</f:facet>
+			</rich:column>
+						
+			<rich:subTable value="#{dataTable.subTable}" var="sdG" id="sdGid">
+				<f:facet name="header">
+				<h:outputText value="SubHeader" />
+			</f:facet>
+			<f:facet name="footer">
+				<h:outputText value="SubFooter" />
+			</f:facet>
+			<rich:column>
+				<f:facet name="header">
+					<h:outputText value="SubColumnHeader" />
+				</f:facet>
+				<h:outputText value="#{sdG.data0}  " />
+				<f:facet name="footer">
+					<h:outputText value="SubColumnFooter" />
+				</f:facet>
+			</rich:column>
+			<rich:column>
+				<f:facet name="header">
+					<h:outputText value="SubColumnHeader" />
+				</f:facet>
+				<h:outputText value="#{sdG.data1}  " />
+				<f:facet name="footer">
+					<h:outputText value="SubColumnFooter" />
+				</f:facet>
+			</rich:column>
+			
+			</rich:subTable>
+
+		</rich:dataTable>
+
+`		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+</f:view>
+</body>
+</html>

Added: trunk/test-applications/jsp/src/main/webapp/DragAndDrop/DnD.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/DragAndDrop/DnD.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/DragAndDrop/DnD.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,258 @@
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich"%>
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<html>
+<head>
+<title></title>
+<style type="text/css">
+			.dropzoneDecoration {
+				width: 100px; height: 100px; border: 2px dotted navy;
+			}
+			
+			.accept {
+				border: 3px dotted green;
+				padding: 10px;
+			}
+
+			.reject {
+				border: 3px dashed red;
+				padding: 10px;
+			}
+		</style>
+</head>
+<body>
+<f:view>
+	<h:form id="form">
+		
+		<h:panelGroup id="dragValueText">
+			<h:outputText value="#{bean.dragValue}" />
+		</h:panelGroup>
+
+		<h:panelGrid columns="3">
+			<h:dataTable var="type" value="#{bean.types}">
+				<h:column>
+					<h:panelGrid styleClass="dropzoneDecoration" id="drop1">
+						<h:outputText value="#{type} - drop" />
+
+						<rich:dropSupport reRender="dragValueText"
+							action="#{bean.dropAction}" acceptedTypes="#{type}"
+							dropListener="#{bean.processDrop}" dropValue="#{type} - value">
+							<a4j:actionparam value="#{type} - test drop param"
+								assignTo="#{bean.testParam}" />
+						</rich:dropSupport>
+					</h:panelGrid>
+				</h:column>
+			</h:dataTable>
+
+			<h:dataTable var="type" value="#{bean.types}">
+				<h:column>
+					<h:panelGrid styleClass="dropzoneDecoration" id="drag1">
+						<h:outputText value="#{type} - drag" />
+						<rich:dragSupport dragType="#{type}" dragValue="#{type} - value"
+							action="#{bean.dragAction}" dragListener="#{bean.processDrag}">
+							<a4j:actionparam value="#{type} - test drag param"
+								assignTo="#{bean.testParam}" />
+						</rich:dragSupport>
+
+					</h:panelGrid>
+				</h:column>
+			</h:dataTable>
+
+			<h:dataTable var="type" value="#{bean.types}">
+				<h:column>
+					<h:panelGrid styleClass="dropzoneDecoration" id="drop2">
+						<h:outputText value="#{type} - drop" />
+
+						<rich:dropSupport reRender="dragValueText"
+							action="#{bean.dropAction}" acceptedTypes="#{type}"
+							dropListener="#{bean.processDrop}" dropValue="#{type} - value">
+						</rich:dropSupport>
+					</h:panelGrid>
+				</h:column>
+			</h:dataTable>
+		</h:panelGrid>
+
+		<rich:dragIndicator id="indicator" acceptClass="accept"
+			rejectClass="reject">
+			<f:facet name="single">
+				<f:verbatim>
+							{marker} <b>{testDrag}</b> {label}
+						</f:verbatim>
+			</f:facet>
+
+			<rich:dndParam name="accept" value="ACCEPT:" />
+
+			<rich:dndParam name="reject">
+				<f:verbatim>
+					<i style="text-decoration: line-through;">REJECT:</i>
+				</f:verbatim>
+			</rich:dndParam>
+		</rich:dragIndicator>
+
+		<h:panelGrid columns="1" style="position: relative; left: 140px;">
+			<h:panelGrid columns="1"
+				style="position: absolute; top: 30px; left: 300px;">
+				<rich:dragIndicator id="defaultIndicator">
+				</rich:dragIndicator>
+			</h:panelGrid>
+		</h:panelGrid>
+
+		<h:panelGrid columns="4" cellspacing="20">
+			<h:panelGrid styleClass="dropzoneDecoration" id="grid1">
+				<f:verbatim>
+							Accepts file & folder... Customizes
+						</f:verbatim>
+
+				<rich:dropSupport id="zone1"
+					ondrop="var zone = $('form:grid1'); zone.style.borderColor= 'red'; setTimeout( function() { this.style.borderColor= 'navy'; }.bind(zone), 300);"
+					acceptedTypes="file, folder" typeMapping="{file: testDrop}">
+					<rich:dndParam name="testDrop">
+						<h:graphicImage height="16" width="16"
+							value="/pics/file-manager.png" />
+					</rich:dndParam>
+
+				</rich:dropSupport>
+			</h:panelGrid>
+
+
+			<h:panelGrid styleClass="dropzoneDecoration" id="grid2">
+				<f:verbatim>
+							Accepts none
+						</f:verbatim>
+
+				<rich:dropSupport>
+				</rich:dropSupport>
+			</h:panelGrid>
+
+			<h:panelGrid styleClass="dropzoneDecoration" id="grid3">
+				<f:verbatim>
+							Accepts none... Customizes
+						</f:verbatim>
+
+				<rich:dropSupport typeMapping="{file: testDrop}">
+					<rich:dndParam name="testDrop">
+						<h:graphicImage height="16" width="16"
+							value="/pics/file-manager-reject.png" />
+					</rich:dndParam>
+
+				</rich:dropSupport>
+			</h:panelGrid>
+
+			<h:panelGrid styleClass="dropzoneDecoration" id="grid4">
+				<f:verbatim>
+							Accepts file & folder
+						</f:verbatim>
+				<rich:dropSupport acceptedTypes="file, folder">
+					<rich:dndParam name="testDrop" value="testDropValue" />
+
+				</rich:dropSupport>
+			</h:panelGrid>
+
+			<h:panelGrid id="grid5">
+				<rich:dragSupport dragType="file">
+					<rich:dndParam name="label" value="Label" />
+					<rich:dndParam name="testDrag" value="testDragValue" />
+
+				</rich:dragSupport>
+				<f:verbatim>File Draggable - no indicator</f:verbatim>
+			</h:panelGrid>
+
+			<h:panelGrid id="grid6">
+				<rich:dragSupport dragType="file" dragIndicator="indicator">
+					<rich:dndParam name="label" value="Label" />
+					<rich:dndParam name="testDrag" value="testDragValue" />
+
+				</rich:dragSupport>
+				<f:verbatim>File Draggable with indicator</f:verbatim>
+			</h:panelGrid>
+
+			<h:panelGrid id="grid7">
+				<rich:dragSupport dragType="folder" dragIndicator="indicator">
+					<rich:dndParam name="label" value="Label" />
+					<rich:dndParam name="testDrag" value="testDragValue for Folder" />
+
+				</rich:dragSupport>
+				<f:verbatim>Folder Draggable with indicator</f:verbatim>
+			</h:panelGrid>
+
+			<h:outputText />
+
+			<h:panelGrid id="grid8">
+				<rich:dragSupport dragType="folder">
+					<rich:dndParam name="label" value="Label" />
+					<rich:dndParam name="testDrag" value="testDragValue for Folder" />
+
+				</rich:dragSupport>
+				<f:verbatim>Folder Draggable - no indicator</f:verbatim>
+			</h:panelGrid>
+
+			<h:panelGrid id="grid9">
+				<rich:dragSupport dragType="file" dragIndicator="defaultIndicator">
+					<rich:dndParam name="testDrag" type="drop" value="testDragValue" />
+
+					<rich:dndParam name="marker" value="testMarkerValue" />
+					<rich:dndParam name="label" value="testDragValue" />
+
+				</rich:dragSupport>
+				<f:verbatim>File Draggable with defaultIndicator</f:verbatim>
+			</h:panelGrid>
+
+			<h:panelGrid id="grid10">
+				<rich:dragSupport dragType="folder" dragIndicator="defaultIndicator">
+					<rich:dndParam name="label" value="testDragValue for Folder" />
+
+				</rich:dragSupport>
+				<f:verbatim>Folder Draggable with defaultIndicator</f:verbatim>
+			</h:panelGrid>
+
+			<h:outputText />
+
+		</h:panelGrid>
+
+		<h:panelGrid id="renderedId">
+			<rich:dragSupport dragType="file" dragIndicator="defaultIndicator">
+				<rich:dndParam name="marker" value="testMarkerValue" />
+				<rich:dndParam name="label" value="testDragValue" />
+			</rich:dragSupport>
+
+			<h:graphicImage id="dragImage" value="/pics/file-manager.png"
+				width="48" />
+			<f:verbatim>
+						dragSupport
+					</f:verbatim>
+		</h:panelGrid>
+
+		<h:panelGroup id="group">
+			<f:verbatim>
+					PanelGroup					
+					</f:verbatim>
+			<rich:dropSupport acceptedTypes="file"
+				dropListener="#{bean.processDrop}" />
+		</h:panelGroup>
+
+		<h:panelGrid id="renderedIdII" style="border: 1px solid red;">
+			<rich:dropSupport acceptedTypes="file"
+				dropListener="#{bean.processDrop}" />
+			<f:verbatim>
+				<div style="margin: 40px; border: 1px solid green;">
+				dropSupport</div>
+			</f:verbatim>
+		</h:panelGrid>
+
+		<a4j:status startText="...request..." stopText="stop" />
+		<a4j:outputPanel ajaxRendered="true">
+			<h:messages />
+		</a4j:outputPanel>
+
+		<h:outputText>
+			<rich:dropSupport acceptedTypes="file" />
+		</h:outputText>
+
+		<h:outputText>
+			<rich:dragSupport dragType="file" />
+		</h:outputText>
+		<h:commandLink value="Back" action="main"></h:commandLink>	</h:form>
+</f:view>
+</body>
+</html>

Added: trunk/test-applications/jsp/src/main/webapp/DragAndDrop/DragAndDrop.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/DragAndDrop/DragAndDrop.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/DragAndDrop/DragAndDrop.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,190 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich"%>
+<html>
+<head>
+<title></title>
+<style type="text/css">
+			.dropzoneDecoration {
+				width: 70px; height: 70px; border: 2px dotted navy;
+			}
+			
+			.accept {
+				border: 3px dotted green;
+				padding: 10px;
+			}
+
+			.reject {
+				border: 3px dashed red;
+				padding: 10px;
+			}
+		</style>
+</head>
+<body>
+<f:view>
+	<h:form id="form">
+		<h:panelGroup id="dragValueText">
+			<h:outputText value="#{dndBean.dragValue}" />
+		</h:panelGroup>
+
+		<h:panelGrid columns="2">
+			<h:dataTable var="type" value="#{dndBean.types}">
+				<h:column>
+					<h:panelGrid styleClass="dropzoneDecoration" id="drag1">
+						<h:outputText value="#{type} - drag" />
+						<rich:dragSupport dragType="#{type}" dragValue="#{type} - value" action="#{dndBean.dragAction}" dragListener="#{dndBean.processDrag}">
+						</rich:dragSupport>
+					</h:panelGrid>
+				</h:column>
+			</h:dataTable>
+
+			<h:dataTable var="type" value="#{dndBean.types}">
+				<h:column>
+					<h:panelGrid styleClass="dropzoneDecoration" id="drop2">
+						<h:outputText value="#{type} - drop" />
+						<rich:dropSupport reRender="dragValueText" action="#{dndBean.dropAction}" acceptedTypes="#{type}" dropListener="#{dndBean.processDrop}"
+							dropValue="#{type} - value">
+						</rich:dropSupport>
+					</h:panelGrid>
+				</h:column>
+			</h:dataTable>
+		</h:panelGrid>
+
+		<rich:dragIndicator id="indicator" acceptClass="accept" rejectClass="reject">
+			<f:facet name="single">
+				<f:verbatim>{marker} <b>{testDrag}</b> {label}</f:verbatim>
+			</f:facet>
+			<rich:dndParam name="accept" value="ACCEPT:" />
+			<rich:dndParam name="reject">
+				<f:verbatim>
+					<i style="text-decoration: line-through;">REJECT:</i>
+				</f:verbatim>
+			</rich:dndParam>
+		</rich:dragIndicator>
+
+		<rich:dragIndicator id="dIndicator" acceptClass="defaultIndicator" rejectClass="reject">
+			<f:facet name="single">
+				<f:verbatim>{marker} <b>{testDrag}</b> {label}</f:verbatim>
+			</f:facet>
+			<rich:dndParam name="accept" value="ACCEPT:" />
+			<rich:dndParam name="reject">
+				<f:verbatim>
+					<i style="text-decoration: line-through;">REJECT:</i>
+				</f:verbatim>
+			</rich:dndParam>
+		</rich:dragIndicator>
+
+		<h:panelGrid columns="1" style="position: relative; left: 140px;">
+			<h:panelGrid columns="1" style="position: absolute; top: 30px; left: 300px;">
+				<rich:dragIndicator id="defaultIndicator">
+				</rich:dragIndicator>
+			</h:panelGrid>
+		</h:panelGrid>
+
+		<h:panelGrid columns="4" cellspacing="20">
+			<h:panelGrid styleClass="dropzoneDecoration" id="grid1">
+				<f:verbatim>Accepts file and folder... Customizes</f:verbatim>
+				<rich:dropSupport id="zone1"
+					ondrop="var zone = $('form:grid1'); zone.style.borderColor= 'red'; setTimeout( function() { this.style.borderColor= 'navy'; }.bind(zone), 300);"
+					acceptedTypes="file, folder" typeMapping="{file: testDrop}">
+					<rich:dndParam name="testDrop">
+						<h:graphicImage height="16" width="16" value="#{icon.iconFileManager}" />
+					</rich:dndParam>
+				</rich:dropSupport>
+			</h:panelGrid>
+
+			<h:panelGrid styleClass="dropzoneDecoration" id="grid2">
+				<f:verbatim>Accepts none</f:verbatim>
+				<rich:dropSupport>
+				</rich:dropSupport>
+			</h:panelGrid>
+
+			<h:panelGrid styleClass="dropzoneDecoration" id="grid3">
+				<f:verbatim>Accepts none... Customizes</f:verbatim>
+				<rich:dropSupport typeMapping="{file: testDrop}">
+					<rich:dndParam name="testDrop">
+						<h:graphicImage height="16" width="16" value="#{icon.iconFileManagerReject}" />
+					</rich:dndParam>
+				</rich:dropSupport>
+			</h:panelGrid>
+
+			<h:panelGrid styleClass="dropzoneDecoration" id="grid4">
+				<f:verbatim>Accepts file and folder</f:verbatim>
+				<rich:dropSupport acceptedTypes="file, folder">
+					<rich:dndParam name="testDrop" value="testDropValue" />
+				</rich:dropSupport>
+			</h:panelGrid>
+
+			<h:panelGrid id="grid5">
+				<rich:dragSupport dragType="file">
+					<rich:dndParam name="label" value="Label" />
+					<rich:dndParam name="testDrag" value="testDragValue" />
+				</rich:dragSupport>
+				<f:verbatim>File Draggable - no indicator</f:verbatim>
+			</h:panelGrid>
+
+			<h:panelGrid id="grid6">
+				<rich:dragSupport dragType="file" dragIndicator="indicator">
+					<rich:dndParam name="label" value="Label" />
+					<rich:dndParam name="testDrag" value="testDragValue" />
+				</rich:dragSupport>
+				<f:verbatim>File Draggable with indicator</f:verbatim>
+			</h:panelGrid>
+
+			<h:panelGrid id="grid7">
+				<rich:dragSupport dragType="folder" dragIndicator="indicator">
+					<rich:dndParam name="label" value="Label" />
+					<rich:dndParam name="testDrag" value="testDragValue for Folder" />
+				</rich:dragSupport>
+				<f:verbatim>Folder Draggable with indicator</f:verbatim>
+			</h:panelGrid>
+
+			<h:outputText />
+
+			<h:panelGrid id="grid8">
+				<rich:dragSupport dragType="folder">
+					<rich:dndParam name="label" value="Label" />
+					<rich:dndParam name="testDrag" value="testDragValue for Folder" />
+				</rich:dragSupport>
+				<f:verbatim>Folder Draggable - no indicator</f:verbatim>
+			</h:panelGrid>
+
+			<h:panelGrid id="grid9">
+				<rich:dragSupport dragType="file" dragIndicator="defaultIndicator">
+					<rich:dndParam name="testDrag" value="testDragValue" />
+					<rich:dndParam name="marker" value="testMarkerValue" />
+					<rich:dndParam name="label" value="testDragValue" />
+				</rich:dragSupport>
+				<f:verbatim>File Draggable with defaultIndicator</f:verbatim>
+			</h:panelGrid>
+
+			<h:panelGrid id="grid10">
+				<rich:dragSupport dragType="folder" dragIndicator="defaultIndicator">
+					<rich:dndParam name="label" value="testDragValue for Folder" />
+				</rich:dragSupport>
+				<f:verbatim>Folder Draggable with defaultIndicator</f:verbatim>
+			</h:panelGrid>
+			<h:outputText />
+		</h:panelGrid>
+
+		<h:panelGrid id="renderedId">
+			<rich:dragSupport dragType="file" dragIndicator="defaultIndicator">
+				<rich:dndParam name="marker" value="testMarkerValue" />
+				<rich:dndParam name="label" value="testDragValue" />
+			</rich:dragSupport>
+
+			<h:graphicImage id="dragImage" value="/pics/masshtaby_01.jpg" width="200px" height="200px" />
+			<f:verbatim>dragSupport</f:verbatim>
+		</h:panelGrid>
+
+		<a4j:status startText="...request..." stopText="stop" />
+
+		<a4j:outputPanel ajaxRendered="true">
+			<h:messages />
+		</a4j:outputPanel>
+
+	</h:form>
+</f:view>
+</body>
+</html>

Added: trunk/test-applications/jsp/src/main/webapp/DropDownMenu/DDMenu.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/DropDownMenu/DDMenu.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/DropDownMenu/DDMenu.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,146 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich"%>
+<html>
+<head>
+<title></title>
+</head>
+<body>
+<f:view>
+<h:form>
+	<h:panelGrid columns="3">
+		<h:panelGrid columns="2">
+			<h:outputText value="HideDelay (ms):" />
+			<h:inputText value="#{dDMenu.hideDelay}">
+				<a4j:support event="onchange" reRender="ddmId" />
+			</h:inputText>
+
+			<h:outputText value="ShowDelay (ms):" />
+			<h:inputText value="#{dDMenu.showDelay}">
+				<a4j:support event="onchange" reRender="ddmId" />
+			</h:inputText>
+
+			<h:outputText value="PopupWidth (px):" />
+			<h:inputText value="#{dDMenu.popupWidth}">
+				<a4j:support event="onchange" reRender="ddmId" />
+			</h:inputText>
+
+			<h:outputText value="horizontalOffset (px):" />
+			<h:inputText value="#{dDMenu.horizontalOffset}">
+				<a4j:support event="onchange" reRender="ddmId" />
+			</h:inputText>
+
+			<h:outputText value="verticalOffset (px):" />
+			<h:inputText value="#{dDMenu.verticalOffset}">
+				<a4j:support event="onchange" reRender="ddmId" />
+			</h:inputText>
+		
+			<h:outputText value="width" />
+
+			
+			<h:outputText value="Direction:" />
+			<h:selectOneRadio value="#{dDMenu.direction}">
+				<f:selectItem itemLabel="top-right" itemValue="top-right" />
+				<f:selectItem itemLabel="top-left" itemValue="top-left" />
+				<f:selectItem itemLabel="bottom-right" itemValue="bottom-right" />
+				<f:selectItem itemLabel="bottom-left" itemValue="bottom-left" />
+				<f:selectItem itemLabel="auto" itemValue="auto" />
+				<a4j:support event="onclick" reRender="ddmId" />
+			</h:selectOneRadio>
+
+			<h:outputText value="GroupDirection:" />
+			<h:selectOneRadio value="#{dDMenu.groupDirection}">
+				<f:selectItem itemLabel="top-right" itemValue="top-right" />
+				<f:selectItem itemLabel="top-left" itemValue="top-left" />
+				<f:selectItem itemLabel="bottom-right" itemValue="bottom-right" />
+				<f:selectItem itemLabel="bottom-left" itemValue="bottom-left" />
+				<f:selectItem itemLabel="auto" itemValue="auto" />
+				<a4j:support event="onclick" reRender="ddmId" />
+			</h:selectOneRadio>
+
+			<h:outputText value="JointPoint:" />
+			<h:selectOneRadio value="#{dDMenu.jointPoint}">
+				<f:selectItem itemLabel="top-right" itemValue="top-right" />
+				<f:selectItem itemLabel="top-left" itemValue="top-left" />
+				<f:selectItem itemLabel="bottom-right" itemValue="bottom-right" />
+				<f:selectItem itemLabel="bottom-left" itemValue="bottom-left" />
+				<f:selectItem itemLabel="auto" itemValue="auto" />
+				<a4j:support event="onclick" reRender="ddmId" />
+			</h:selectOneRadio>
+			
+			<h:outputText value="Menu appearance event:" />
+            <h:selectOneRadio value="#{dDMenu.event}" onclick="submit()">
+                <f:selectItem itemLabel="onclick" itemValue="onclick"/>
+                <f:selectItem itemLabel="onmouseover" itemValue="onmouseover"/>
+                <a4j:support event="onclick" reRender="ddmId" />
+            </h:selectOneRadio>
+
+			<h:outputText value="Rendered:" />
+			<h:selectBooleanCheckbox value="#{dDMenu.rendered}" onclick="submit()">
+				
+			</h:selectBooleanCheckbox>
+
+			<h:outputText value="Disable some items:" />
+			<h:selectBooleanCheckbox value="#{dDMenu.disabled}">
+				<a4j:support reRender="ddmId" event="onclick" />
+			</h:selectBooleanCheckbox>
+			<h:commandButton action="#{dDMenu.changeIcons}" value="ChangeIcons" />
+		</h:panelGrid>
+		
+		<rich:spacer width="300px"></rich:spacer>
+
+		<rich:panel style="width:200px; height:50px;" >
+		<rich:dropDownMenu id="ddmId" value="DropDownMenu" 
+				hideDelay="#{dDMenu.hideDelay}" direction="#{dDMenu.direction}"
+				horizontalOffset="#{dDMenu.horizontalOffset}"
+				jointPoint="#{dDMenu.jointPoint}" popupWidth="#{dDMenu.popupWidth}"
+				showDelay="#{dDMenu.showDelay}" rendered="#{dDMenu.rendered}"
+				verticalOffset="#{dDMenu.verticalOffset}" styleClass="panelpos">
+				<rich:menuItem icon="#{dDMenu.icon}">
+					<h:outputText value="Item1" />
+				</rich:menuItem>
+				<rich:menuSeparator />
+				<rich:menuItem icon="#{dDMenu.icon}" onmousedown="alert('OnMouseDown')" selectClass="mousemove">
+					<h:outputText value="OnMouseDown" />
+				</rich:menuItem>
+				<rich:menuSeparator />
+				<rich:menuItem  >
+					<h:outputText value="Item2" />
+				</rich:menuItem>
+				<rich:menuItem icon="#{dDMenu.icon}">
+					<h:outputText value="Item3" />
+				</rich:menuItem>
+				<rich:menuSeparator />
+				<rich:menuItem icon="/pics/ajax_process.gif" iconDisabled="/pics/ajax_stoped.gif" disabled="#{dDMenu.disabled}">
+					<h:outputText value="Image"></h:outputText>
+				</rich:menuItem>
+				<rich:menuItem disabled="#{dDMenu.disabled}" icon="#{dDMenu.icon}" >
+					<h:outputText value="Image:" />
+					<h:graphicImage value="/pics/ajax_process.gif" />
+				</rich:menuItem>
+				<rich:menuSeparator />
+				<rich:menuGroup value="Second level" 
+					direction="#{dDMenu.groupDirection}" disabled="#{dDMenu.disabled}" icon="#{dDMenu.icon}" iconFolder="#{dDMenu.iconFolder}">
+					<rich:menuItem icon="#{dDMenu.icon}">
+						<h:outputText value="Item3" />
+					</rich:menuItem>
+					<rich:menuItem value="Item4">
+						<select id="selectCar" name="selectCar" size="1">
+						  <option value="accord"><f:verbatim>Honda Accord</f:verbatim></option>
+						  <option value="4runner"><f:verbatim>Toyota 4Runner</f:verbatim></option>
+						  <option value="nissan-z"><f:verbatim>Nissan Z350</f:verbatim></option>
+						</select>
+					</rich:menuItem>
+					<rich:menuSeparator />
+					<rich:menuItem icon="#{dDMenu.icon}">
+						<h:outputText value="CheckBox" />
+					</rich:menuItem>
+				</rich:menuGroup>
+			</rich:dropDownMenu>
+		</rich:panel>	
+	</h:panelGrid>
+</h:form>
+</f:view>
+</body>
+</html>

Added: trunk/test-applications/jsp/src/main/webapp/Gmap/Gmap.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/Gmap/Gmap.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/Gmap/Gmap.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,96 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="http://richfaces.org/a4j" prefix="a4j"%>
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich"%>
+<html>
+<f:view>
+	<head>
+	<title></title>
+	</head>
+	<body>
+	<h:panelGrid columns="2">
+		<rich:gmap id="gm" lat="37.97" zoom="#{gmap.zoom}" gmapVar="map"
+			gmapKey="ABQIAAAAxU6W9QEhFLMNdc3ATIu-VxT2yXp_ZAY8_ufC3CFXhHIE1NvwkxRkrpOGzxH8_ud3inE9pG1845-FCA"
+			style="width:500px;height:400px" />
+
+
+		<!-- client side solution -->
+		<h:panelGroup>
+		Controls:<br />
+			<a href="javascript:void(0);"
+				onclick="map.hideControls();return false;">Remove</a>
+			<a href="javascript:void(0);"
+				onclick="map.showControls();return false;">Show</a>
+			<br />
+			<br />
+		Type:<br />
+			<a href="javascript:void(0);"
+				onclick="map.setMapType(G_NORMAL_MAP);return false;">Normal</a>
+			<a href="javascript:void(0);"
+				onclick="map.setMapType(G_SATELLITE_MAP);return false;">Satellite</a>
+			<a href="javascript:void(0);"
+				onclick="map.setMapType(G_HYBRID_MAP);return false;">Hybrid</a>
+			<br />
+			<br />
+		Zoom:<br />
+			<a href="javascript:void(0);" onclick="map.zoomIn();return false;">In</a>
+			<a href="javascript:void(0);" onclick="map.zoomOut();return false;">Out</a>
+			<br />
+			<br />
+			<a href="javascript:void(0);" onclick="showExadel();return false;">Show
+			Exadel Office</a>
+
+		</h:panelGroup>
+
+
+		<!-- client side solution -->
+		<h:form>
+
+		</h:form>
+
+	</h:panelGrid>
+
+	<a4j:outputPanel id="zoomer">
+		<script>
+		  function zoomIt() {
+		   map.setZoom(#{gmap.zoom});
+		  }
+		</script>
+	</a4j:outputPanel>
+
+	<a4j:outputPanel>
+		<script>
+	   
+      function createMarker(point,html) {
+        var marker = new GMarker(point);
+        GEvent.addListener(marker, "click", function() {
+          marker.openInfoWindowHtml(html);
+        });
+        return marker;
+      }
+
+	   
+	   
+	   function showExadel() {
+
+	    var point = new  GLatLng(37.9721046, -122.0424842834);
+	    map.setCenter(point);
+      	var marker = createMarker(point,'Go to the <a target="_blank" href="http://www.exadel.com">Exadle Web Site</a>');
+		map.setZoom(16);
+		map.addOverlay(marker);
+	   
+	   }
+	   
+	    function setCenter(lag, lat, zoom) {
+
+	       map.setCenter(new GLatLng(lag, lat), zoom);
+	       var ulp = new GPoint(lag,lat);
+      var ul = G_NORMAL_MAP.getProjection().fromPixelToLatLng(ulp,zoom); 
+	       
+	    }
+	   </script>
+	</a4j:outputPanel>
+
+	</body>
+</f:view>
+</html>

Added: trunk/test-applications/jsp/src/main/webapp/InputNumberSlider/InputNumberSlider.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/InputNumberSlider/InputNumberSlider.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/InputNumberSlider/InputNumberSlider.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,119 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich"%>
+<html>
+<head>
+<link rel="stylesheet"
+	href="<%=request.getContextPath()%>/styles/styles.css" type="text/css" />
+</head>
+<body>
+<f:view>
+	<h:messages></h:messages>
+	<h:form> 
+	  <h:outputText value="Event:"></h:outputText>
+      <rich:inputNumberSlider minValue="0" maxValue="100" width="300px"
+      onmousedown="alert('OnMouseDown');"></rich:inputNumberSlider>
+      
+      <rich:spacer height="15px" width="300px"></rich:spacer>
+
+		<rich:inputNumberSlider id="SliderId" disabled="#{inputNumberSlider.disabled}"
+			enableManualInput="#{inputNumberSlider.enableManualInput}"
+			inputSize="#{inputNumberSlider.inputSize}"
+			maxValue="#{inputNumberSlider.maxValue}"
+			minValue="#{inputNumberSlider.minValue}"
+			rendered="#{inputNumberSlider.rendered}"
+			showBoundaryValues="#{inputNumberSlider.showBoundaryValues}"
+			step="#{inputNumberSlider.step}"
+			showInput="#{inputNumberSlider.showInput}"
+			width="#{inputNumberSlider.width}"
+			barClass="#{inputNumberSlider.barStyle}"
+			tipClass="#{inputNumberSlider.tipStyle}" 
+			inputClass="#{inputNumberSlider.inputStyle}"
+			handleClass="#{inputNumberSlider.handleStyle}"
+			styleClass="#{inputNumberSlider.tipStyle}"
+			maxlength="#{inputNumberSlider.maxlength}"></rich:inputNumberSlider>
+<%-- 
+<style type="text/css">
+	.input
+      {
+      border:3px;
+      background-color: maroon;
+      }
+      </style>
+--%>	
+
+
+		<rich:spacer height="20px"></rich:spacer>
+
+		<h:panelGrid columns="2" cellspacing="10px" border="1">
+
+			<h:outputText value="Width:"></h:outputText>
+			<h:inputText value="#{inputNumberSlider.width}">
+				<a4j:support event="onchange" reRender="SliderId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Max Value:"></h:outputText>
+			<h:inputText value="#{inputNumberSlider.maxValue}">
+				<a4j:support event="onchange" reRender="SliderId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Min Value:"></h:outputText>
+			<h:inputText value="#{inputNumberSlider.minValue}">
+				<a4j:support event="onchange" reRender="SliderId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Input Size:"></h:outputText>
+			<h:inputText value="#{inputNumberSlider.inputSize}">
+				<a4j:support event="onchange" reRender="SliderId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Input MaxLength:"></h:outputText>
+			<h:inputText value="#{inputNumberSlider.maxlength}">
+				<a4j:support event="onchange" reRender="SliderId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Step:"></h:outputText>
+			<h:inputText value="#{inputNumberSlider.step}">
+				<a4j:support event="onchange" reRender="SliderId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Disabled:"></h:outputText>
+			<h:selectBooleanCheckbox value="#{inputNumberSlider.disabled}">
+				<a4j:support event="onchange" reRender="SliderId"></a4j:support>
+			</h:selectBooleanCheckbox>
+
+			<h:outputText value="Rendered:"></h:outputText>
+			<h:selectBooleanCheckbox value="#{inputNumberSlider.rendered}"
+				onclick="submit()">
+			</h:selectBooleanCheckbox>
+
+			<h:outputText value="Manual Input:"></h:outputText>
+			<h:selectBooleanCheckbox
+				value="#{inputNumberSlider.enableManualInput}">
+				<a4j:support event="onchange" reRender="SliderId"></a4j:support>
+			</h:selectBooleanCheckbox>
+
+			<h:outputText value="Boundary Values:"></h:outputText>
+			<h:selectBooleanCheckbox
+				value="#{inputNumberSlider.showBoundaryValues}">
+				<a4j:support event="onchange" reRender="SliderId"></a4j:support>
+			</h:selectBooleanCheckbox>
+
+			<h:outputText value="Show Input:"></h:outputText>
+			<h:selectBooleanCheckbox value="#{inputNumberSlider.showInput}">
+				<a4j:support event="onchange" reRender="SliderId"></a4j:support>
+			</h:selectBooleanCheckbox>
+
+			<h:outputText value="Switch Styles" />
+			<a4j:commandButton id="slBtn" value="#{inputNumberSlider.btnLabel}" 
+			action="#{inputNumberSlider.doStyles}" reRender="SliderId,slBtn">
+			</a4j:commandButton>
+			
+		</h:panelGrid>
+	
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+</f:view>
+</body>
+</html>

Added: trunk/test-applications/jsp/src/main/webapp/InputNumberSpinner/InputNumberSpinner.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/InputNumberSpinner/InputNumberSpinner.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/InputNumberSpinner/InputNumberSpinner.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,84 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
+<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j" %>
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich" %>
+<html>
+	<head>
+		<title></title>
+	<link rel="stylesheet" href="<%=request.getContextPath()%>/styles/styles.css" type="text/css" />
+	</head>
+	<body>
+		<f:view>
+			<h:form>
+	<h:messages></h:messages>
+    <h:outputText value="Event:"></h:outputText>
+    <rich:inputNumberSpinner minValue="0" maxValue="10" onchange="alert('mouse down');"></rich:inputNumberSpinner>
+    
+    <rich:spacer height="15px"></rich:spacer>
+	<rich:inputNumberSpinner id="SpinnerID"
+		cycled="#{inputNumberSpinner.cycled}"
+		disabled="#{inputNumberSpinner.disabled}"
+		maxValue="#{inputNumberSpinner.max}"
+		minValue="#{inputNumberSpinner.min}"
+		step="#{inputNumberSpinner.step}"
+		rendered="#{inputNumberSpinner.rendered}"
+		value="#{inputNumberSpinner.value}"
+		inputClass="#{inputNumberSpinner.inputStyle}"
+		styleClass="#{inputNumberSpinner.style}"
+		enableManualInput="#{inputNumberSpinner.manualInput}" 
+		inputSize="#{inputNumberSpinner.inputSize}"></rich:inputNumberSpinner>
+	<rich:spacer height="20px"></rich:spacer>
+	
+
+	<h:panelGrid columns="2" cellpadding="10px" border="1">
+
+		<h:outputText value="Max: "></h:outputText>
+		<h:inputText value="#{inputNumberSpinner.max}">
+		<a4j:support reRender="SpinnerID" event="onchange"></a4j:support>
+		</h:inputText>
+
+		<h:outputText value="Min: "></h:outputText>
+		<h:inputText value="#{inputNumberSpinner.min}">
+		<a4j:support reRender="SpinnerID" event="onchange"></a4j:support>
+		</h:inputText>
+		
+		<h:outputText value="Step: "></h:outputText>
+		<h:inputText value="#{inputNumberSpinner.step}">
+		<a4j:support reRender="SpinnerID" event="onchange"></a4j:support>
+		</h:inputText>
+
+		<h:outputText value="Size: "></h:outputText>
+		<h:inputText value="#{inputNumberSpinner.inputSize}">
+		<a4j:support reRender="SpinnerID" event="onchange"></a4j:support>
+		</h:inputText>
+		
+		<h:outputText value="Value: "></h:outputText>
+		<h:inputText value="#{inputNumberSpinner.value}">
+		<a4j:support reRender="SpinnerID" event="onchange"></a4j:support>
+		</h:inputText>
+		
+		<h:outputText value="Cycled:"></h:outputText>
+		<h:selectBooleanCheckbox value="#{inputNumberSpinner.cycled}">
+		<a4j:support event="onclick" reRender="SpinnerID"></a4j:support>
+		</h:selectBooleanCheckbox>
+		
+		<h:outputText value="Manual Input:"></h:outputText>
+		<h:selectBooleanCheckbox value="#{inputNumberSpinner.manualInput}">
+		<a4j:support event="onclick" reRender="SpinnerID"></a4j:support>
+		</h:selectBooleanCheckbox>
+		
+		<h:outputText value="Disabled:"></h:outputText>
+		<h:selectBooleanCheckbox value="#{inputNumberSpinner.disabled}">
+		<a4j:support event="onclick" reRender="SpinnerID"></a4j:support>
+		</h:selectBooleanCheckbox>
+		
+		<h:outputText value="Rendered:"></h:outputText>
+		<h:selectBooleanCheckbox value="#{inputNumberSpinner.rendered}" onclick="submit()">
+		</h:selectBooleanCheckbox>
+		<h:outputText value="Switch Styles:" />
+		<h:commandButton action="#{inputNumberSpinner.doStyles}" value="#{inputNumberSpinner.btnLabel}" />
+	</h:panelGrid>	<h:commandLink value="Back" action="main"></h:commandLink>
+</h:form>
+		</f:view>
+	</body>	
+</html>  

Added: trunk/test-applications/jsp/src/main/webapp/META-INF/MANIFEST.MF
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/META-INF/MANIFEST.MF	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/META-INF/MANIFEST.MF	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,2 @@
+Manifest-Version: 1.0
+

Added: trunk/test-applications/jsp/src/main/webapp/ModalPanel/ModalPanel.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/ModalPanel/ModalPanel.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/ModalPanel/ModalPanel.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,80 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich"%>
+<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>
+<html>
+<head>
+<title></title>
+<link rel="stylesheet"
+	href="<%=request.getContextPath()%>/styles/styles.css" type="text/css" />
+</head>
+<body>
+<f:view>
+	<h:form id="MPform">
+
+		<rich:modalPanel id="MPid"
+		 minHeight="#{modalPanel.minHeight}" minWidth="#{modalPanel.minWidth}"
+		 height="#{modalPanel.height}" width="#{modalPanel.width}"
+		 moveable="#{modalPanel.moveable}" resizeable="#{modalPanel.resizeable}">
+
+			<f:facet name="header">
+				<h:outputText value="Heder goes here..." />
+			</f:facet>
+			<h:outputText value="This is Modal Panel example" styleClass="text1" />
+		
+			<f:verbatim>
+				<br/>
+				<br/>
+			</f:verbatim>
+		
+			<h:outputLink
+				onclick="Richfaces.hideModalPanel('MPform:MPid');return false;"
+				value="Close">
+				<f:verbatim>Close</f:verbatim>
+			</h:outputLink>
+
+		</rich:modalPanel>
+
+		<a onclick="Richfaces.showModalPanel('MPform:MPid');" href="#">Show MP</a> 
+  	
+		<rich:spacer height="20px"></rich:spacer>
+		
+		<h:panelGrid columns="2" >
+		
+		<h:outputText value="Width:" />
+		<h:inputText value="#{modalPanel.width}">
+			<a4j:support event="onchange" reRender="MPform:MPid"></a4j:support>		
+		</h:inputText>	
+		
+		<h:outputText value="Height:" />
+		<h:inputText value="#{modalPanel.height}">
+			<a4j:support event="onchange" reRender="MPform:MPid"></a4j:support>		
+		</h:inputText>	
+				
+		<h:outputText value="minWidth:" />
+		<h:inputText value="#{modalPanel.minWidth}">
+			<a4j:support event="onchange" reRender="MPform:MPid"></a4j:support>		
+		</h:inputText>	
+				
+		<h:outputText value="minHeight:" />
+		<h:inputText value="#{modalPanel.minHeight}">
+			<a4j:support event="onchange" reRender="MPform:MPid"></a4j:support>		
+		</h:inputText>			
+		
+		<h:outputText value="Resizeable:" />
+		<h:selectBooleanCheckbox value="#{modalPanel.resizeable}" >
+			<a4j:support event="onclick" reRender="MPform:MPid"></a4j:support>
+		</h:selectBooleanCheckbox>		
+				
+		<h:outputText value="Moveable:" />
+		<h:selectBooleanCheckbox value="#{modalPanel.moveable}" >
+			<a4j:support event="onclick" reRender="MPform:MPid"></a4j:support>
+		</h:selectBooleanCheckbox>			
+				
+		</h:panelGrid>
+		
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+</f:view>
+</body>
+</html>

Added: trunk/test-applications/jsp/src/main/webapp/Paint2D/Paint2D.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/Paint2D/Paint2D.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/Paint2D/Paint2D.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,93 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich"%>
+<html>
+<head>
+<title></title>
+<link rel="stylesheet" href="<%=request.getContextPath()%>/styles/styles.css" type="text/css" />
+</head>
+<body>
+<f:view>
+	<h:form>
+		<rich:paint2D id="paint2d" paint="#{paint2D.paint}" data="#{paintData}" width="#{paint2D.width}" height="#{paint2D.height}" align="#{paint2D.align}"
+			hspace="#{paint2D.hspace}" vspace="#{paint2D.vspace}" bgcolor="#{paint2D.bgcolor}" format="#{paint2D.format}" title="#{paint2D.title}"
+			styleClass="style" border="#{paint2D.border}" rendered="#{paint2D.rendered}" />
+
+		<h:panelGrid columns="2" cellpadding="5px" border="2">
+			<h:outputText value="Text"></h:outputText>
+			<h:inputText value="#{paintData.text}">
+				<a4j:support event="onkeyup" reRender="paint2d" />
+			</h:inputText>
+
+			<h:outputText value="Border: "></h:outputText>
+			<h:inputText value="#{paint2D.border}">
+				<a4j:support event="onclick" reRender="paint2d"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Width: "></h:outputText>
+			<h:inputText value="#{paint2D.width}">
+				<a4j:support event="onchange" reRender="paint2d"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Height: "></h:outputText>
+			<h:inputText value="#{paint2D.height}">
+				<a4j:support event="onchange" reRender="paint2d"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Vertical space: "></h:outputText>
+			<h:inputText value="#{paint2D.vspace}">
+				<a4j:support event="onchange" reRender="paint2d"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Horizontal space: "></h:outputText>
+			<h:inputText value="#{paint2D.hspace}">
+				<a4j:support event="onchange" reRender="paint2d"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Align:"></h:outputText>
+			<h:selectOneMenu value="#{paint2D.align}">
+				<f:selectItem itemLabel="left" itemValue="left" />
+				<f:selectItem itemLabel="middle" itemValue="middle" />
+				<f:selectItem itemLabel="right" itemValue="right" />
+				<f:selectItem itemLabel="bottom" itemValue="bottom" />
+				<f:selectItem itemLabel="top" itemValue="top" />
+				<a4j:support event="onclick" reRender="paint2d"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="Format:"></h:outputText>
+			<h:selectOneMenu value="#{paint2D.format}">
+				<f:selectItem itemLabel="jpeg" itemValue="jpeg" />
+				<f:selectItem itemLabel="gif" itemValue="gif" />
+				<f:selectItem itemLabel="png" itemValue="png" />
+				<a4j:support event="onclick" reRender="paint2d"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="Background Colour"></h:outputText>
+			<h:selectOneMenu value="#{paint2D.bgcolor}">
+				<f:selectItem itemLabel="aqua" itemValue="aqua" />
+				<f:selectItem itemLabel="blue" itemValue="blue" />
+				<f:selectItem itemLabel="fuchsia" itemValue="fuchsia" />
+				<f:selectItem itemLabel="gray" itemValue="gray" />
+				<f:selectItem itemLabel="lime" itemValue="lime" />
+				<f:selectItem itemLabel="maroon" itemValue="maroon" />
+				<f:selectItem itemLabel="purple" itemValue="purple" />
+				<f:selectItem itemLabel="red" itemValue="red" />
+				<f:selectItem itemLabel="silver" itemValue="silver" />
+				<f:selectItem itemLabel="teal" itemValue="teal" />
+				<f:selectItem itemLabel="yellow" itemValue="yellow" />
+				<f:selectItem itemLabel="white" itemValue="white" />
+				<a4j:support event="onclick" reRender="paint2d"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="Rendered"></h:outputText>
+			<h:selectBooleanCheckbox value="#{paint2D.rendered}">
+				<a4j:support event="onclick" reRender="paint2d"></a4j:support>
+			</h:selectBooleanCheckbox>
+		</h:panelGrid>
+		<h:commandLink value="Back" action="main"></h:commandLink>
+
+	</h:form>
+</f:view>
+</body>
+</html>

Added: trunk/test-applications/jsp/src/main/webapp/Panel/Panel.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/Panel/Panel.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/Panel/Panel.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,68 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
+<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j" %>
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich" %>
+<html>
+	<head>
+		<title></title>
+	</head>
+	<body>
+		<f:view>
+			<h:form>
+		<h:messages></h:messages>
+    	<h:outputText value="Panel 1, rendered: #{!panel.rendered}; Panel 2, rendered #{panel.rendered};"></h:outputText>
+   
+       	<rich:panel rendered="#{!panel.rendered}" id="p1" style="width:#{panel.width};height:#{panel.height};overflow:auto;">
+			<f:facet name="header"><h:outputText id="t1" value="#{panel.title[0]} &nbsp; (Panel 1)" /></f:facet>
+	      		
+      		<rich:panel>
+				<f:facet name="header"><h:outputText id="t2" value="#{panel.title[1]}" /></f:facet>
+	   				<h:panelGrid columns="2">
+	   					<h:outputText id="o1" value="width #{panel.title[2]}, eg. 250px"></h:outputText>
+	   					<h:inputText value="#{w}"><a4j:support event="onchange" reRender="p3"></a4j:support></h:inputText>
+	   					
+	   					<h:outputText id="o2" value="height #{panel.title[2]}, eg. 200px"></h:outputText>
+	  					<h:inputText value="#{h}"><a4j:support event="onchange" reRender="p3"></a4j:support></h:inputText>
+	   				</h:panelGrid>
+	   			
+	   			<rich:panel id="p3" style="width:#{w};height:#{h};overflow:auto;">
+	     				<f:facet name="header"><h:outputText id="t3" value="#{panel.title[2]}" /></f:facet>
+					<h:graphicImage value="/pics/asus.jpg" width="150" height="100"></h:graphicImage>	
+	   			</rich:panel>
+	      	</rich:panel>
+	   	</rich:panel>
+	      	
+		<rich:panel onmousedown="alert('OnMouseDown');" id="panelId" onclick="submit()"
+			rendered="#{panel.rendered}"
+			style="width:#{panel.width};height:#{panel.height}" >
+     	 	<f:verbatim>
+     	 		This is panel 2 example...
+     	 	</f:verbatim>
+      	</rich:panel>
+
+	  	<h:panelGrid columns="2" cellpadding="10px" >
+			<h:outputText value="Title"></h:outputText>
+			<h:inputText valueChangeListener="#{panel.makeTitle}">
+				<a4j:support event="onchange" reRender="t1,t2,t3,o1,o2"></a4j:support>
+			</h:inputText> 
+			
+			<h:outputText value="Width: "></h:outputText>
+			<h:inputText value="#{panel.width}" >
+			<a4j:support event="onchange" reRender="panelId,p1"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Height:  "></h:outputText>
+			<h:inputText value="#{panel.height}" >
+				<a4j:support event="onchange" reRender="panelId,p1"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Rendered:"></h:outputText>
+			<h:selectBooleanCheckbox value="#{panel.rendered}" onclick="submit()"></h:selectBooleanCheckbox>
+		</h:panelGrid>
+		<h:commandLink value="Sample 2" action="Sample2"></h:commandLink>
+		<br/>
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+		</f:view>
+	</body>	
+</html>  

Added: trunk/test-applications/jsp/src/main/webapp/Panel/Panel2.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/Panel/Panel2.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/Panel/Panel2.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,154 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich"%>
+<html>
+<head>
+<title></title>
+<style>
+ .panel {
+  vertical-align:top;
+ }
+ .rich-panel-header {
+  color:#F00 !important;
+ 
+ }
+ .top {
+ width:200px !important;height:100px !important;
+ }
+ .hea {
+  color:#FCC !important;
+ }
+ .bo {
+  color:#F00 !important;
+ }
+ 
+ .top2 {
+ width:200px !important;height:100px !important;
+ border:2px solid #4C9600 !important;
+ background-color:#E4FFC8 !important;
+ }
+ 
+ 
+.hea2 {
+  background-image : url() !important;
+  background-color : #4C9600 !important;
+  height:18px !important;
+  text-align:center !important;
+  vertical-align:middle !important;
+  color:#CFF !important;
+  padding:4px 0 !important;
+ }
+ 
+ .bo2 {
+  color:#4C9600;
+ }
+ .bo3 {
+  height:100px;
+  overflow:auto;
+ }
+ 
+</style>
+</head>
+<body>
+<f:view>
+
+	<h:panelGrid columnClasses="panel" border="0" columns="3">
+		<rich:panel styleClass="top">
+			<f:facet name="header">
+				<h:panelGroup>
+					<h:outputText escape="false" value="dsdsdsdsd <br />sdsd" />
+
+				</h:panelGroup>
+			</f:facet>
+			<h:outputText escape="false" value="This is <b>default</b> panel. content here" />
+
+		</rich:panel>
+
+		<rich:panel styleClass="top" headerClass="hea" bodyClass="bo">
+			<f:facet name="header">
+				<h:outputText value="Header of the Panel" />
+			</f:facet>
+			<h:outputText value="This panel contains custom headerClass and bodyClass" />
+
+		</rich:panel>
+
+		<rich:panel styleClass="top2" headerClass="hea2" bodyClass="bo2">
+			<f:facet name="header">
+				<h:outputText value="Header of the Panel" />
+			</f:facet>
+			<h:outputText value="This panel also contains custom headerClass and bodyClass. The background is not a 3D anymore." />
+
+		</rich:panel>
+
+		<h:panelGroup>
+			<h:form>
+				<rich:panel
+					onmouseover="document.getElementById(this.id+'_header').style.background='#60BA01';document.getElementById(this.id+'_body').style.background='#F4FFF8'"
+					onmouseout="document.getElementById(this.id+'_header').style.background='#4C9600';document.getElementById(this.id+'_body').style.background='#E4FFC8'"
+					style="width:200px;" headerClass="hea2" bodyClass="bo3">
+					<f:facet name="header">
+						<h:outputText value="Header of the Panel" />
+					</f:facet>
+					<h:outputText value="Base on the previous layout, but form element and javascript behaviour are added" />
+					<f:verbatim>
+						<br />
+					</f:verbatim>
+					<h:inputText />
+				</rich:panel>
+			</h:form>
+		</h:panelGroup>
+
+		<rich:panel style="width:200px;" headerClass="hea" bodyClass="bo3">
+			<f:facet name="header">
+				<h:outputText value="Scrolling Text Panel" />
+			</f:facet>
+			<f:verbatim>
+			 	Long Text Long Text Long Text
+     			Long Text Long Text Long Text
+			    Long Text Long Text Long Text
+			    Long Text Long Text Long Text
+			    Long Text Long Text Long Text
+			    Long Text Long Text Long Text
+			    Long Text Long Text Long Text
+			    Long Text Long Text Long Text
+			    Long Text Long Text Long Text
+			    Long Text Long Text Long Text
+			    Long Text Long Text Long Text
+			    Long Text Long Text Long Text
+			    Long Text Long Text Long Text
+			</f:verbatim>
+		</rich:panel>
+
+		<rich:panel styleClass="top">
+			<h:outputText value="This is a panel without the header" />
+
+		</rich:panel>
+	</h:panelGrid>
+	<rich:panel style="position: absolute; top: 116px; right: 100px; " styleClass="top">
+		<f:facet name="header">
+			<h:outputText value="Header of the Panel" />
+		</f:facet>
+		<h:outputText escape="false" value="  This is a panel with absolute position on the screen.<br />
+    Resize the browser's window for fun." />
+
+	</rich:panel>
+	</rich:panel>
+	<rich:panel style="width:#{panel.width};height:#{panel.height}">
+		<f:facet name="header">
+			<f:verbatim>
+      			Test<br />
+    	  		Test<br />
+	      		Test<br />
+			</f:verbatim>
+		</f:facet>
+		<h:form>
+			<h:outputText value="inside the form" />
+		</h:form>
+	</rich:panel>
+	<h:form>
+		<h:commandLink value="Back to Panel" action="BackP"></h:commandLink>
+	</h:form>
+</f:view>
+</body>
+</html>

Added: trunk/test-applications/jsp/src/main/webapp/PanelBar/PanelBar.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/PanelBar/PanelBar.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/PanelBar/PanelBar.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,71 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich"%>
+<html>
+<head>
+<title></title>
+<link rel="stylesheet" href="<%=request.getContextPath()%>/styles/styles.css" type="text/css" />
+</head>
+<body>
+<f:view>
+	<h:messages></h:messages>
+	<h:form>
+     <rich:panelBar id="pBId" height="#{panelBar.height}"
+			width="#{panelBar.width}" 
+			contentClass="#{panelBar.contentStyle}"
+			styleClass="#{panelBar.style}"
+			selectedPanel="pBiId4">
+			<rich:panelBarItem rendered="#{panelBar.rendered}" id="pBiId1" label="#{panelBar.label[0]}" headerClass="#{panelBar.headerStyle}">
+				<h:outputText value="Some text..."></h:outputText>
+			</rich:panelBarItem>
+
+			<rich:panelBarItem id="pBiId2" label="#{panelBar.label[1]}" headerClass="#{panelBar.headerStyle}">
+				<h:graphicImage value="/pics/masshtaby_01.jpg" width="300"
+					height="200"></h:graphicImage>
+			</rich:panelBarItem>
+
+			<rich:panelBarItem id="pBiId3" label="#{panelBar.label[2]}" headerClass="#{panelBar.headerStyle}">
+				<f:facet name="openMarker"><h:graphicImage value="/pics/ajax_process.gif"></h:graphicImage> </f:facet>
+				<f:facet name="closeMarker"><h:graphicImage value="/pics/ajax_stoped.gif"></h:graphicImage> </f:facet>
+				<h:graphicImage value="/pics/podb109_61.jpg" width="300"
+					height="200"></h:graphicImage>
+			</rich:panelBarItem>
+
+			<rich:panelBarItem id="pBiId4" label="#{panelBar.label[3]}" headerClass="#{panelBar.headerStyle}">
+				<h:outputText value="Select Panel"></h:outputText>
+			</rich:panelBarItem>
+
+		</rich:panelBar>
+
+		<rich:spacer height="20px"></rich:spacer>
+
+		<h:panelGrid columns="2" cellspacing="10px">
+			<h:outputText value="Label: "></h:outputText>
+			<h:inputText valueChangeListener="#{panelBar.makeLabels}">
+				<a4j:support event="onchange" reRender="pBId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Width: "></h:outputText>
+			<h:inputText value="#{panelBar.width}">
+				<a4j:support event="onchange" reRender="pBId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Height: "></h:outputText>
+			<h:inputText value="#{panelBar.height}">
+				<a4j:support event="onchange" reRender="pBId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Rendered"></h:outputText>
+			<h:selectBooleanCheckbox value="#{panelBar.rendered}">
+				<a4j:support event="onchange" reRender="pBId"/>
+			</h:selectBooleanCheckbox>			
+			
+			<h:outputText value="Switch Styles:" />
+			<h:commandButton action="#{panelBar.doStyles}" value="#{panelBar.btnLabel}" />
+		</h:panelGrid>
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+</f:view>
+</body>
+</html>

Added: trunk/test-applications/jsp/src/main/webapp/PanelMenu/PanelMenu.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/PanelMenu/PanelMenu.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/PanelMenu/PanelMenu.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,475 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich"%>
+<html>
+<head>
+<title></title>
+<style>
+	.sPanel
+	{
+		background: gray;
+	}
+    .body
+    {
+ 	 	background-color: pink;
+ 		border: green 3px solid;
+	  	background: gray;
+   	}
+	</style>
+</head>
+<body>
+<f:view>
+	<h:form>
+		<rich:panelMenu id="panelMenuID" disabled="#{panelMenu.disabled}" width="#{panelMenu.width}" selectedChild="thisChild"
+			expandSingle="#{panelMenu.expandSingle}" mode="#{panelMenu.mode}" value="PanelMenu" rendered="#{panelMenu.rendered}"
+			iconCollapsedGroup="#{panelMenu.icon.collapsedGroup}" iconCollapsedTopGroup="#{panelMenu.icon.collapsedTopGroup}"
+			iconDisabledGroup="#{panelMenu.icon.disabledGroup}" iconDisabledItem="#{panelMenu.icon.disabledItem}"
+			iconExpandedGroup="#{panelMenu.icon.expandedGroup}" iconExpandedTopGroup="#{panelMenu.icon.expandedTopGroup}" iconItem="#{panelMenu.icon.item}"
+			iconTopDisabledItem="#{panelMenu.icon.disabledItem}" iconTopDisableGroup="#{panelMenu.icon.disabledGroup}" iconTopItem="#{panelMenu.icon.topItem}"
+			iconGroupPosition="#{panelMenu.iconGroupPosition}" iconGroupTopPosition="#{panelMenu.iconGroupTopPosition}"
+			iconItemPosition="#{panelMenu.iconItemPosition}" iconItemTopPosition="#{panelMenu.iconItemTopPosition}" styleClass="sPanel">
+
+			<rich:panelMenuItem value="Item 1"></rich:panelMenuItem>
+			<rich:panelMenuItem disabled="true" iconDisabled="/pics/ajax_stoped.gif">
+				<h:outputText value="Disabled Item" />
+			</rich:panelMenuItem>
+			<rich:panelMenuItem value="Item Image">
+				<h:graphicImage value="/pics/item.png"></h:graphicImage>
+			</rich:panelMenuItem>
+			<rich:panelMenuItem>
+				<h:outputText value="Item4" />
+			</rich:panelMenuItem>
+			<rich:panelMenuItem value="CheckBox">
+				<h:selectBooleanCheckbox value="false"></h:selectBooleanCheckbox>
+			</rich:panelMenuItem>
+			<rich:panelMenuItem>
+				<h:outputText value="CheckBox 2"></h:outputText>
+				<h:selectBooleanCheckbox value="false"></h:selectBooleanCheckbox>
+			</rich:panelMenuItem>
+			<rich:panelMenuItem value="Action" onmousedown="alert('OnMouseDown');"></rich:panelMenuItem>
+
+			<rich:panelMenuGroup label="Group 1 (align)" align="#{panelMenu.align}">
+				<rich:panelMenuItem value="Item 1" disabled="true"></rich:panelMenuItem>
+				<rich:panelMenuItem value="Item 1 (action)" onmousedown="alert('OnMouseDown');"></rich:panelMenuItem>
+				<rich:panelMenuItem value="Item 2"></rich:panelMenuItem>
+
+				<rich:panelMenuGroup label="Group 1_1  (align)" align="#{panelMenu.align}">
+					<rich:panelMenuItem value="Imem 1_1">
+						<h:inputText value="text"></h:inputText>
+					</rich:panelMenuItem>
+
+					<rich:panelMenuItem value="Item 1_2"></rich:panelMenuItem>
+
+					<rich:panelMenuGroup label="Group 1_1_1  (align)" align="#{panelMenu.align}">
+						<rich:panelMenuItem value="Item 1 (action)" onmousedown="alert('OnMouseDown');"></rich:panelMenuItem>
+						<rich:panelMenuItem value="Item 2"></rich:panelMenuItem>
+					</rich:panelMenuGroup>
+
+					<rich:panelMenuGroup label="Group 1_1_2">
+						<rich:panelMenuItem value="Item 1"></rich:panelMenuItem>
+						<rich:panelMenuItem value="Item 2"></rich:panelMenuItem>
+						<rich:panelMenuItem value="Item 3"></rich:panelMenuItem>
+						<rich:panelMenuItem value="Item 4"></rich:panelMenuItem>
+					</rich:panelMenuGroup>
+				</rich:panelMenuGroup>
+
+				<rich:panelMenuGroup label="Group 1_2 (disabled, action)" disabled="true" onmousedown="alert('Disabled');">
+					<rich:panelMenuItem value="Item 1_2_1"></rich:panelMenuItem>
+				</rich:panelMenuGroup>
+
+				<rich:panelMenuGroup label="Group 1_3">
+					<rich:panelMenuItem value="Item 1_3_1"></rich:panelMenuItem>
+					<rich:panelMenuItem value="Item 1_3_1"></rich:panelMenuItem>
+
+					<rich:panelMenuGroup label="Group disabled" disabled="true">
+					</rich:panelMenuGroup>
+				</rich:panelMenuGroup>
+
+			</rich:panelMenuGroup>
+
+			<rich:panelMenuGroup label="Group 2 (mode 2)" mode="#{panelMenu.mode2}">
+				<rich:panelMenuItem value="Item 2_1"></rich:panelMenuItem>
+
+				<rich:panelMenuGroup label="Group 2_2 (mode 2)" mode="#{panelMenu.mode2}">
+					<rich:panelMenuItem value="Item 1"></rich:panelMenuItem>
+					<rich:panelMenuItem value="Item 2"></rich:panelMenuItem>
+				</rich:panelMenuGroup>
+
+				<rich:panelMenuItem value="Item 1"></rich:panelMenuItem>
+				<rich:panelMenuItem value="Item 2"></rich:panelMenuItem>
+			</rich:panelMenuGroup>
+
+			<rich:panelMenuGroup label="Group 3 (mode 2)" mode="#{panelMenu.mode2}">
+				<rich:panelMenuItem value="Item 3_1">
+					<f:verbatim>
+						<br />
+						text1 <br />
+						text2 <br />
+						text3 
+					</f:verbatim>	
+				</rich:panelMenuItem>
+				<rich:panelMenuItem value="Item 3_2">
+					<h:graphicImage value="/pics/benq.jpg" width="150px" height="100px"></h:graphicImage>
+				</rich:panelMenuItem>
+				<rich:panelMenuItem value="Item 3_3"></rich:panelMenuItem>
+			</rich:panelMenuGroup>
+		</rich:panelMenu>
+
+		<f:verbatim>
+			<br />
+			<br />
+		</f:verbatim>
+
+		<h:outputText id="info"
+			value="Expand Mode: #{panelMenu.mode}, Disabled: #{!panelMenu.disabled}, Align: #{panelMenu.align}, Tab Index: #{panelMenu.tabIndex}"></h:outputText>
+		<!-- triangleUp triangle triangleDown disc chevron chevronUp chevronDown grid -->
+		<f:verbatim>
+			<br />
+		</f:verbatim>
+
+		<rich:panelMenu id="panelMenuID2" expandMode="#{panelMenu.mode}" disabled="#{!panelMenu.disabled}" width="#{panelMenu.width}"
+			selectedChild="thisChild" styleClass="body">
+			<rich:panelMenuGroup label="Group 1 (tabIdex, my Image)" tabindex="#{panelMenu.tabIndex}" align="#{panelMenu.align}">
+				<rich:panelMenuGroup label="Group 1_1 (tabIndex)" tabindex="#{panelMenu.tabIndex}">
+					<rich:panelMenuGroup label="Group 1_1_1 (tabIndex)" tabindex="#{panelMenu.tabIndex}">
+						<rich:panelMenuItem value="Item 1"></rich:panelMenuItem>
+						<rich:panelMenuItem value="Item 2"></rich:panelMenuItem>
+					</rich:panelMenuGroup>
+				</rich:panelMenuGroup>
+
+				<rich:panelMenuGroup label="Group 1_2 (tabIndex)" tabindex="#{panelMenu.tabIndex}">
+					<rich:panelMenuGroup label="Group 1_2_1 (tabIndex)" tabindex="#{panelMenu.tabIndex}">
+						<rich:panelMenuItem value="Item (icon)" icon="#{icon.iconItem}"></rich:panelMenuItem>
+						<rich:panelMenuItem value="Item (iconDisabled)" iconDisabled="#{icon.iconHeader}"></rich:panelMenuItem>
+						<rich:panelMenuItem value="Item (icon)" disabled="true" icon="#{icon.iconItem}"></rich:panelMenuItem>
+						<rich:panelMenuItem value="Item (iconDisabled)" disabled="true" iconDisabled="#{icon.iconItem}"></rich:panelMenuItem>
+					</rich:panelMenuGroup>
+					<rich:panelMenuItem value="Item (icon)" icon="#{icon.iconItem}"></rich:panelMenuItem>
+					<rich:panelMenuItem value="Item (icon)" icon="#{icon.iconItem}"></rich:panelMenuItem>
+					<rich:panelMenuItem value="Item "></rich:panelMenuItem>
+				</rich:panelMenuGroup>
+
+				<rich:panelMenuGroup label="Group 1_3" align="#{panelMenu.align}" iconCollapsed="#{icon.iconCollapse}" iconExpanded="#{icon.iconExpand}"
+					iconDisabled="#{icon.disabled}">
+					<rich:panelMenuItem value="Item 1"></rich:panelMenuItem>
+					<rich:panelMenuItem value="Item 2"></rich:panelMenuItem>
+					<rich:panelMenuItem value="Item 3"></rich:panelMenuItem>
+				</rich:panelMenuGroup>
+
+				<!-- triangleUp triangle triangleDown disc chevron chevronUp chevronDown grid -->
+				<rich:panelMenuItem value="Item (disc)" icon="disc"></rich:panelMenuItem>
+				<rich:panelMenuItem value="Item (grid)" icon="grid"></rich:panelMenuItem>
+				<rich:panelMenuGroup label="Group" iconCollapsed="triangleDown" iconExpanded="triangleUp" iconDisabled="triangle">
+					<rich:panelMenuGroup label="Group" iconCollapsed="chevronDown" iconExpanded="chevronUp" iconDisabled="chevron">
+						<rich:panelMenuItem value="Item (disc)" icon="disc"></rich:panelMenuItem>
+						<rich:panelMenuItem value="Item (grid)" iconDisabled="grid"></rich:panelMenuItem>
+						<rich:panelMenuItem value="Item (grid)" icon="grid"></rich:panelMenuItem>
+						<rich:panelMenuItem value="Item (disc)" iconDisabled="disc"></rich:panelMenuItem>
+					</rich:panelMenuGroup>
+					<rich:panelMenuItem value="Item (icon)" icon="#{icon.iconItem}"></rich:panelMenuItem>
+					<rich:panelMenuItem value="Item (icon)" icon="#{icon.iconItem}"></rich:panelMenuItem>
+					<rich:panelMenuItem value="Item "></rich:panelMenuItem>
+				</rich:panelMenuGroup>
+
+				<rich:panelMenuGroup label="Group 1_3" iconCollapsed="chevronDown" iconExpanded="chevronUp" iconDisabled="chevron">
+					<rich:panelMenuItem value="Item 1"></rich:panelMenuItem>
+					<rich:panelMenuItem value="Item 2"></rich:panelMenuItem>
+					<rich:panelMenuItem value="Item 3"></rich:panelMenuItem>
+				</rich:panelMenuGroup>
+			</rich:panelMenuGroup>
+		</rich:panelMenu>
+		<f:verbatim>
+			<br />
+			<br />
+		</f:verbatim>
+
+		<h:panelGrid columns="2">
+
+			<h:outputText value="Width"></h:outputText>
+			<h:inputText value="#{panelMenu.width}">
+				<a4j:support event="onchange" reRender="panelMenuID,panelMenuID2,info"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Tab Index"></h:outputText>
+			<h:inputText value="#{panelMenu.tabIndex}">
+				<a4j:support event="onchange" reRender="panelMenuID,panelMenuID2,info"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Expand Single"></h:outputText>
+			<h:selectBooleanCheckbox value="#{panelMenu.expandSingle}">
+				<a4j:support event="onchange" reRender="panelMenuID"></a4j:support>
+			</h:selectBooleanCheckbox>
+
+			<h:outputText value="Mode"></h:outputText>
+			<h:selectOneRadio value="#{panelMenu.mode}" id="Mode1ID" onchange="submit();">
+				<f:selectItem itemLabel="none" itemValue="none" />
+				<f:selectItem itemLabel="ajax" itemValue="ajax" />
+				<f:selectItem itemLabel="server" itemValue="server" />
+				<a4j:support event="onclick" reRender="panelMenuID,Mode2ID"></a4j:support>
+			</h:selectOneRadio>
+
+			<h:outputText value="Mode 2"></h:outputText>
+			<h:selectOneRadio value="#{panelMenu.mode2}" id="Mode2ID" onchange="submit();">
+				<f:selectItem itemLabel="none" itemValue="none" />
+				<f:selectItem itemLabel="ajax" itemValue="ajax" />
+				<f:selectItem itemLabel="server" itemValue="server" />
+				<a4j:support event="onclick" reRender="panelMenuID,Mode1ID"></a4j:support>
+			</h:selectOneRadio>
+
+			<h:outputText value="Expand mode"></h:outputText>
+			<h:selectBooleanCheckbox value="#{panelMenu.expandMode}"></h:selectBooleanCheckbox>
+
+			<h:outputText value="Align:"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.align}">
+				<f:selectItem itemLabel="left" itemValue="left" />
+				<f:selectItem itemLabel="middle" itemValue="middle" />
+				<f:selectItem itemLabel="right" itemValue="right" />
+				<f:selectItem itemLabel="bottom" itemValue="bottom" />
+				<f:selectItem itemLabel="top" itemValue="top" />
+				<a4j:support event="onclick" reRender="panelMenuID,panelMenuID2,info"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="Disabled"></h:outputText>
+			<h:selectBooleanCheckbox value="#{panelMenu.disabled}">
+				<a4j:support event="onchange" reRender="panelMenuID,panelMenuID2,info"></a4j:support>
+			</h:selectBooleanCheckbox>
+
+			<h:outputText value="Rendered"></h:outputText>
+			<h:selectBooleanCheckbox value="#{panelMenu.rendered}" onchange="submit();"></h:selectBooleanCheckbox>
+		</h:panelGrid>
+
+		<h:panelGrid columns="4">
+			<h:outputText value="Icon"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.icon}" onchange="submit();">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process" itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped" itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager" itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject" itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item" itemValue="#{icon.iconItem}" />
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Item"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.item}" onchange="submit();">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process" itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped" itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager" itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject" itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item " itemValue="#{icon.iconItem}" />
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Disabled"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.disabled}">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process" itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped" itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager" itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject" itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item" itemValue="#{icon.iconItem}" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Disabled Item"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.disabledItem}">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process" itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped" itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager" itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject" itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item" itemValue="#{icon.iconItem}" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Top Item"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.topItem}">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process" itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped" itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager" itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject" itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item" itemValue="#{icon.iconItem}" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Top Disabled Item"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.topDisabledItem}">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process" itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped" itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager" itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject" itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item" itemValue="#{icon.iconItem}" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Expanded Group"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.expandedGroup}">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process" itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped" itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager" itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject" itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item" itemValue="#{icon.iconItem}" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon CollapsedGroup"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.collapsedGroup}">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process" itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped" itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager" itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject" itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item" itemValue="#{icon.iconItem}" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Disabled Group"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.disabledGroup}">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process" itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped" itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager" itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject" itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item" itemValue="#{icon.iconItem}" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Expanded Top Group"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.expandedTopGroup}">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process" itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped" itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager" itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject" itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item" itemValue="#{icon.iconItem}" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Collapsed Top Group"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.collapsedTopGroup}">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process" itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped" itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager" itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject" itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item" itemValue="#{icon.iconItem}" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Top Disable Group"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.topDisableGroup}">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process" itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped" itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager" itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject" itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item" itemValue="#{icon.iconItem}" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Expanded"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.expanded}">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process" itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped" itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager" itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject" itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item" itemValue="#{icon.iconItem}" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Collapsed"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.icon.collapsed}">
+				<f:selectItem itemLabel="none" itemValue="#{icon.none}" />
+				<f:selectItem itemLabel="Ajax Process" itemValue="#{icon.iconAjaxProcess}" />
+				<f:selectItem itemLabel="Ajax Stoped" itemValue="#{icon.iconAjaxStoped}" />
+				<f:selectItem itemLabel="Collapse" itemValue="#{icon.iconCollapse}" />
+				<f:selectItem itemLabel="Expand" itemValue="#{icon.iconExpand}" />
+				<f:selectItem itemLabel="File Manager" itemValue="#{icon.iconFileManager}" />
+				<f:selectItem itemLabel="File Manager Reject" itemValue="#{icon.iconFileManagerReject}" />
+				<f:selectItem itemLabel="Header" itemValue="#{icon.iconHeader}" />
+				<f:selectItem itemLabel="Item" itemValue="#{icon.iconItem}" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+		</h:panelGrid>
+		<br />
+		<h:panelGrid columns="4">
+			<h:outputText value="icon Group Position"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.iconGroupPosition}">
+				<f:selectItem itemLabel="left" itemValue="left" />
+				<f:selectItem itemLabel="right" itemValue="right" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Group Top Position"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.iconGroupTopPosition}">
+				<f:selectItem itemLabel="left" itemValue="left" />
+				<f:selectItem itemLabel="right" itemValue="right" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Item Position"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.iconItemPosition}">
+				<f:selectItem itemLabel="left" itemValue="left" />
+				<f:selectItem itemLabel="right" itemValue="right" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="icon Item Top Position"></h:outputText>
+			<h:selectOneMenu value="#{panelMenu.iconItemTopPosition}">
+				<f:selectItem itemLabel="left" itemValue="left" />
+				<f:selectItem itemLabel="right" itemValue="right" />
+				<a4j:support event="onclick" reRender="panelMenuID"></a4j:support>
+			</h:selectOneMenu>
+		</h:panelGrid>
+
+		<f:verbatim>
+			<br />
+		</f:verbatim>
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+</f:view>
+</body>
+</html>

Added: trunk/test-applications/jsp/src/main/webapp/Sb.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/Sb.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/Sb.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,17 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h" %>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f" %>
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich" %>
+<html>
+	<body>
+	<f:view>
+	<h:form>
+	<h:inputText id="su"></h:inputText>
+	<rich:suggestionbox width="200" height="200" for="su" suggestionAction="#{sb.autocomplete}" var="c">
+		<h:column>
+			<h:outputText value="#{c.text}"></h:outputText>
+		</h:column>
+	</rich:suggestionbox>
+	</h:form>
+	</f:view>
+	</body>	
+</html>  

Added: trunk/test-applications/jsp/src/main/webapp/Sb.xhtml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/Sb.xhtml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/Sb.xhtml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,25 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml"
+	xmlns:ui="http://java.sun.com/jsf/facelets"
+	xmlns:h="http://java.sun.com/jsf/html"
+	xmlns:f="http://java.sun.com/jsf/core"
+	xmlns:c="http://java.sun.com/jstl/core"
+	xmlns:a4j="https://ajax4jsf.dev.java.net/ajax"
+	xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+
+
+
+
+	<ui:define name="body">
+	<h:form>
+	<h:inputText id="su"></h:inputText>
+	<rich:suggestionbox width="200" height="200" for="su" suggestionAction="#{sb.autocomplete}" var="c">
+		<h:column>
+			<h:outputText value="#{c.text}"></h:outputText>
+		</h:column>
+	</rich:suggestionbox>
+	<a4j:log></a4j:log>
+	</h:form>
+	</ui:define>
+
+</html>
\ No newline at end of file

Added: trunk/test-applications/jsp/src/main/webapp/Separator/Separator.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/Separator/Separator.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/Separator/Separator.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,73 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich"%>
+<html>
+<head>
+<title></title>
+<link rel="stylesheet" href="<%=request.getContextPath()%>/styles/styles.css" type="text/css" />
+</head>
+<body>
+<f:view>
+	<h:form>
+		<h:messages></h:messages>
+		<h:outputText value="Event:"></h:outputText>
+		<rich:separator height="20px" width="300px" onmousedown="alert('mouse click')"></rich:separator>
+		
+		<h:outputText value="Some text one..." styleClass="text">
+		</h:outputText>
+
+		<rich:separator id="separatorId" rendered="#{separator.rendered}"
+			width="#{separator.width}" height="#{separator.height}"
+			title="#{separator.title}" lineType="#{separator.lineType}"
+			align="#{separator.align}" styleClass="#{separator.style}"></rich:separator>
+		<h:outputText value="Some text two..." styleClass="text"></h:outputText>
+		<rich:spacer height="20px"></rich:spacer>
+		<h:panelGrid columns="2">
+			<h:outputText value="Width (px or %): "></h:outputText>
+			<h:inputText value="#{separator.width}">
+				<a4j:support event="onchange" reRender="separatorId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Height (px or %):"></h:outputText>
+			<h:inputText value="#{separator.height}">
+				<a4j:support event="onchange" reRender="separatorId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="LineType:"></h:outputText>
+			<h:selectOneRadio value="#{separator.lineType}"
+				layout="pageDirection">
+				<f:selectItem itemLabel="beveled" itemValue="beveled" />
+				<f:selectItem itemLabel="dotted" itemValue="dotted" />
+				<f:selectItem itemLabel="dashed" itemValue="dashed" />
+				<f:selectItem itemLabel="double" itemValue="double" />
+				<f:selectItem itemLabel="solid" itemValue="solid" />
+				<a4j:support event="onclick" reRender="separatorId"></a4j:support>
+			</h:selectOneRadio>
+
+			<h:outputText value="Align:"></h:outputText>
+			<h:selectOneRadio value="#{separator.align}">
+				<f:selectItem itemLabel="left" itemValue="left" />
+				<f:selectItem itemLabel="center" itemValue="center" />
+				<f:selectItem itemLabel="right" itemValue="right" />
+				<a4j:support event="onclick" reRender="separatorId"></a4j:support>
+			</h:selectOneRadio>
+
+			<h:outputText value="Title:"></h:outputText>
+			<h:inputText value="#{separator.title}">
+				<a4j:support event="onchange" reRender="separatorId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Rendered:"></h:outputText>
+			<h:selectBooleanCheckbox value="#{separator.rendered}"
+			 	onclick="submit()"></h:selectBooleanCheckbox>
+			 	
+			<h:outputText value="Switch Styles:" />
+			<h:commandButton action="#{separator.doStyles}" value="#{separator.btnLabel}" />
+		</h:panelGrid>
+		<h:commandLink value="Back" action="main"></h:commandLink>
+		
+	</h:form>
+</f:view>
+</body>
+</html>

Added: trunk/test-applications/jsp/src/main/webapp/SimpleTogglePanel/SimpleTogglePanel.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/SimpleTogglePanel/SimpleTogglePanel.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/SimpleTogglePanel/SimpleTogglePanel.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,105 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich"%>
+<html>
+<head>
+<title></title>
+<style type="text/css">
+   	.head
+   	{
+   		background-color: aqua;
+   	}
+   	.body
+   	{
+   		background-color: pink;
+   	}
+   
+   	</style>
+<link rel="stylesheet" href="<%=request.getContextPath()%>/styles/styles.css" type="text/css" />
+</head>
+<body>
+<f:view>
+	<h:messages></h:messages>
+	<h:form>
+
+		<rich:simpleTogglePanel id="sTP" bodyClass="body" headerClass="head" label="simpleTogglePanel with some text" width="#{simpleTogglePanel.width}"
+			height="#{simpleTogglePanel.height}" switchType="#{simpleTogglePanel.switchType}" opened="false">
+			<f:facet name="closeMarker">
+				<h:outputText value="Close It" />
+			</f:facet>
+			<f:facet name="openMarker">
+				<h:outputText value="Open It" />
+			</f:facet>
+			<f:verbatim>
+   				Some text... Some text...  Some text... Some text... Some text... Some text... Some text... Some text...
+				Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text... 
+     			Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text...
+     			Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text...
+     			Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text...
+     			Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text...
+		     </f:verbatim>
+		</rich:simpleTogglePanel>
+
+		<rich:simpleTogglePanel id="sTP1" headerClass="head" label="simpleTogglePanel wiht image" width="#{simpleTogglePanel.width}"
+			height="#{simpleTogglePanel.height}" rendered="#{simpleTogglePanel.rendered}" switchType="#{simpleTogglePanel.switchType}" opened="false">
+			<h:graphicImage value="/pics/podb109_61.jpg" width="500" height="300"></h:graphicImage>
+		</rich:simpleTogglePanel>
+
+		<rich:simpleTogglePanel id="sTP2" label="Focus simpleTogglePanle" width="#{simpleTogglePanel.width}" ignoreDupResponses="true"
+			focus="#{simpleTogglePanel.focus}">
+			<f:facet name="closeMarker">
+				<h:graphicImage value="/pics/ajax_stoped.gif"></h:graphicImage>
+			</f:facet>
+			<f:facet name="openMarker">
+				<h:graphicImage value="/pics/ajax_process.gif"></h:graphicImage>
+			</f:facet>
+			<rich:simpleTogglePanel id="INsTP">
+				<h:panelGrid columns="2">
+					<h:graphicImage value="/pics/podb109_61.jpg"></h:graphicImage>
+					<h:outputText
+						value="Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text...
+			     Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text... 
+			     Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text...
+			     Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text...
+			     Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text...
+			     Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text..." />
+				</h:panelGrid>
+			</rich:simpleTogglePanel>
+		</rich:simpleTogglePanel>
+
+		<rich:spacer height="20px"></rich:spacer>
+
+		<h:panelGrid columns="2" border="1">
+			<h:outputText value="Width:">
+			</h:outputText>
+			<h:inputText value="#{simpleTogglePanel.width}">
+				<a4j:support event="onchange" reRender="sTP, sTP1"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Height:">
+			</h:outputText>
+			<h:inputText value="#{simpleTogglePanel.height}">
+				<a4j:support event="onchange" reRender="sTP, sTP1"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Switch Type:"></h:outputText>
+			<h:selectOneRadio value="#{simpleTogglePanel.switchType}">
+				<f:selectItem itemLabel="client" itemValue="client" />
+				<f:selectItem itemLabel="server" itemValue="server" />
+				<f:selectItem itemLabel="ajax" itemValue="ajax" />
+				<a4j:support event="onclick" reRender="sTP, sTP1, sTP2"></a4j:support>
+			</h:selectOneRadio>
+
+			<h:outputText value="Rendered:"></h:outputText>
+			<h:selectBooleanCheckbox value="#{simpleTogglePanel.rendered}" onclick="submit()">
+			</h:selectBooleanCheckbox>
+
+		</h:panelGrid>
+
+
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+</f:view>
+</body>
+</html>

Added: trunk/test-applications/jsp/src/main/webapp/Spacer/Spacer.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/Spacer/Spacer.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/Spacer/Spacer.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,63 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich"%>
+<html>
+<head>
+<title></title>
+<style type="text/css">
+.text
+{
+font-size:20px;
+}
+.spacer
+{
+background-color: aqua;
+}
+</style>
+</head>
+<body>
+<f:view>
+
+	<h:messages></h:messages>
+	<h:form>
+		<h:outputText value="Event:"></h:outputText>
+		<rich:spacer id="spacerIdEven" rendered="#{spacer.rendered}" style="border: 3px solid red; background: blue;" styleClass="#{spacer.style}"
+			width="#{spacer.width}" height="#{spacer.height}" onmousedown="alert('onmousedown')" title="title"></rich:spacer>
+
+		<f:verbatim>
+			<br />
+		</f:verbatim>
+
+		<h:outputText value="Some text one..." styleClass="text"></h:outputText>
+		<rich:spacer id="spacerId" width="#{spacer.width}" height="#{spacer.height}" rendered="#{spacer.rendered}" styleClass="#{spacer.style}">
+		</rich:spacer>
+		<h:outputText value="Some text two..." styleClass="text"></h:outputText>
+
+		<h:panelGrid columns="2">
+			<h:outputText value="Width (px or %):"></h:outputText>
+			<h:inputText value="#{spacer.width}">
+				<a4j:support event="onchange" reRender="spacerId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Height (px or %):"></h:outputText>
+			<h:inputText value="#{spacer.height}">
+				<a4j:support event="onchange" reRender="spacerId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Rendered:"></h:outputText>
+			<h:selectBooleanCheckbox value="#{spacer.rendered}" onclick="submit()">
+			</h:selectBooleanCheckbox>
+
+		</h:panelGrid>
+		<a4j:commandButton id="btn" action="#{spacer.doStyle}" value="#{spacer.btn}" reRender="spacerId, btn"></a4j:commandButton>
+
+		<f:verbatim>
+			<br />
+		</f:verbatim>
+
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+</f:view>
+</body>
+</html>

Added: trunk/test-applications/jsp/src/main/webapp/SuggestionBox/SuggestionBox.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/SuggestionBox/SuggestionBox.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/SuggestionBox/SuggestionBox.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,131 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich"%>
+<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>
+<html>
+<body>
+<f:view>
+	<h:form id="suggestionbox_form">
+
+		<f:verbatim>Suggestion Box will suggest you Town's names if it's started with the "a" or
+        "A" letter</f:verbatim>
+		<f:verbatim>
+			<br />
+		</f:verbatim>
+		<h:inputText id="text" />
+		<rich:suggestionbox id="suggestionBoxId" for="text"
+			zindex="#{sb.zindex}" rules="#{sb.rules}"
+			suggestionAction="#{sb.autocomplete}" var="result"
+			width="#{sb.width}" height="#{sb.height}" border="#{sb.border}"
+			cellpadding="#{sb.cellpadding}" cellspacing="#{sb.cellspacing}"
+			first="#{sb.first}" minChars="#{sb.minchars}" tokens=", ]"
+			bgcolor="#{sb.bgColor}" focus="#{sb.forcus}" title="#{result.text}"
+			summary="summary" shadowOpacity="#{sb.shadowOpacity}"
+			shadowDepth="#{sb.shadowDepth}" reRender="#{sb.reRender}"
+			selectValueClass="mousemove" >
+			<h:column>
+				<h:outputText value="#{result.text}" />
+			</h:column>
+		</rich:suggestionbox>
+		<f:verbatim>
+			<div style="position:relative; font-size:50px; z-index:2; color: navy">z-index</div>
+		</f:verbatim>
+		
+		<f:verbatim>
+			<br />
+			<br />
+		</f:verbatim>
+		<h:panelGrid columns="2" cellpadding="5px">
+
+			<h:outputText value="z-index (1 or 3)"></h:outputText>
+			<h:selectOneRadio value="#{sb.zindex}">
+				<f:selectItem itemLabel="1" itemValue="1" />
+				<f:selectItem itemLabel="3" itemValue="3" />
+				<a4j:support event="onclick" reRender="suggestionBoxId"></a4j:support>
+			</h:selectOneRadio>
+
+
+			<f:verbatim>Border</f:verbatim>
+			<h:inputText value="#{sb.border}">
+				<a4j:support event="onchange" reRender="suggestionBoxId"></a4j:support>
+			</h:inputText>
+
+			<f:verbatim>Width</f:verbatim>
+			<h:inputText value="#{sb.width}">
+				<a4j:support event="onchange" reRender="suggestionBoxId"></a4j:support>
+			</h:inputText>
+
+			<f:verbatim>Height</f:verbatim>
+			<h:inputText value="#{sb.height}">
+				<a4j:support event="onchange" reRender="suggestionBoxId"></a4j:support>
+			</h:inputText>
+
+			<f:verbatim>Cellpadding</f:verbatim>
+			<h:inputText value="#{sb.cellpadding}">
+				<a4j:support event="onchange" reRender="suggestionBoxId"></a4j:support>
+			</h:inputText>
+
+			<f:verbatim>Cellspacing</f:verbatim>
+			<h:inputText value="#{sb.cellspacing}">
+				<a4j:support event="onchange" reRender="suggestionBoxId"></a4j:support>
+			</h:inputText>
+
+			<f:verbatim>First</f:verbatim>
+			<h:inputText value="#{sb.first}">
+				<a4j:support event="onchange" reRender="suggestionBoxId"></a4j:support>
+			</h:inputText>
+
+			<f:verbatim>MinChars</f:verbatim>
+			<h:inputText value="#{sb.minchars}">
+				<a4j:support event="onchange" reRender="suggestionBoxId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Background Colour"></h:outputText>
+			<h:selectOneMenu value="#{sb.bgColor}">
+				<f:selectItem itemLabel="none" itemValue="none" />
+				<f:selectItem itemLabel="aqua" itemValue="aqua" />
+				<f:selectItem itemLabel="blue" itemValue="blue" />
+				<f:selectItem itemLabel="fuchsia" itemValue="fuchsia" />
+				<f:selectItem itemLabel="gray" itemValue="gray" />
+				<f:selectItem itemLabel="lime" itemValue="lime" />
+				<f:selectItem itemLabel="maroon" itemValue="maroon" />
+				<f:selectItem itemLabel="purple" itemValue="purple" />
+				<f:selectItem itemLabel="red" itemValue="red" />
+				<f:selectItem itemLabel="silver" itemValue="silver" />
+				<f:selectItem itemLabel="teal" itemValue="teal" />
+				<f:selectItem itemLabel="yellow" itemValue="yellow" />
+				<f:selectItem itemLabel="white" itemValue="white" />
+				<a4j:support event="onclick" reRender="suggestionBoxId"></a4j:support>
+			</h:selectOneMenu>
+
+			<h:outputText value="Shadow Opacity"></h:outputText>
+			<h:selectOneRadio value="#{sb.shadowOpacity}">
+				<f:selectItem itemLabel="1" itemValue="1" />
+				<f:selectItem itemLabel="3" itemValue="2" />
+				<f:selectItem itemLabel="5" itemValue="3" />
+				<f:selectItem itemLabel="7" itemValue="4" />
+				<f:selectItem itemLabel="9" itemValue="5" />
+				<f:selectItem itemLabel="11" itemValue="6" />
+				<f:selectItem itemLabel="13" itemValue="7" />
+				<f:selectItem itemLabel="15" itemValue="8" />
+				<a4j:support event="onclick" reRender="suggestionBoxId"></a4j:support>
+			</h:selectOneRadio>
+
+			<h:outputText value="Shadow Depth"></h:outputText>
+			<h:selectOneRadio value="#{sb.shadowDepth}">
+				<f:selectItem itemLabel="3" itemValue="3" />
+				<f:selectItem itemLabel="4" itemValue="4" />
+				<f:selectItem itemLabel="5" itemValue="5" />
+				<f:selectItem itemLabel="6" itemValue="6" />
+				<f:selectItem itemLabel="7" itemValue="6" />
+				<a4j:support event="onclick" reRender="suggestionBoxId"></a4j:support>
+			</h:selectOneRadio>
+
+			<h:outputText value="reRender"></h:outputText>
+			<h:selectBooleanCheckbox value="#{sb.reRender}"></h:selectBooleanCheckbox>
+		</h:panelGrid>
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+</f:view>
+</body>
+</html>

Added: trunk/test-applications/jsp/src/main/webapp/TabPanel/TabPanel.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/TabPanel/TabPanel.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/TabPanel/TabPanel.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,114 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich"%>
+<html>
+<head>
+<title></title>
+<style type="text/css">
+	
+</style>
+<link rel="stylesheet" href="<%=request.getContextPath()%>/styles/styles.css" type="text/css" />
+</head>
+<body>
+<f:view>
+	<h:form>
+		<rich:tabPanel id="tabPanelId" headerAlignment="#{tabPanel.headerAlignment}" width="#{tabPanel.width}" height="#{tabPanel.height}"
+			rendered="#{tabPanel.rendered}" title="#{tabPanel.title}" switchType="#{tabPanel.switchType}" headerSpacing="#{tabPanel.headerSpacing}"
+			selectedTab="#{tabPanel.selectedTab}" activeTabClass="#{tabPanel.activeTabStyle}" disabledTabClass="#{tabPanel.disabledTabStyle}"
+			inactiveTabClass="#{tabPanel.inactiveTabStyle}" contentClass="#{tabPanel.contentStyle}">
+			<rich:tab id="tab1" labelWidth="#{tabPanel.labelWidth}" label="#{tabPanel.label}">
+				<h:outputText value="This is tab panel test example" styleClass="text1"></h:outputText>
+			</rich:tab>
+			<rich:tab id="tab2" label="Tab with image" disabled="#{tabPanel.disabledTab}">
+				<f:facet name="header">
+					<h:outputText value="client switchType from facet" />
+				</f:facet>
+				<f:facet name="openMarker">
+					<h:graphicImage value="/pics/ajax_process.gif"></h:graphicImage>
+				</f:facet>
+				<f:facet name="closeMarker">
+					<h:graphicImage value="/pics/ajax_stoped.gif"></h:graphicImage>
+				</f:facet>
+				<h:graphicImage value="/pics/masshtaby_01.jpg" width="560" height="383"></h:graphicImage>
+			</rich:tab>
+			<rich:tab id="tab3" label="Tab with some text" disabled="#{tabPanel.disabledTab}">
+				<f:verbatim>
+					Some text... Some text...  Some text... Some text... Some text... Some text... Some text... Some text...
+    				Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text... 
+    				Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text...
+				   	Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text...
+				   	Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text...
+				   	Some text... Some text... Some text... Some text... Some text... Some text... Some text... Some text...
+				</f:verbatim>
+			</rich:tab>
+		</rich:tabPanel>
+		<rich:spacer height="20px"></rich:spacer>
+
+		<h:panelGrid columns="2" cellspacing="10px">
+			<h:outputText value="Width (px or %):"></h:outputText>
+			<h:inputText value="#{tabPanel.width}">
+				<a4j:support event="onchange" reRender="tabPanelId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Height (px or %):"></h:outputText>
+			<h:inputText value="#{tabPanel.height}">
+				<a4j:support event="onchange" reRender="tabPanelId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Title:"></h:outputText>
+			<h:inputText value="#{tabPanel.title}">
+				<a4j:support event="onchange" reRender="tabPanelId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="LabelWidth:"></h:outputText>
+			<h:inputText value="#{tabPanel.labelWidth}">
+				<a4j:support event="onchange" reRender="tabPanelId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="SwitchType:"></h:outputText>
+			<h:selectOneRadio value="#{tabPanel.switchType}">
+				<f:selectItem itemLabel="client" itemValue="client" />
+				<f:selectItem itemLabel="server" itemValue="server" />
+				<f:selectItem itemLabel="ajax" itemValue="ajax" />
+				<a4j:support event="onchange" reRender="tabPanelId"></a4j:support>
+			</h:selectOneRadio>
+
+			<h:outputText value="Header Alignment:"></h:outputText>
+			<h:selectOneRadio value="#{tabPanel.headerAlignment}">
+				<f:selectItem itemLabel="left" itemValue="left" />
+				<f:selectItem itemLabel="center" itemValue="center" />
+				<f:selectItem itemLabel="right" itemValue="right" />
+				<a4j:support event="onchange" reRender="tabPanelId"></a4j:support>
+			</h:selectOneRadio>
+
+			<h:outputText value="Header Spacing:"></h:outputText>
+			<h:inputText value="#{tabPanel.headerSpacing}">
+				<a4j:support event="onchange" reRender="tabPanelId"></a4j:support>
+			</h:inputText>
+
+			<h:outputText value="Selected Tab:"></h:outputText>
+			<h:selectOneRadio value="#{tabPanel.selectedTab}">
+				<f:selectItem itemLabel="1" itemValue="tab1" />
+				<f:selectItem itemLabel="2" itemValue="tab2" />
+				<f:selectItem itemLabel="3" itemValue="tab3" />
+				<a4j:support event="onchange" reRender="tabPanelId"></a4j:support>
+			</h:selectOneRadio>
+
+			<h:outputText value="Rendered"></h:outputText>
+			<h:selectBooleanCheckbox value="#{tabPanel.rendered}" onclick="submit()">
+			</h:selectBooleanCheckbox>
+
+			<h:outputText value="Disable Tab"></h:outputText>
+			<h:selectBooleanCheckbox value="#{tabPanel.disabledTab}" onclick="submit()">
+			</h:selectBooleanCheckbox>
+			<h:outputText value="Switch Styles:" />
+			<h:commandButton action="#{tabPanel.doStyles}" value="#{tabPanel.btnLabel}" />
+
+
+		</h:panelGrid>
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+</f:view>
+</body>
+</html>

Added: trunk/test-applications/jsp/src/main/webapp/TogglePanel/TogglePanel.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/TogglePanel/TogglePanel.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/TogglePanel/TogglePanel.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,177 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich"%>
+<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>
+<html>
+<head>
+<title></title>
+</head>
+<body>
+<f:view>
+	<h:messages></h:messages>
+<h:form id="tooggleTest">
+
+	<rich:togglePanel id="panel1" switchType="#{togglePanel.switchType}" initialState="asus" stateOrder="asus,blank" 
+												style="width:300px" >
+		<f:facet name="blank">
+			<rich:panel>
+				<f:facet name="header">
+					<h:panelGroup>
+						<rich:toggleControl id="toggleControl_blank" for="tooggleTest:panel1"  >
+							<h:outputText value="Expand" style="font-weight: bold;" />
+							<h:graphicImage url="/pics/collapse.gif" style="border-width: 0px;" />					
+						</rich:toggleControl>
+					</h:panelGroup>
+				</f:facet>
+			</rich:panel>			
+		</f:facet>
+						
+		<f:facet name="asus">
+			<rich:panel>
+				<f:facet name="header">
+					<h:panelGroup>
+						<rich:toggleControl id="toggleControl_panel1" for="tooggleTest:panel1">
+							<h:outputText value="Collapse" style="font-weight: bold;" />
+							<h:graphicImage url="/pics/expand.gif" style="border-width: 0px;" />					
+						</rich:toggleControl>
+					</h:panelGroup>
+				</f:facet>							
+					<h:panelGrid columns="2" border="0" style="width: 100%;background-color: white;">
+						<h:graphicImage url="/pics/asus.jpg" height="300" width="300" alt="asus.jpg"/>
+						<h:panelGroup>
+							<h:outputText style="font: 18px;font-weight: bold;" value="Asus F 3 Tc" />										
+							<f:verbatim>
+								Processor:  AMD Turion 64 X 2 - 1600 Mhz<br />
+								RAM: 1024 Mb<br />
+								HDD: 100 Gb<br />
+								Screen: 15.4 WXGA<br />
+								Video: NVIDIA GeForce Go 7300<br />
+								Drive: DVD- RW DL<br />
+							</f:verbatim>
+						</h:panelGroup>
+					</h:panelGrid>
+				</rich:panel>
+			</f:facet>						
+	</rich:togglePanel>	
+	<br /><br />
+
+	<rich:togglePanel id="panel2" switchType="#{togglePanel.switchType}" initialState="#{togglePanel.initialState}" 
+		stateOrder="#{togglePanel.stateOrder}">			
+		<f:facet name="asus">
+			<rich:panel>
+				<f:facet name="header">
+					<h:panelGroup>
+						<h:outputText value="Customizable toggle panel" style="font-weight: bold;" />
+						<rich:toggleControl id="toggleControl_panel_1" for="tooggleTest:panel2">
+							<h:outputText value="Next"></h:outputText>				
+							<h:graphicImage url="/pics/expand.gif" style="border-width: 0px;" />	
+						</rich:toggleControl>
+					</h:panelGroup>
+				</f:facet>							
+					<h:panelGrid columns="2" border="0" style="width: 100%;background-color: white;">
+						<h:graphicImage url="/pics/asus.jpg" height="300" width="300" alt="asus.jpg"/>
+						<h:panelGroup>
+							<h:outputText style="font: 18px;font-weight: bold;" value="Asus F 3 Tc" />										
+							<f:verbatim>
+								Processor:  AMD Turion 64 X 2 - 1600 Mhz<br />
+								RAM: 1024 Mb<br />
+								HDD: 100 Gb<br />
+								Screen: 15.4 WXGA<br />
+								Video: NVIDIA GeForce Go 7300<br />
+								Drive: DVD- RW DL<br />
+							</f:verbatim>
+						</h:panelGroup>
+					</h:panelGrid>
+				</rich:panel>
+			</f:facet>
+			
+		<f:facet name="benq">
+			<rich:panel>
+				<f:facet name="header">
+					<h:panelGroup>
+						<h:outputText value="Customizable toggle panel" style="font-weight: bold;" />
+						<rich:toggleControl id="toggleControl_panel_2" for="tooggleTest:panel2">
+							<h:outputText value="Next"></h:outputText>				
+							<h:graphicImage url="/pics/expand.gif" style="border-width: 0px;" />					
+						</rich:toggleControl>
+					</h:panelGroup>
+				</f:facet>							
+					<h:panelGrid columns="2" border="0" style="width: 100%;background-color: yellow;">
+						<h:graphicImage url="/pics/benq.jpg" height="300" width="300" alt="benq.jpg"/>
+						<h:panelGroup>
+							<h:outputText style="font: 18px;font-weight: bold;" value="BenQ A 52" />										
+							<f:verbatim>
+								Processor:  Core Duo T2250 (1.73GHz)<br />
+								RAM: 1024 Mb<br />
+								HDD: 100 Gb<br />
+								Screen: 15.4 WXGA<br />
+								Video: ATI Mobility Radeon X 200<br />
+								Drive: DVD- RW D<br />
+							</f:verbatim>
+						</h:panelGroup>
+					</h:panelGrid>
+				</rich:panel>
+			</f:facet>
+			
+		<f:facet name="toshiba">
+			<rich:panel>
+				<f:facet name="header">
+					<h:panelGroup>
+						<h:outputText value="Customizable toggle panel" style="font-weight: bold;" />
+						<rich:toggleControl id="toggleControl_panel_3" for="tooggleTest:panel2">
+							<h:outputText value="Next"></h:outputText>				
+							<h:graphicImage url="/pics/expand.gif" style="border-width: 0px;" />					
+						</rich:toggleControl>								
+					</h:panelGroup>
+				</f:facet>
+					<h:panelGrid columns="2" border="0" style="width: 100%;background-color: orange;">
+						<h:graphicImage url="/pics/toshiba.jpg" height="300" width="300" alt="toshiba.jpg"/>
+						<h:panelGroup>
+							<h:outputText style="font: 18px;font-weight: bold;" value="Toshiba Satellite A 100-784" />										
+							<f:verbatim>
+								Processor:  Intel Core Duo T2250 - 1.73GHz<br />
+								RAM: 1024 Mb<br />
+								HDD: 100 Gb<br />
+								Screen: 15.4 WXGA<br />
+								Video: Intel Graphics Media 950<br />
+								Drive: DVD- RW DL<br />
+							</f:verbatim>
+						</h:panelGroup>
+					</h:panelGrid>
+				</rich:panel>
+			</f:facet>					
+	</rich:togglePanel>	
+	
+	<br /><br />				
+	<rich:separator height="5px" width="500px" />
+
+	<h:panelGrid columns="2" cellpadding="5px" cellspacing="5px">
+		<h:outputText value="InitialState:"></h:outputText>
+		<h:selectOneRadio value="#{togglePanel.initialState}">
+			<f:selectItem itemLabel="Asus" itemValue="asus" />
+			<f:selectItem itemLabel="Benq" itemValue="benq" />
+			<f:selectItem itemLabel="toshiba" itemValue="toshiba" />
+			<a4j:support event="onchange" reRender="tooggleTest:panel2"></a4j:support>
+		</h:selectOneRadio>
+
+		<h:outputText value="StateOrder:"></h:outputText>
+		<h:selectOneRadio value="#{togglePanel.stateOrder}">
+			<f:selectItem itemLabel="Asus,Benq,Toshiba" itemValue="asus,benq,toshiba" />
+			<f:selectItem itemLabel="Toshiba, Asus, Benq" itemValue="toshiba,asus,benq" />
+			<a4j:support event="onchange" reRender="tooggleTest:panel2"></a4j:support>
+		</h:selectOneRadio>
+
+		<h:outputText value="switchType:"></h:outputText>
+		<h:selectOneRadio value="#{togglePanel.switchType}">
+			<f:selectItem itemLabel="client" itemValue="client" />
+			<f:selectItem itemLabel="server" itemValue="server" />
+			<f:selectItem itemLabel="ajax" itemValue="ajax" />
+			<a4j:support event="onclick" reRender="panle1,panel2"></a4j:support>
+		</h:selectOneRadio>
+	</h:panelGrid>
+	<h:commandLink value="Back" action="main"></h:commandLink>
+	<ui:debug hotkey="L"></ui:debug>
+</h:form>
+</f:view>
+</body>
+</html>

Added: trunk/test-applications/jsp/src/main/webapp/ToolBar/ToolBar.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/ToolBar/ToolBar.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/ToolBar/ToolBar.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,66 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich"%>
+<html>
+<head>
+<title></title>
+<link rel="stylesheet" href="<%=request.getContextPath()%>/styles/styles.css" type="text/css" />
+</head>
+<body>
+<f:view>
+	<h:form>
+	<rich:toolBar id="toolBarId" width="#{toolBar.width}"
+			height="#{toolBar.height}" rendered="#{toolBar.rendered}"
+			itemSeparator="#{toolBar.itemSeparator}" contentClass="#{toolBar.contentStyle}" separatorClass="#{toolBar.separatorStyle}" >
+			<h:outputText value="ToolBar" style="font-style: italic"></h:outputText>
+
+			<rich:toolBarGroup >
+				<h:outputText value="Width:"></h:outputText>
+				<h:inputText value="#{toolBar.width}">
+					<a4j:support event="onchange" reRender="toolBarId"></a4j:support>
+				</h:inputText>
+			</rich:toolBarGroup>
+
+			<rich:toolBarGroup>
+				<h:outputText value="Height:"></h:outputText>
+				<h:inputText value="#{toolBar.height}">
+					<a4j:support event="onchange" reRender="toolBarId"></a4j:support>
+				</h:inputText>
+			</rich:toolBarGroup>
+
+			<rich:toolBarGroup location="#{toolBar.location}">
+				<h:graphicImage value="/pics/ajax_process.gif"></h:graphicImage>
+			</rich:toolBarGroup>
+
+		</rich:toolBar>
+
+		<h:panelGrid columns="2">
+			<h:outputText value="Image location:"></h:outputText>
+			<h:selectOneRadio value="#{toolBar.location}">
+				<f:selectItem itemLabel="left" itemValue="left" />
+				<f:selectItem itemLabel="right" itemValue="right" />
+				<a4j:support event="onclick" reRender="toolBarId"></a4j:support>
+			</h:selectOneRadio>
+
+
+			<h:outputText value="itemSeparator:"></h:outputText>
+			<h:selectOneRadio value="#{toolBar.itemSeparator}">
+				<f:selectItem itemLabel="none" itemValue="none" />
+				<f:selectItem itemLabel="line" itemValue="line" />
+				<f:selectItem itemLabel="square" itemValue="square" />
+				<f:selectItem itemLabel="disc" itemValue="disc" />
+				<f:selectItem itemLabel="grid" itemValue="grid" />
+				<a4j:support event="onclick" reRender="toolBarId"></a4j:support>
+			</h:selectOneRadio>
+			
+			<h:outputText value="Switch Styles" />
+			<a4j:commandButton id="slBtn" value="#{toolBar.btnLabel}" 
+			action="#{toolBar.doStyles}" reRender="toolBarId,slBtn">
+			</a4j:commandButton>
+		</h:panelGrid>
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+</f:view>
+</body>
+</html>

Added: trunk/test-applications/jsp/src/main/webapp/Tooltip/Tooltip.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/Tooltip/Tooltip.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/Tooltip/Tooltip.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,148 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich"%>
+<f:view>
+	<html>
+	<head>
+	<title></title>
+	</head>
+	<body>
+	<h:form>
+		<h:outputText value="DEFAULT VALUE:"></h:outputText>
+		
+		<f:verbatim>
+			<br />
+		</f:verbatim>
+		
+		<h:graphicImage value="/pics/ajax_process.gif" width="15px"
+			height="15px">
+			<rich:toolTip value="ajax progress">
+			</rich:toolTip>
+		</h:graphicImage>
+	
+		<h:inputText value="Text" id="inp1" size="50">
+			<rich:toolTip value="toolTip for input text">
+				<f:facet name="defaultContent">
+					<f:verbatim>DEFAULT VALUE</f:verbatim>
+				</f:facet>
+			</rich:toolTip>
+		</h:inputText>
+
+		<h:selectOneListbox value="1" id="ddl">
+			<rich:toolTip value="1231231">
+				<f:facet name="defaultContent">
+					<f:verbatim>DEFAULT VALUE DropDown</f:verbatim>
+				</f:facet>
+			</rich:toolTip>
+		</h:selectOneListbox>
+
+		<f:verbatim>
+			<br />
+			<br />
+		</f:verbatim>
+
+		<h:outputText value=" Test tooltip:"></h:outputText>
+		<f:verbatim>
+			<br />
+		</f:verbatim>
+
+		<rich:panel style="width:50px; height:50px; background-color: gray">
+			<rich:toolTip id="tooltipID" value="#{tooltip.value}"
+				mode="#{tooltip.mode}" delay="#{tooltip.delay}" layout="#{tooltip.layout}" 
+				horizontalOffset="#{tooltip.horizontalOffset}"
+				verticalOffset="#{tooltip.verticalOffset}"
+				followmouse="#{tooltip.followMouse}"
+				direction="#{tooltip.direction}" style="#{tooltip.style}"
+				disabled="#{tooltip.disabled}" rendered="#{tooltip.rendered}">
+				<h:graphicImage id="pricsID" value="/pics/ajax_process.gif"></h:graphicImage>
+			</rich:toolTip>
+		</rich:panel>
+
+		<f:verbatim>
+			<br />
+		</f:verbatim>
+		<h:panelGrid columns="2">
+			<h:outputText value="Text:"></h:outputText>
+			<h:inputText value="#{tooltip.value}">
+				<a4j:support event="onchange" reRender="tooltipID" />
+			</h:inputText>
+			
+			<h:outputText value="Delay"></h:outputText>
+			<h:inputText value="#{tooltip.delay}">
+				<a4j:support event="onchange" reRender="tooltipID" />
+			</h:inputText>
+			
+			<h:outputText value="Layout:"></h:outputText>
+			<h:selectOneRadio value="#{tooltip.layout}">
+				<f:selectItem itemLabel="inline" itemValue="inline" />
+				<f:selectItem itemLabel="block" itemValue="block" />
+				<a4j:support event="onclick" reRender="tooltipID" />
+			</h:selectOneRadio>
+			
+			<h:outputText value="Mode:"></h:outputText>
+			<h:selectOneRadio value="#{tooltip.mode}">
+				<f:selectItem itemLabel="client" itemValue="client" />
+				<f:selectItem itemLabel="ajax" itemValue="ajax" />
+				<a4j:support event="onclick" reRender="tooltipID" />
+			</h:selectOneRadio>
+
+			<h:outputText value="Horizontal offset:"></h:outputText>
+			<h:inputText value="#{tooltip.horizontalOffset}">
+				<a4j:support event="onchange" reRender="tooltipID" />
+			</h:inputText>
+
+			<h:outputText value="Vertical offset:"></h:outputText>
+			<h:inputText value="#{tooltip.verticalOffset}">
+				<a4j:support event="onchange" reRender="tooltipID" />
+			</h:inputText>
+
+			<h:outputText value="Follow mouse:"></h:outputText>
+			<h:selectBooleanCheckbox value="#{tooltip.followMouse}">
+				<a4j:support event="onclick" reRender="tooltipID" />
+			</h:selectBooleanCheckbox>
+
+			<h:outputText value="Direction:" />
+			<h:selectOneRadio value="#{tooltip.direction}">
+				<f:selectItem itemLabel="top-right" itemValue="top-right" />
+				<f:selectItem itemLabel="top-left" itemValue="top-left" />
+				<f:selectItem itemLabel="bottom-right" itemValue="bottom-right" />
+				<f:selectItem itemLabel="bottom-left" itemValue="bottom-left" />
+				<f:selectItem itemLabel="auto" itemValue="auto" />
+				<a4j:support event="onclick" reRender="tooltipID" />
+			</h:selectOneRadio>
+
+			<h:outputText value="Style:"></h:outputText>
+			<h:selectOneRadio value="#{tooltip.style}">
+				<f:selectItem itemLabel="none" itemValue="none" />
+				<f:selectItem itemLabel="border:3px; font:bold 14px;"
+					itemValue="border:3px; font:bold 14px;" />
+				<f:selectItem
+					itemLabel="border:green 3px solid; background-color:yellow;"
+					itemValue="border:green 3px solid; background-color:yellow;" />
+				<f:selectItem
+					itemLabel="border:green 2px solid; font-family:monospace;"
+					itemValue="border:green 2px solid; font-family:monospace;" />
+				<a4j:support event="onclick" reRender="tooltipID" />
+			</h:selectOneRadio>
+
+			<h:outputText value="Disambled:"></h:outputText>
+			<h:selectBooleanCheckbox value="#{tooltip.disabled}">
+				<a4j:support event="onclick" reRender="tooltipID" />
+			</h:selectBooleanCheckbox>
+
+			<h:outputText value="Rendered:"></h:outputText>
+			<h:selectBooleanCheckbox value="#{tooltip.rendered}">
+				<a4j:support event="onclick" reRender="tooltipID" />
+			</h:selectBooleanCheckbox>
+		</h:panelGrid>
+		<!-- h:inputText value="ddd"
+			onclick="toolTipAttach();alert(document.getElementById('lkjl'))" /-->
+
+	</h:form>
+	<h:form>
+		<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+	</body>
+	</html>
+</f:view>

Added: trunk/test-applications/jsp/src/main/webapp/Tree/Tree.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/Tree/Tree.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/Tree/Tree.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,123 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich"%>
+<html>
+<head>
+<title></title>
+</head>
+<body>
+<f:view>
+	<h:form>
+		<rich:tree id="tree" switchType="#{bean.switchType}"
+			value="#{bean.data}" var="data"
+			nodeFace="#{data.name != 'param-value' ? 'input' : 'text'}"
+			changeExpandListener="#{bean.onExpand}"
+			nodeSelectListener="#{bean.onSelect}" binding="#{bean.tree}"
+			onselected="window.status='selectedNode: '+event.selectedNode;"
+			onexpand="window.status='expandedNode: '+event.expandedNode"
+			oncollapse="window.status='collapsedNode: '+ event.collapsedNode"
+			ajaxSubmitSelection="true" reRender="outputText, selectOneListbox"
+			preserveModel="none" dragIndicator="treeIndicator" immediate="false"
+			acceptedTypes="file1" dragType="#{bean.dragOn ? 'file1' : ''}"
+			iconCollapsed="#{bean.iconCollapsed}"
+			iconExpanded="#{bean.iconExpanded}" iconLeaf="#{bean.iconLeaf}"
+			icon="#{bean.icon}" dropListener="#{bean.processDrop}">
+
+			<f:facet name="icon">
+				<h:outputText value="icon" rendered="#{bean.renderFacets}" />
+			</f:facet>
+			<f:facet name="iconLeaf">
+				<h:outputText value="leaf" rendered="#{bean.renderFacets}" />
+			</f:facet>
+			<f:facet name="iconExpanded">
+				<h:outputText value="expanded" rendered="#{bean.renderFacets}" />
+			</f:facet>
+			<f:facet name="iconCollapsed">
+				<h:outputText value="collapsed" rendered="#{bean.renderFacets}" />
+			</f:facet>
+
+			<dnd:dndParam name="treeParam" value="Tree Parameter" />
+			<dnd:dndParam name="accept" value="accept" />
+
+			<rich:treeNode type="input" dropListener="#{bean.processDrop}"
+				oncollapse="Element.removeClassName(event['treeItem'].getElement(), 'colored')"
+				onexpand="Element.addClassName(event['treeItem'].getElement(), 'colored')">
+				<h:outputText value="#{data} : " />
+				<h:inputText value="#{data.name}" required="true"
+					styleClass="inputs">
+				</h:inputText>
+
+				<dnd:dndParam name="nodeParam" value="Node Parameter" />
+
+			</rich:treeNode>
+			<rich:treeNode type="text" nodeClass="customNode"
+				acceptedTypes="file2" onselected="return false;">
+				<h:outputText value="#{data}" />
+			</rich:treeNode>
+		</rich:tree>
+		<f:verbatim>
+			<br />
+		</f:verbatim>
+
+		<h:outputText value="Enter path to expand:" />
+		<h:inputText value="#{bean.pathToExpand}">
+			<a4j:support event="onchange" reRender="tree"
+				action="#{bean.expandNode}" />
+		</h:inputText>
+
+		<rich:separator></rich:separator>
+
+		<h:panelGrid columns="2">
+			<h:outputText value="Change tree switchType:" />
+			<h:selectOneRadio value="#{bean.switchType}" onclick="submit()">
+				<f:selectItem itemLabel="client" itemValue="client" />
+				<f:selectItem itemLabel="server" itemValue="server" />
+				<f:selectItem itemLabel="ajax" itemValue="ajax" />
+			</h:selectOneRadio>
+
+			<h:outputText value="Drag switch:" />
+			<h:selectBooleanCheckbox value="#{bean.dragOn}" onchange="submit();"></h:selectBooleanCheckbox>
+
+			<h:outputText value="Render facets:" />
+			<h:selectBooleanCheckbox value="#{bean.renderFacets}" onchange="submit();"></h:selectBooleanCheckbox>
+
+			<h:commandButton value="#{bean.commandButtonCaption}"
+				actionListener="#{bean.changeIcons}" />
+		</h:panelGrid>
+
+		<f:verbatim>
+			<br />
+			<br />
+		</f:verbatim>
+
+		<rich:tree id="testTree" var="_data" switchType="ajax"
+			ajaxSubmitSelection="true" preserveModel="none" value="#{bean.data1}"
+			nodeSelectListener="#{bean.onSelectInc}" nodeFace="node">
+			<rich:treeNode type="node">
+				<h:outputText value="#{_data}" />
+			</rich:treeNode>
+		</rich:tree>
+		<rich:separator></rich:separator>
+		<h:outputText value="Tree without treeNode:"></h:outputText>
+		<rich:separator></rich:separator>
+
+		<rich:tree switchType="client" style="width:300px"
+			value="#{pathwayBean.pathwayTree}" var="item" nodeFace="#{item.type}">
+			<rich:treeNode type="library">
+				<h:outputText value="#{item.type}" />
+			</rich:treeNode>
+			<rich:treeNode type="pathway">
+				<h:outputText value="#{item.name}" />
+			</rich:treeNode>
+			<rich:treeNode type="organism">
+				<h:outputText value="#{item.name}" />
+			</rich:treeNode>
+		</rich:tree>
+		
+		<rich:spacer></rich:spacer>
+				<h:commandLink value="Back" action="main"></h:commandLink>
+	</h:form>
+</f:view>
+</body>
+</html>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/.cvsignore
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/.cvsignore	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/.cvsignore	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,2 @@
+lib
+classes

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Calendar.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Calendar.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Calendar.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,19 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_1.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>calendarDataModel</managed-bean-name>
+  <managed-bean-class>calendar.CalendarDataModelImpl</managed-bean-class>
+  <managed-bean-scope>application</managed-bean-scope>
+ </managed-bean>
+ <managed-bean>
+  <managed-bean-name>calendarBean</managed-bean-name>
+  <managed-bean-class>calendar.CalendarBean</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+ <validator>
+  <validator-id>org.richfaces.CalendarValidator</validator-id>
+  <validator-class>calendar.CalendarValidator</validator-class>
+ </validator>
+</faces-config>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DDMenu.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DDMenu.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DDMenu.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>dDMenu</managed-bean-name>
+  <managed-bean-class>ddMenu.DDMenu</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DDMenu.xml.l4t
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DDMenu.xml.l4t	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DDMenu.xml.l4t	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<PROCESS ENTITY="JSFProcess"/>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DataFilterSlider.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DataFilterSlider.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DataFilterSlider.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,19 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>mybean</managed-bean-name>
+  <managed-bean-class>dfs.DemoSliderBean</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+  <managed-property>
+   <property-name>demoInventoryList</property-name>
+   <value>#{inventoryList}</value>
+  </managed-property>
+ </managed-bean>
+  <managed-bean>
+  <managed-bean-name>inventoryList</managed-bean-name>
+  <managed-bean-class>dfs.DemoInventoryList</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DataFilterSlider.xml.l4t
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DataFilterSlider.xml.l4t	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DataFilterSlider.xml.l4t	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<PROCESS ENTITY="JSFProcess"/>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DataScroller.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DataScroller.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DataScroller.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>dataScroller</managed-bean-name>
+  <managed-bean-class>dataScroller.DataScroller</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DataScroller.xml.l4t
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DataScroller.xml.l4t	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DataScroller.xml.l4t	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<PROCESS ENTITY="JSFProcess"/>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DataTable.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DataTable.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DataTable.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>dataTable</managed-bean-name>
+  <managed-bean-class>dataTable.DataTable</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DataTable.xml.l4t
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DataTable.xml.l4t	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DataTable.xml.l4t	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<PROCESS ENTITY="JSFProcess"/>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DragAndDrop.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DragAndDrop.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DragAndDrop.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>dndBean</managed-bean-name>
+  <managed-bean-class>dnd.DndBean</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DragAndDrop.xml.l4t
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DragAndDrop.xml.l4t	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-DragAndDrop.xml.l4t	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<PROCESS ENTITY="JSFProcess"/>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Gmap.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Gmap.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Gmap.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,15 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+	<managed-bean>
+		<managed-bean-name>gmap</managed-bean-name>
+		<managed-bean-class>gmap.Gmap</managed-bean-class>
+		<managed-bean-scope>request</managed-bean-scope>
+		<managed-property>
+			<property-name>zoom</property-name>
+			<property-class>java.lang.String</property-class>
+			<value>10</value>
+		</managed-property>
+	</managed-bean>
+</faces-config>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Gmap.xml.l4t
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Gmap.xml.l4t	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Gmap.xml.l4t	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<PROCESS ENTITY="JSFProcess"/>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Icon.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Icon.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Icon.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>icon</managed-bean-name>
+  <managed-bean-class>style.icon.Icon</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-InputNumberSlider.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-InputNumberSlider.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-InputNumberSlider.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>inputNumberSlider</managed-bean-name>
+  <managed-bean-class>inputNumberSlider.InputNumberSlider</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>
\ No newline at end of file

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-InputNumberSpinner.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-InputNumberSpinner.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-InputNumberSpinner.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>inputNumberSpinner</managed-bean-name>
+  <managed-bean-class>inputNumberSpinner.InputNumberSpinner</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-ModalPanel.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-ModalPanel.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-ModalPanel.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>modalPanel</managed-bean-name>
+  <managed-bean-class>modalPanel.ModalPanel</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-ModalPanel.xml.l4t
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-ModalPanel.xml.l4t	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-ModalPanel.xml.l4t	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<PROCESS ENTITY="JSFProcess"/>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Paint2D.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Paint2D.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Paint2D.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,15 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>paint2D</managed-bean-name>
+  <managed-bean-class>paint2D.Paint2D</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+ <managed-bean>
+  <managed-bean-name>paintData</managed-bean-name>
+  <managed-bean-class>paint2D.PaintData</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Panel.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Panel.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Panel.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>panel</managed-bean-name>
+  <managed-bean-class>panel.Panel</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-PanelBar.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-PanelBar.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-PanelBar.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>panelBar</managed-bean-name>
+  <managed-bean-class>panelBar.PanelBar</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-PanelMenu.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-PanelMenu.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-PanelMenu.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>panelMenu</managed-bean-name>
+  <managed-bean-class>panelMenu.PanelMenu</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Separator.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Separator.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Separator.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>separator</managed-bean-name>
+  <managed-bean-class>separator.Separator</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-SimpleTogglePanel.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-SimpleTogglePanel.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-SimpleTogglePanel.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>simpleTogglePanel</managed-bean-name>
+  <managed-bean-class>sTP.SimpleTogglePanel</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Skin.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Skin.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Skin.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+	<managed-bean>
+		<managed-bean-name>skinBean</managed-bean-name>
+		<managed-bean-class>skins.Skins</managed-bean-class>
+		<managed-bean-scope>session</managed-bean-scope>
+	</managed-bean>
+</faces-config>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Spacer.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Spacer.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Spacer.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>spacer</managed-bean-name>
+  <managed-bean-class>spacer.Spacer</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-SuggestionBox.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-SuggestionBox.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-SuggestionBox.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>sb</managed-bean-name>
+  <managed-bean-class>sb.Sb</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-SuggestionBox.xml.l4t
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-SuggestionBox.xml.l4t	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-SuggestionBox.xml.l4t	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<PROCESS ENTITY="JSFProcess"/>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-TabPanel.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-TabPanel.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-TabPanel.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>tabPanel</managed-bean-name>
+  <managed-bean-class>tabPanel.TabPanel</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+ </faces-config>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-TogglePanel.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-TogglePanel.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-TogglePanel.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>togglePanel</managed-bean-name>
+  <managed-bean-class>togglePanel.TogglePanel</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-ToolBar.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-ToolBar.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-ToolBar.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>toolBar</managed-bean-name>
+  <managed-bean-class>toolBar.ToolBar</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-ToolBar.xml.l4t
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-ToolBar.xml.l4t	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-ToolBar.xml.l4t	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<PROCESS ENTITY="JSFProcess"/>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Tree.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Tree.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-Tree.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,15 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>bean</managed-bean-name>
+  <managed-bean-class>tree.Bean</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+ <managed-bean>
+  <managed-bean-name>pathwayBean</managed-bean-name>
+  <managed-bean-class>tree.TreeBean</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-tooltip.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-tooltip.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config-tooltip.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,10 @@
+<?xml version="1.0"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.0//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_0.dtd">
+<faces-config>
+ <managed-bean>
+  <managed-bean-name>tooltip</managed-bean-name>
+  <managed-bean-class>tooltip.Tooltip</managed-bean-class>
+  <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+</faces-config>
\ No newline at end of file

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,135 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE faces-config PUBLIC "-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
+                              "http://java.sun.com/dtd/web-facesconfig_1_1.dtd">
+<faces-config>
+ <navigation-rule>
+  <from-view-id>/pages/main.jsp</from-view-id>
+  <navigation-case>
+   <from-outcome>Suggest</from-outcome>
+   <to-view-id>/SuggestionBox/SuggestionBox.jsp</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>Spinner</from-outcome>
+   <to-view-id>/InputNumberSpinner/InputNumberSpinner.jsp</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>Slider</from-outcome>
+   <to-view-id>/InputNumberSlider/InputNumberSlider.jsp</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>Panel</from-outcome>
+   <to-view-id>/Panel/Panel.jsp</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>PanelBar</from-outcome>
+   <to-view-id>/PanelBar/PanelBar.jsp</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>Gmap</from-outcome>
+   <to-view-id>/Gmap/Gmap.jsp</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>Separator</from-outcome>
+   <to-view-id>/Separator/Separator.jsp</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>Paint2D</from-outcome>
+   <to-view-id>/Paint2D/Paint2D.jsp</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>Spacer</from-outcome>
+   <to-view-id>/Spacer/Spacer.jsp</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>sTP</from-outcome>
+   <to-view-id>/SimpleTogglePanel/SimpleTogglePanel.jsp</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>TabPanel</from-outcome>
+   <to-view-id>/TabPanel/TabPanel.jsp</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>Tree</from-outcome>
+   <to-view-id>/Tree/Tree.jsp</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>TogglePanel</from-outcome>
+   <to-view-id>/TogglePanel/TogglePanel.jsp</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>ToolBar</from-outcome>
+   <to-view-id>/ToolBar/ToolBar.jsp</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>DnD</from-outcome>
+   <to-view-id>/DragAndDrop/DragAndDrop.jsp</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>MP</from-outcome>
+   <to-view-id>/ModalPanel/ModalPanel.jsp</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>DS</from-outcome>
+   <to-view-id>/DataScroller/DS.jsp</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>DT</from-outcome>
+   <to-view-id>/DataTable/DT.jsp</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>DFS</from-outcome>
+   <to-view-id>/DataFilterSlider/DFS.jsp</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>DDM</from-outcome>
+   <to-view-id>/DropDownMenu/DDMenu.jsp</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>PanelMenu</from-outcome>
+   <to-view-id>/PanelMenu/PanelMenu.jsp</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>Tooltip</from-outcome>
+   <to-view-id>/Tooltip/Tooltip.jsp</to-view-id>
+  </navigation-case>
+  <navigation-case>
+   <from-outcome>Calendar</from-outcome>
+   <to-view-id>/Calendar/Calendar.jsp</to-view-id>
+  </navigation-case>
+ </navigation-rule>
+ <navigation-rule>
+  <from-view-id>*</from-view-id>
+  <navigation-case>
+   <from-outcome>main</from-outcome>
+   <to-view-id>/pages/main.jsp</to-view-id>
+  </navigation-case>
+ </navigation-rule>
+ <navigation-rule>
+  <from-view-id>/Panel/Panel.jsp</from-view-id>
+  <navigation-case>
+   <from-outcome>Sample2</from-outcome>
+   <to-view-id>/Panel/Panel2.jsp</to-view-id>
+  </navigation-case>
+ </navigation-rule>
+ <navigation-rule>
+  <from-view-id>/Panel/Panel2.jsp</from-view-id>
+  <navigation-case>
+   <from-outcome>BackP</from-outcome>
+   <to-view-id>/Panel/Panel.jsp</to-view-id>
+  </navigation-case>
+ </navigation-rule>
+ <navigation-rule>
+  <from-view-id>/DragAndDrop/DragAndDrop.jsp</from-view-id>
+  <navigation-case>
+   <from-outcome>DnDDemo</from-outcome>
+   <to-view-id>/DragAndDrop/DnD.jsp</to-view-id>
+  </navigation-case>
+ </navigation-rule>
+ <navigation-rule>
+  <from-view-id>/DragAndDrop/DnD.jsp</from-view-id>
+  <navigation-case>
+   <from-outcome>DragAndDrop</from-outcome>
+   <to-view-id>/DragAndDrop/DragAndDrop.jsp</to-view-id>
+  </navigation-case>
+ </navigation-rule>
+</faces-config>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config.xml.l4t
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config.xml.l4t	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/faces-config.xml.l4t	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,190 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<PROCESS ENTITY="JSFProcess">
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#SuggestionBox#SuggestionBox.jsp"
+  PATH="/SuggestionBox/SuggestionBox.jsp" SHAPE="512,17,0,0" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#InputNumberSpinner#InputNumberSpinner.jsp"
+  PATH="/InputNumberSpinner/InputNumberSpinner.jsp" SHAPE="512,289,0,0" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#InputNumberSlider#InputNumberSlider.jsp"
+  PATH="/InputNumberSlider/InputNumberSlider.jsp" SHAPE="512,401,0,0" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup" NAME="rules:*" PATH="*" SHAPE="32,17,0,0">
+  <PROCESS-ITEM ENTITY="JSFProcessItem" ID="rules:*:0" NAME="item" PATH="*">
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="main::#pages#main.jsp" NAME="output" PATH="/pages/main.jsp"
+    SHAPE="-1,16" TARGET="rules:#pages#main.jsp" TITLE="main"/>
+  </PROCESS-ITEM>
+ </PROCESS-ITEM>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#PanelBar#PanelBar.jsp" PATH="/PanelBar/PanelBar.jsp"
+  SHAPE="512,625,0,0" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup" NAME="rules:#Gmap#Gmap.jsp"
+  PATH="/Gmap/Gmap.jsp" SHAPE="512,737,0,0" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#Separator#Separator.jsp" PATH="/Separator/Separator.jsp"
+  SHAPE="530,222,0,0" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#Paint2D#Paint2D.jsp" PATH="/Paint2D/Paint2D.jsp"
+  SHAPE="550,161,0,0" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup" NAME="rules:#Spacer#Spacer.jsp"
+  PATH="/Spacer/Spacer.jsp" SHAPE="537,105,0,0" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#SimpleTogglePanel#SimpleTogglePanel.jsp"
+  PATH="/SimpleTogglePanel/SimpleTogglePanel.jsp" SHAPE="553,60,0,0" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#TabPanel#TabPanel.jsp" PATH="/TabPanel/TabPanel.jsp"
+  SHAPE="512,352,50,25" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup" NAME="rules:#Tree#Tree.jsp"
+  PATH="/Tree/Tree.jsp" SHAPE="556,456,0,0" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#TogglePanel#TogglePanel.jsp"
+  PATH="/TogglePanel/TogglePanel.jsp" SHAPE="281,360,0,0" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#ToolBar#ToolBar.jsp" PATH="/ToolBar/ToolBar.jsp"
+  SHAPE="312,424,50,25" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#ModalPanel#ModalPanel.jsp"
+  PATH="/ModalPanel/ModalPanel.jsp" SHAPE="694,232,0,0" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#DataScroller#DS.jsp" PATH="/DataScroller/DS.jsp"
+  SHAPE="165,490,0,0" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup" NAME="rules:#DataTable#DT.jsp"
+  PATH="/DataTable/DT.jsp" SHAPE="81,264,0,0" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#DataFilterSlider#DFS.jsp"
+  PATH="/DataFilterSlider/DFS.jsp" SHAPE="103,131,0,0" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#DropDownMenu#DDMenu.jsp" PATH="/DropDownMenu/DDMenu.jsp"
+  SHAPE="63,402,0,0" persistent="true"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup" NAME="rules:#pages#main.jsp"
+  PATH="/pages/main.jsp" SHAPE="240,33,0,0">
+  <PROCESS-ITEM ENTITY="JSFProcessItem" ID="rules:#pages#main.jsp:0"
+   NAME="item" PATH="/pages/main.jsp">
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="Suggest::#SuggestionBox#SuggestionBox.jsp" NAME="output"
+    PATH="/SuggestionBox/SuggestionBox.jsp"
+    TARGET="rules:#SuggestionBox#SuggestionBox.jsp" TITLE="Suggest"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="Spinner::#InputNumberSpinner#InputNumberSpinner.jsp"
+    NAME="output1" PATH="/InputNumberSpinner/InputNumberSpinner.jsp"
+    TARGET="rules:#InputNumberSpinner#InputNumberSpinner.jsp" TITLE="Spinner"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="Slider::#InputNumberSlider#InputNumberSlider.jsp" NAME="output2"
+    PATH="/InputNumberSlider/InputNumberSlider.jsp"
+    TARGET="rules:#InputNumberSlider#InputNumberSlider.jsp" TITLE="Slider"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="Panel::#Panel#Panel.jsp" NAME="output3" PATH="/Panel/Panel.jsp"
+    TARGET="rules:#Panel#Panel.jsp" TITLE="Panel"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="PanelBar::#PanelBar#PanelBar.jsp" NAME="output4"
+    PATH="/PanelBar/PanelBar.jsp" TARGET="rules:#PanelBar#PanelBar.jsp" TITLE="PanelBar"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="Gmap::#Gmap#Gmap.jsp" NAME="output5" PATH="/Gmap/Gmap.jsp"
+    TARGET="rules:#Gmap#Gmap.jsp" TITLE="Gmap"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="Separator::#Separator#Separator.jsp" NAME="output6"
+    PATH="/Separator/Separator.jsp"
+    TARGET="rules:#Separator#Separator.jsp" TITLE="Separator"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="Paint2D::#Paint2D#Paint2D.jsp" NAME="output7"
+    PATH="/Paint2D/Paint2D.jsp" TARGET="rules:#Paint2D#Paint2D.jsp" TITLE="Paint2D"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="Spacer::#Spacer#Spacer.jsp" NAME="output8"
+    PATH="/Spacer/Spacer.jsp" TARGET="rules:#Spacer#Spacer.jsp" TITLE="Spacer"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="sTP::#SimpleTogglePanel#SimpleTogglePanel.jsp" NAME="output9"
+    PATH="/SimpleTogglePanel/SimpleTogglePanel.jsp"
+    TARGET="rules:#SimpleTogglePanel#SimpleTogglePanel.jsp" TITLE="sTP"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="TabPanel::#TabPanel#TabPanel.jsp" NAME="output10"
+    PATH="/TabPanel/TabPanel.jsp" TARGET="rules:#TabPanel#TabPanel.jsp" TITLE="TabPanel"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="Tree::#Tree#Tree.jsp" NAME="output11" PATH="/Tree/Tree.jsp"
+    TARGET="rules:#Tree#Tree.jsp" TITLE="Tree"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="TogglePanel::#TogglePanel#TogglePanel.jsp" NAME="output12"
+    PATH="/TogglePanel/TogglePanel.jsp"
+    TARGET="rules:#TogglePanel#TogglePanel.jsp" TITLE="TogglePanel"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="ToolBar::#ToolBar#ToolBar.jsp" NAME="output13"
+    PATH="/ToolBar/ToolBar.jsp" TARGET="rules:#ToolBar#ToolBar.jsp" TITLE="ToolBar"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="DnD::#DragAndDrop#DragAndDrop.jsp" NAME="output14"
+    PATH="/DragAndDrop/DragAndDrop.jsp"
+    TARGET="rules:#DragAndDrop#DragAndDrop.jsp" TITLE="DnD"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="MP::#ModalPanel#ModalPanel.jsp" NAME="output15"
+    PATH="/ModalPanel/ModalPanel.jsp"
+    TARGET="rules:#ModalPanel#ModalPanel.jsp" TITLE="MP"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="DS::#DataScroller#DS.jsp" NAME="output16"
+    PATH="/DataScroller/DS.jsp" TARGET="rules:#DataScroller#DS.jsp" TITLE="DS"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="DT::#DataTable#DT.jsp" NAME="output17" PATH="/DataTable/DT.jsp"
+    TARGET="rules:#DataTable#DT.jsp" TITLE="DT"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="DFS::#DataFilterSlider#DFS.jsp" NAME="output18"
+    PATH="/DataFilterSlider/DFS.jsp"
+    TARGET="rules:#DataFilterSlider#DFS.jsp" TITLE="DFS"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="DDM::#DropDownMenu#DDMenu.jsp" NAME="output19"
+    PATH="/DropDownMenu/DDMenu.jsp"
+    TARGET="rules:#DropDownMenu#DDMenu.jsp" TITLE="DDM"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="PanelMenu::#PanelMenu#PanelMenu.jsp" NAME="output20"
+    PATH="/PanelMenu/PanelMenu.jsp"
+    TARGET="rules:#PanelMenu#PanelMenu.jsp" TITLE="PanelMenu"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="Tooltip::#Tooltip#Tooltip.jsp" NAME="output22"
+    PATH="/Tooltip/Tooltip.jsp" TARGET="rules:#Tooltip#Tooltip.jsp" TITLE="Tooltip"/>
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="Calendar::#Calendar#Calendar.jsp" NAME="output23"
+    PATH="/Calendar/Calendar.jsp" TARGET="rules:#Calendar#Calendar.jsp" TITLE="Calendar"/>
+  </PROCESS-ITEM>
+ </PROCESS-ITEM>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup" NAME="rules:#Panel#Panel.jsp"
+  PATH="/Panel/Panel.jsp" SHAPE="512,1409,0,0">
+  <PROCESS-ITEM ENTITY="JSFProcessItem" ID="rules:#Panel#Panel.jsp:0"
+   NAME="item" PATH="/Panel/Panel.jsp">
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="Sample2::#Panel#Panel2.jsp" NAME="output"
+    PATH="/Panel/Panel2.jsp" TARGET="rules:#Panel#Panel2.jsp" TITLE="Sample2"/>
+  </PROCESS-ITEM>
+ </PROCESS-ITEM>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup" NAME="rules:#Panel#Panel2.jsp"
+  PATH="/Panel/Panel2.jsp" SHAPE="240,1425,0,0">
+  <PROCESS-ITEM ENTITY="JSFProcessItem" ID="rules:#Panel#Panel2.jsp:0"
+   NAME="item" PATH="/Panel/Panel2.jsp">
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="BackP::#Panel#Panel.jsp" NAME="output" PATH="/Panel/Panel.jsp"
+    TARGET="rules:#Panel#Panel.jsp" TITLE="BackP"/>
+  </PROCESS-ITEM>
+ </PROCESS-ITEM>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#DragAndDrop#DragAndDrop.jsp"
+  PATH="/DragAndDrop/DragAndDrop.jsp" SHAPE="512,1521,0,0">
+  <PROCESS-ITEM ENTITY="JSFProcessItem"
+   ID="rules:#DragAndDrop#DragAndDrop.jsp:0" NAME="item" PATH="/DragAndDrop/DragAndDrop.jsp">
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="DnDDemo::#DragAndDrop#DnD.jsp" NAME="output"
+    PATH="/DragAndDrop/DnD.jsp" TARGET="rules:#DragAndDrop#DnD.jsp" TITLE="DnDDemo"/>
+  </PROCESS-ITEM>
+ </PROCESS-ITEM>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#DragAndDrop#DnD.jsp" PATH="/DragAndDrop/DnD.jsp" SHAPE="240,1537,0,0">
+  <PROCESS-ITEM ENTITY="JSFProcessItem"
+   ID="rules:#DragAndDrop#DnD.jsp:0" NAME="item" PATH="/DragAndDrop/DnD.jsp">
+   <PROCESS-ITEM-OUTPUT ENTITY="JSFProcessItemOutput"
+    ID="DragAndDrop::#DragAndDrop#DragAndDrop.jsp" NAME="output"
+    PATH="/DragAndDrop/DragAndDrop.jsp"
+    TARGET="rules:#DragAndDrop#DragAndDrop.jsp" TITLE="DragAndDrop"/>
+  </PROCESS-ITEM>
+ </PROCESS-ITEM>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#PanelMenu#PanelMenu.jsp" PATH="/PanelMenu/PanelMenu.jsp" SHAPE="512,1441,0,0"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#Tooltip#Tooltip.jsp" PATH="/Tooltip/Tooltip.jsp" SHAPE="512,1473,0,0"/>
+ <PROCESS-ITEM ENTITY="JSFProcessGroup"
+  NAME="rules:#Calendar#Calendar.jsp" PATH="/Calendar/Calendar.jsp" SHAPE="512,1537,0,0"/>
+</PROCESS>

Added: trunk/test-applications/jsp/src/main/webapp/WEB-INF/web.xml
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/WEB-INF/web.xml	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/WEB-INF/web.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
+ <display-name>vcp-ComponentsTesting_3_0(1.1)</display-name>
+ <context-param>
+  <param-name>org.ajax4jsf.SKIN</param-name>
+  <param-value>#{skinBean.skin}</param-value>
+ </context-param>
+ <context-param>
+  <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
+  <param-value>server</param-value>
+ </context-param>
+ <context-param>
+  <param-name>javax.faces.CONFIG_FILES</param-name>
+  <param-value>/WEB-INF/faces-config-Panel.xml,/WEB-INF/faces-config-PanelBar.xml,/WEB-INF/faces-config-TabPanel.xml,/WEB-INF/faces-config-TogglePanel.xml,/WEB-INF/faces-config-Paint2D.xml,/WEB-INF/faces-config-InputNumberSlider.xml,/WEB-INF/faces-config-InputNumberSpinner.xml,/WEB-INF/faces-config-DDMenu.xml,/WEB-INF/faces-config-Tree.xml,/WEB-INF/faces-config-PanelMenu.xml,/WEB-INF/faces-config-Icon.xml,/WEB-INF/faces-config-tooltip.xml,/WEB-INF/faces-config-Skin.xml,/WEB-INF/faces-config-Calendar.xml,/WEB-INF/faces-config-Gmap.xml,/WEB-INF/faces-config-Separator.xml,/WEB-INF/faces-config-Spacer.xml,/WEB-INF/faces-config-SimpleTogglePanel.xml,/WEB-INF/faces-config-ToolBar.xml,/WEB-INF/faces-config-ModalPanel.xml,/WEB-INF/faces-config-SuggestionBox.xml,/WEB-INF/faces-config-DragAndDrop.xml,/WEB-INF/faces-config-DataScroller.xml,/WEB-INF/faces-config-DataTable.xml,/WEB-INF/faces-config-DataFilterSlider.xml</param-value>
+ </context-param>
+ <filter>
+  <display-name>Ajax4jsf Filter</display-name>
+  <filter-name>ajax4jsf</filter-name>
+  <filter-class>org.ajax4jsf.Filter</filter-class>
+ </filter>
+ <filter-mapping>
+  <filter-name>ajax4jsf</filter-name>
+  <servlet-name>Faces Servlet</servlet-name>
+  <dispatcher>FORWARD</dispatcher>
+  <dispatcher>REQUEST</dispatcher>
+  <dispatcher>INCLUDE</dispatcher>
+ </filter-mapping>
+ <listener>
+  <listener-class>com.sun.faces.config.ConfigureListener</listener-class>
+ </listener>
+ <!-- Faces Servlet -->
+ <servlet>
+  <servlet-name>Faces Servlet</servlet-name>
+  <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
+  <load-on-startup>1</load-on-startup>
+ </servlet>
+ <!-- Faces Servlet Mapping -->
+ <servlet-mapping>
+  <servlet-name>Faces Servlet</servlet-name>
+  <url-pattern>*.jsf</url-pattern>
+ </servlet-mapping>
+ <login-config>
+  <auth-method>BASIC</auth-method>
+ </login-config>
+</web-app>

Added: trunk/test-applications/jsp/src/main/webapp/index.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/index.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/index.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,9 @@
+<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
+
+<html>
+<head>
+</head>
+<body>
+	<jsp:forward page="/pages/main.jsf" />
+</body>
+</html>

Added: trunk/test-applications/jsp/src/main/webapp/pages/main.jsp
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/pages/main.jsp	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/pages/main.jsp	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,50 @@
+<%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>
+<%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>
+<%@ taglib uri="http://richfaces.ajax4jsf.org/rich" prefix="rich"%>
+<%@ taglib uri="https://ajax4jsf.dev.java.net/ajax" prefix="a4j"%>
+<html>
+<head>
+<title></title>
+<link rel="stylesheet" href="<%=request.getContextPath()%>/styles/styles.css" type="text/css" />
+</head>
+<body>
+<f:view>
+	<h:form>
+		<rich:panel>
+			<h:selectOneRadio binding="#{skinBean.component}" />
+			<h:commandLink action="#{skinBean.change}" value="set skin" />
+		</rich:panel>
+	
+		<div align="center"><h:outputText
+			value="VCP 3.1.0 Test Application (JSF 1.1 RI)" styleClass="maintext"></h:outputText></div>
+		<rich:panel>
+		<h:panelGrid columns="2" cellpadding="5px">
+			<h:commandLink value="InputNumberSpinner" action="Spinner"></h:commandLink>
+			<h:commandLink value="InputNumberSlider" action="Slider"></h:commandLink>
+			<h:commandLink value="Panel" action="Panel"></h:commandLink>
+			<h:commandLink value="PanelBar" action="PanelBar"></h:commandLink>
+			<h:commandLink value="Gmap" action="Gmap"></h:commandLink>
+			<h:commandLink value="Separator" action="Separator"></h:commandLink>
+			<h:commandLink value="Spacer" action="Spacer"></h:commandLink>
+			<h:commandLink value="SimpleTogglePanel" action="sTP"></h:commandLink>
+			<h:commandLink value="TabPanel" action="TabPanel"></h:commandLink>
+			<h:commandLink value="Pain2D" action="Paint2D"></h:commandLink>
+			<h:commandLink value="Tree" action="Tree"></h:commandLink>
+			<h:commandLink value="TogglePanel" action="TogglePanel"></h:commandLink>
+			<h:commandLink value="ToolBar" action="ToolBar"></h:commandLink>
+			<h:commandLink value="ModalPanel" action="MP"></h:commandLink>
+			<h:commandLink value="Drop Down Menu" action="DDM"></h:commandLink>
+			<h:commandLink value="SuggestionBox" action="Suggest"></h:commandLink>
+			<h:commandLink value="Drag And Drop" action="DnD"></h:commandLink>
+			<h:commandLink value="Data Scroller" action="DS"></h:commandLink>
+			<h:commandLink value="Data Table" action="DT"></h:commandLink>
+			<h:commandLink value="Data Filter Slider" action="DFS"></h:commandLink>
+			<h:commandLink value="Panel Menu" action="PanelMenu"></h:commandLink>
+			<h:commandLink value="Tooltip" action="Tooltip"></h:commandLink>
+			<h:commandLink value="Calendar" action="Calendar"></h:commandLink>
+		</h:panelGrid>
+		</rich:panel>
+	</h:form>
+</f:view>
+</body>
+</html>

Added: trunk/test-applications/jsp/src/main/webapp/pics/458_1_big.gif
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/jsp/src/main/webapp/pics/458_1_big.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/jsp/src/main/webapp/pics/458_2_big.jpg
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/jsp/src/main/webapp/pics/458_2_big.jpg
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/jsp/src/main/webapp/pics/ajax_process.gif
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/jsp/src/main/webapp/pics/ajax_process.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/jsp/src/main/webapp/pics/ajax_stoped.gif
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/jsp/src/main/webapp/pics/ajax_stoped.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/jsp/src/main/webapp/pics/asus.jpg
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/jsp/src/main/webapp/pics/asus.jpg
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/jsp/src/main/webapp/pics/benq.jpg
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/jsp/src/main/webapp/pics/benq.jpg
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/jsp/src/main/webapp/pics/collapse.gif
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/jsp/src/main/webapp/pics/collapse.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/jsp/src/main/webapp/pics/error.gif
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/jsp/src/main/webapp/pics/error.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/jsp/src/main/webapp/pics/expand.gif
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/jsp/src/main/webapp/pics/expand.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/jsp/src/main/webapp/pics/fatal.gif
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/jsp/src/main/webapp/pics/fatal.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/jsp/src/main/webapp/pics/file-manager-reject.png
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/jsp/src/main/webapp/pics/file-manager-reject.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/jsp/src/main/webapp/pics/file-manager.png
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/jsp/src/main/webapp/pics/file-manager.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/jsp/src/main/webapp/pics/header.png
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/jsp/src/main/webapp/pics/header.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/jsp/src/main/webapp/pics/info.gif
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/jsp/src/main/webapp/pics/info.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/jsp/src/main/webapp/pics/item.png
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/jsp/src/main/webapp/pics/item.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/jsp/src/main/webapp/pics/masshtaby_01.jpg
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/jsp/src/main/webapp/pics/masshtaby_01.jpg
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/jsp/src/main/webapp/pics/passed.gif
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/jsp/src/main/webapp/pics/passed.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/jsp/src/main/webapp/pics/podb109_61.jpg
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/jsp/src/main/webapp/pics/podb109_61.jpg
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/jsp/src/main/webapp/pics/toshiba.jpg
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/jsp/src/main/webapp/pics/toshiba.jpg
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/jsp/src/main/webapp/pics/warn.gif
===================================================================
(Binary files differ)


Property changes on: trunk/test-applications/jsp/src/main/webapp/pics/warn.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: trunk/test-applications/jsp/src/main/webapp/styles/styles.css
===================================================================
--- trunk/test-applications/jsp/src/main/webapp/styles/styles.css	                        (rev 0)
+++ trunk/test-applications/jsp/src/main/webapp/styles/styles.css	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,63 @@
+.maintext {
+	font-size: 30px !important;
+}
+.text1{
+	font-size: 14px !important;
+}
+.style{
+background: teal;
+border: solid 3px red;
+font: bold 14px;
+}
+/* inputNumderSlider Styles */
+.barStyle{
+background-color: purple !important;
+border: red 3px solid;
+}
+.inputStyle
+{
+background-color: lime !important;
+border: red 3px solid;
+font-family: monospace;
+}
+.tipStyle{
+border: green 3px solid;
+background-color: yellow;
+font: italic bold 14px;
+}
+.handleStyle{
+border: green 3px solid;
+background-color: yellow;
+}
+/* TabPanel Styles */
+.activeTabStyle{
+background: lime;
+border: solid 3px black;
+font: italic 14px;
+}
+.inactiveTabStyle{
+background: gray;
+border: solid 3px blue;
+font: bold 14px;
+}
+.disabledTabStyle{
+background: silver;
+border: dotted 3px blue;
+font: small-caps 14px;
+}
+.contentStyle{
+background: silver;
+border: 1px red;
+font: 20px;
+}
+/* inputNumerSpinner Styles*/
+.inputStyle{
+background: aqua ;
+border: thin red;
+font: fantasy 15px;
+}
+/* ToolBar Styles*/
+.separatorStyle{
+border: 3px solid red;
+background: lime;
+}

Added: trunk/test-applications/pom.xml
===================================================================
--- trunk/test-applications/pom.xml	                        (rev 0)
+++ trunk/test-applications/pom.xml	2007-08-07 16:26:09 UTC (rev 2108)
@@ -0,0 +1,27 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+	<parent>
+    		<artifactId>samples</artifactId>
+    		<groupId>org.richfaces</groupId>
+	    	<version>3.1.0-SNAPSHOT</version>
+		<relativePath>../samples</relativePath>
+	</parent>
+
+	<modelVersion>4.0.0</modelVersion>
+	<groupId>org.richfaces</groupId>
+	<artifactId>test-applications</artifactId>
+	<packaging>pom</packaging>
+	<name>RichFaces Test Applications</name>
+
+	<modules>
+		<module>jsp</module>
+		<module>facelets</module>
+	</modules>
+
+	<dependencies>
+		<dependency>
+    			<artifactId>richfaces-ui</artifactId>
+    			<groupId>org.richfaces.ui</groupId>
+	    		<version>${project.version}</version>
+		</dependency>
+	</dependencies>
+</project>
\ No newline at end of file




More information about the richfaces-svn-commits mailing list