JBoss Rich Faces SVN: r14 - trunk/richfaces-samples/richfaces-demo/src/main/webapp.
by richfaces-svn-commits@lists.jboss.org
Author: SergeySmirnov
Date: 2007-03-05 17:54:19 -0500 (Mon, 05 Mar 2007)
New Revision: 14
Modified:
trunk/richfaces-samples/richfaces-demo/src/main/webapp/welcome.xhtml
Log:
typo is out
Modified: trunk/richfaces-samples/richfaces-demo/src/main/webapp/welcome.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/welcome.xhtml 2007-03-05 22:53:34 UTC (rev 13)
+++ trunk/richfaces-samples/richfaces-demo/src/main/…
[View More]webapp/welcome.xhtml 2007-03-05 22:54:19 UTC (rev 14)
@@ -19,7 +19,7 @@
framework including a large number of predefined skins. Using
skinability, it is much easier to manage the look-and-feel of an
application.</p>
- <h4>About This Demo"</h4>
+ <h4>About This Demo</h4>
<p>This demo Web application showcases the most important
functionality available in RichFaces components. For each component
or component set selected in the left-hand sidebar, you can see it in action. Also, you can instantly see the effect of predefined
[View Less]
18 years, 1 month
JBoss Rich Faces SVN: r13 - trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/common.
by richfaces-svn-commits@lists.jboss.org
Author: SergeySmirnov
Date: 2007-03-05 17:53:34 -0500 (Mon, 05 Mar 2007)
New Revision: 13
Modified:
trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/common/components.properties
Log:
corrections for urls
Modified: trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/common/components.properties
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/…
[View More]demo/common/components.properties 2007-03-05 22:53:01 UTC (rev 12)
+++ trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/common/components.properties 2007-03-05 22:53:34 UTC (rev 13)
@@ -1,23 +1,23 @@
# list of components in comma-separated format
#id=name,iconImage,captionImage,devGuideLocation,tldDocLocation,javaDocLocation
-panel= Panel, /images/ico_panel.gif, /images/cn_panel.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/panel.html, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/pane..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/panel.jsf
-separator= Separator, /images/ico_separator.gif, /images/cn_separator.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/separat..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/sepa..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/separator.jsf
-spacer= Spacer, /images/ico_spacer.gif, /images/cn_spacer.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/spacer...., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/spac..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/spacer.jsf
-tabPanel= Tab Panel, /images/ico_tabpanel.gif, /images/cn_tabpanel.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/tabPane..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/tabP..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/tabPanel.jsf
-inputNumberSlider= Input Number Slider, /images/ico_slider.gif, /images/cn_slider.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/inputNu..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/inpu..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/inputNumberSlider.jsf
-inputNumberSpinner= Input Number Spinner, /images/ico_spinner.gif, /images/cn_spinner.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/inputNu..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/inpu..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/inputNumberSpinner.jsf
-dataFilterSlider= Data Filter Slider, /images/ico_DataFilterSlider.gif, /images/cn_DataFilterSlider.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/dataFil..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/data..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/dataFilterSlider.jsf
+panel= Panel, /images/ico_panel.gif, /images/cn_panel.gif, http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., /richfaces/panel.jsf
+separator= Separator, /images/ico_separator.gif, /images/cn_separator.gif, http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., /richfaces/separator.jsf
+spacer= Spacer, /images/ico_spacer.gif, /images/cn_spacer.gif, http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., /richfaces/spacer.jsf
+tabPanel= Tab Panel, /images/ico_tabpanel.gif, /images/cn_tabpanel.gif, http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., /richfaces/tabPanel.jsf
+inputNumberSlider= Input Number Slider, /images/ico_slider.gif, /images/cn_slider.gif, http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., /richfaces/inputNumberSlider.jsf
+inputNumberSpinner= Input Number Spinner, /images/ico_spinner.gif, /images/cn_spinner.gif, http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., /richfaces/inputNumberSpinner.jsf
+dataFilterSlider= Data Filter Slider, /images/ico_DataFilterSlider.gif, /images/cn_DataFilterSlider.gif, http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., /richfaces/dataFilterSlider.jsf
dataTable= Data Table, /images/ico_DataTable.gif, /images/cn_DataTable.gif, http\://dem01.exadel.com\:18091/openexadel-org/richdocs/devguide/dataTable.html, http\://dem01.exadel.com\:18091/openexadel-org/richdocs/tlddoc/rich/dataTable.html, http\://dem01.exadel.com\:18091/openexadel-org/richdocs/javadoc/org/richfaces/component/UIDataTable.html, /richfaces/dataTable.jsf
gmap= Google Map, /images/ico_GoogleMap.gif, /images/cn_GoogleMap.gif, http\://dem01.exadel.com\:18091/openexadel-org/richdocs/devguide/gmap.html, http\://dem01.exadel.com\:18091/openexadel-org/richdocs/tlddoc/rich/gmap.html, http\://dem01.exadel.com\:18091/openexadel-org/richdocs/javadoc/org/richfaces/component/UIGmap.html, /richfaces/gmap.jsf
-paint2d= Paint2D, /images/ico_Paint2D.gif, /images/cn_Paint2D.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/paint2D..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/pain..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/paint2D.jsf
-toolBar= Tool Bar, /images/ico_ToolBar.gif, /images/cn_ToolBar.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/toolBar..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/tool..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/toolBar.jsf
-simpleTogglePanel= Simple Toggle Panel, /images/ico_SimpleTogglePanel.gif, /images/cn_SimpleTogglePanel.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/simpleT..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/simp..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/simpleTogglePanel.jsf
-dragIndicator= Drag Indicator, /images/ico_DragIndicator.gif, /images/cn_DragIndicator.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/dragInd..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/drag..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/dragSupport.jsf
-dragSupport= Drag Support, /images/ico_DragSupport.gif, /images/cn_DragSupport.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/dragSup..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/drag..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/dragSupport.jsf
-dropSupport= Drop Support, /images/ico_DropSupport.gif, /images/cn_DropSupport.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/dropSup..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/drop..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/dragSupport.jsf
-panelBar= Panel Bar, /images/ico_PanelBar.gif, /images/cn_PanelBar.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/panelBa..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/pane..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/panelBar.jsf
-tree= Tree, /images/ico_Tree.gif, /images/cn_tree.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/tree.html, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/tree..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/tree.jsf
-modalPanel= Modal Panel, /images/ico_ModalPanel.gif, /images/cn_ModalPanel.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/modalPa..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/moda..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/modalPanel.jsf
-togglePanel= Toggle Panel, /images/ico_TogglePanel.gif, /images/cn_TogglePanel.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/toggleP..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/Togg..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/togglePanel.jsf
-suggestionBox= Suggestion Box, /images/ico_SuggestionBox.gif, /images/cn_SuggestionBox.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/suggest..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/sugg..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/suggestionBox.jsf
-dataTableScroller= Data Table Scroller, /images/ico_DataTableScroller.gif, /images/cn_DataTableScroller.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/datascr..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/data..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/dataTableScroller.jsf
+paint2d= Paint2D, /images/ico_Paint2D.gif, /images/cn_Paint2D.gif, http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., /richfaces/paint2D.jsf
+toolBar= Tool Bar, /images/ico_ToolBar.gif, /images/cn_ToolBar.gif, http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., /richfaces/toolBar.jsf
+simpleTogglePanel= Simple Toggle Panel, /images/ico_SimpleTogglePanel.gif, /images/cn_SimpleTogglePanel.gif, http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., /richfaces/simpleTogglePanel.jsf
+dragIndicator= Drag Indicator, /images/ico_DragIndicator.gif, /images/cn_DragIndicator.gif, http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., /richfaces/dragSupport.jsf
+dragSupport= Drag Support, /images/ico_DragSupport.gif, /images/cn_DragSupport.gif, http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., /richfaces/dragSupport.jsf
+dropSupport= Drop Support, /images/ico_DropSupport.gif, /images/cn_DropSupport.gif, http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., /richfaces/dragSupport.jsf
+panelBar= Panel Bar, /images/ico_PanelBar.gif, /images/cn_PanelBar.gif, http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., /richfaces/panelBar.jsf
+tree= Tree, /images/ico_Tree.gif, /images/cn_tree.gif, http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., /richfaces/tree.jsf
+modalPanel= Modal Panel, /images/ico_ModalPanel.gif, /images/cn_ModalPanel.gif, http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., /richfaces/modalPanel.jsf
+togglePanel= Toggle Panel, /images/ico_TogglePanel.gif, /images/cn_TogglePanel.gif, http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., /richfaces/togglePanel.jsf
+suggestionBox= Suggestion Box, /images/ico_SuggestionBox.gif, /images/cn_SuggestionBox.gif, http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., /richfaces/suggestionBox.jsf
+dataTableScroller= Data Table Scroller, /images/ico_DataTableScroller.gif, /images/cn_DataTableScroller.gif, http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., http://labs.jboss.com/file-access/default/members/jbossrichfaces/freezone..., /richfaces/dataTableScroller.jsf
[View Less]
18 years, 1 month
JBoss Rich Faces SVN: r12 - trunk/richfaces-samples/richfaces-demo.
by richfaces-svn-commits@lists.jboss.org
Author: SergeySmirnov
Date: 2007-03-05 17:53:01 -0500 (Mon, 05 Mar 2007)
New Revision: 12
Modified:
trunk/richfaces-samples/richfaces-demo/pom.xml
Log:
upgrade dependancy to ajax4jsf 1.1.0
Modified: trunk/richfaces-samples/richfaces-demo/pom.xml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/pom.xml 2007-03-05 19:16:29 UTC (rev 11)
+++ trunk/richfaces-samples/richfaces-demo/pom.xml 2007-03-05 22:53:01 UTC (rev 12)
@@ -3,7 +3,7 …
[View More]@@
<parent>
<artifactId>richfaces-samples</artifactId>
<groupId>org.richfaces</groupId>
- <version>3.0.0-SNAPSHOT</version>
+ <version>3.0.0</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>org.richfaces</groupId>
[View Less]
18 years, 1 month
JBoss Rich Faces SVN: r11 - in trunk/richfaces-samples: richfaces-demo and 88 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: SergeySmirnov
Date: 2007-03-05 14:16:29 -0500 (Mon, 05 Mar 2007)
New Revision: 11
Added:
trunk/richfaces-samples/richfaces-demo/
trunk/richfaces-samples/richfaces-demo/html-design/
trunk/richfaces-samples/richfaces-demo/html-design/site/
trunk/richfaces-samples/richfaces-demo/html-design/site/images/
trunk/richfaces-samples/richfaces-demo/html-design/site/images/Thumbs.db
trunk/richfaces-samples/richfaces-demo/html-design/site/images/bullet_arrow.gif
trunk/…
[View More]richfaces-samples/richfaces-demo/html-design/site/images/cn_panel.gif
trunk/richfaces-samples/richfaces-demo/html-design/site/images/cn_separator.gif
trunk/richfaces-samples/richfaces-demo/html-design/site/images/cn_slider.gif
trunk/richfaces-samples/richfaces-demo/html-design/site/images/cn_spacer.gif
trunk/richfaces-samples/richfaces-demo/html-design/site/images/cn_spinner.gif
trunk/richfaces-samples/richfaces-demo/html-design/site/images/cn_tabpanel.gif
trunk/richfaces-samples/richfaces-demo/html-design/site/images/ico_panel.gif
trunk/richfaces-samples/richfaces-demo/html-design/site/images/ico_separator.gif
trunk/richfaces-samples/richfaces-demo/html-design/site/images/ico_slider.gif
trunk/richfaces-samples/richfaces-demo/html-design/site/images/ico_spacer.gif
trunk/richfaces-samples/richfaces-demo/html-design/site/images/ico_spinner.gif
trunk/richfaces-samples/richfaces-demo/html-design/site/images/ico_tabpanel.gif
trunk/richfaces-samples/richfaces-demo/html-design/site/images/menu_bg.gif
trunk/richfaces-samples/richfaces-demo/html-design/site/images/page_bg.gif
trunk/richfaces-samples/richfaces-demo/html-design/site/images/pn_about.gif
trunk/richfaces-samples/richfaces-demo/html-design/site/images/pn_aboutDemo.gif
trunk/richfaces-samples/richfaces-demo/html-design/site/images/spacer.gif
trunk/richfaces-samples/richfaces-demo/html-design/site/images/tabpanel_custom/
trunk/richfaces-samples/richfaces-demo/html-design/site/images/tabpanel_custom/Thumbs.db
trunk/richfaces-samples/richfaces-demo/html-design/site/images/tabpanel_custom/tab_active_bg.gif
trunk/richfaces-samples/richfaces-demo/html-design/site/images/tabpanel_custom/tab_border_bg.gif
trunk/richfaces-samples/richfaces-demo/html-design/site/images/tabpanel_custom/tab_unactive_bg.gif
trunk/richfaces-samples/richfaces-demo/html-design/site/images/tabpanel_custom/tabpanel_bg.jpg
trunk/richfaces-samples/richfaces-demo/html-design/site/images/top_nav_bg.gif
trunk/richfaces-samples/richfaces-demo/html-design/site/template.html
trunk/richfaces-samples/richfaces-demo/pom.xml
trunk/richfaces-samples/richfaces-demo/src/
trunk/richfaces-samples/richfaces-demo/src/main/
trunk/richfaces-samples/richfaces-demo/src/main/java/
trunk/richfaces-samples/richfaces-demo/src/main/java/org/
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/datatable/
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/datatable/ExpenseReport.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/datatable/ExpenseReportRecord.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/datatable/ExpenseReportRecordItem.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/datatablescroller/
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/datatablescroller/DataTableScrollerBean.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/common/
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/common/ComponentDescriptor.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/common/ComponentNavigator.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/common/Environment.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/common/SkinBean.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/datafilterslider/
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/datafilterslider/DataFilterSliderDao.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/datafilterslider/DataFilterSliderDaoImpl.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/datafilterslider/DemoInventoryItem.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/datafilterslider/DemoInventoryList.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/datafilterslider/DemoSliderBean.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/datatable/
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/datatable/Report.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/dnd/
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/dnd/DndBean.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/dnd/EventBean.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/dnd/Framework.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/gmap/
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/gmap/Bean.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/gmap/Place.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/inputnumberslider/
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/inputnumberslider/ValueBean.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/paint2d/
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/paint2d/PaintBean.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/paint2d/PaintData.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/sb/
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/sb/Data.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/sb/SuggestionBox.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/togglePanel/
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/togglePanel/ToggleBean.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/toolBar/
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/toolBar/TbBean.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/tree/
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/tree/Album.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/tree/Artist.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/tree/Library.java
trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/tree/Song.java
trunk/richfaces-samples/richfaces-demo/src/main/resources/
trunk/richfaces-samples/richfaces-demo/src/main/resources/org/
trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/
trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/
trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/common/
trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/common/components.properties
trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/gmap/
trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/gmap/images/
trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/gmap/images/exadel.gif
trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/gmap/images/gold.gif
trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/gmap/images/pyramids.gif
trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/gmap/images/tower.gif
trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/tree/
trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/tree/data.txt
trunk/richfaces-samples/richfaces-demo/src/main/webapp/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/META-INF/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/META-INF/MANIFEST.MF
trunk/richfaces-samples/richfaces-demo/src/main/webapp/WEB-INF/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/WEB-INF/faces-config.xml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/WEB-INF/faces-config.xml.l4t
trunk/richfaces-samples/richfaces-demo/src/main/webapp/WEB-INF/lib/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/WEB-INF/web.xml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/css/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/css/common.css
trunk/richfaces-samples/richfaces-demo/src/main/webapp/css/xhtml-source.css
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/bullet_arrow.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DataDefinitionList.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DataFilterSlider.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DataGrid.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DataList.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DataOrderedList.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DataTable.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DataTableScroller.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DragIndicator.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DragSupport.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DropSupport.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_GoogleMap.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_ModalPanel.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_Paint2D.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_PanelBar.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_SimpleTogglePanel.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_SuggestionBox.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_TogglePanel.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_ToolBar.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_panel.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_separator.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_slider.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_spacer.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_spinner.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_tabpanel.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_tree.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/dnd/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/dnd/basket.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/dnd/bball.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/dnd/can.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/dnd/dropcan.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/dnd/opencan.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_DataFilterSlider.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_DataTable.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_DataTableScroller.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_DragIndicator.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_DragSupport.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_DropSupport.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_GoogleMap.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_ModalPanel.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_Paint2D.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_PanelBar.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_SimpleTogglePanel.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_SuggestionBox.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_TogglePanel.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_ToolBar.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_Tree.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_panel.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_separator.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_slider.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_spacer.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_spinner.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_tabpanel.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/menu_bg.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/modal/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/modal/close.png
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/page_bg.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/pn_about.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/pn_aboutDemo.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/spacer.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/tabpanel_custom/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/tabpanel_custom/tab_active_bg.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/tabpanel_custom/tab_border_bg.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/tabpanel_custom/tab_unactive_bg.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/tabpanel_custom/tabpanel_bg.jpg
trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/top_nav_bg.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/index.jsp
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataFilterSlider.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataFilterSlider/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataFilterSlider/source/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataFilterSlider/source/usage.html
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataFilterSlider/source/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataFilterSlider/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTable.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTable/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTable/source/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTable/source/usage.html
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTable/source/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTable/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTableScroller.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTableScroller/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTableScroller/source/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTableScroller/source/usage.html
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTableScroller/source/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTableScroller/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dragIndicator.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dragSupport.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dragSupport/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dragSupport/source/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dragSupport/source/usage.html
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dragSupport/source/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dragSupport/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dropSupport.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/gmap.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/gmap/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/gmap/source/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/gmap/source/usage.html
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/gmap/source/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/gmap/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSlider.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSlider/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSlider/source/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSlider/source/usage.html
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSlider/source/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSlider/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSpinner.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSpinner/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSpinner/source/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSpinner/source/usage.html
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSpinner/source/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSpinner/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/modalPanel.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/modalPanel/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/modalPanel/source/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/modalPanel/source/usage.html
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/modalPanel/source/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/modalPanel/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/paint2D.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/paint2D/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/paint2D/source/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/paint2D/source/usage.html
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/paint2D/source/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/paint2D/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel/look-customization.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel/source/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel/source/look-customization.html
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel/source/look-customization.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel/source/usage.html
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel/source/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panelBar.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panelBar/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panelBar/source/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panelBar/source/usage.html
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panelBar/source/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panelBar/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/separator.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/separator/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/separator/source/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/separator/source/usage.html
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/separator/source/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/separator/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/simpleTogglePanel.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/simpleTogglePanel/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/simpleTogglePanel/source/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/simpleTogglePanel/source/usage.html
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/simpleTogglePanel/source/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/simpleTogglePanel/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/spacer.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/spacer/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/spacer/source/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/spacer/source/usage.html
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/spacer/source/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/spacer/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/suggestionBox.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/suggestionBox/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/suggestionBox/source/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/suggestionBox/source/usage.html
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/suggestionBox/source/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/suggestionBox/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel/look-customization.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel/source/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel/source/look-customization.html
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel/source/look-customization.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel/source/usage.html
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel/source/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/togglePanel.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/togglePanel/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/togglePanel/source/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/togglePanel/source/usage.html
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/togglePanel/source/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/togglePanel/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/new.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/palette_edit.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/print.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/print_edit.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/print_preview.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/search_item.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/timer_task.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/webapp_session_config.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/webapp_welcome.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/yellow_lamp.gif
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/source/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/source/usage.html
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/source/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tree.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tree/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tree/source/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tree/source/usage.html
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tree/source/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tree/usage.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/component-sample.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/include/
trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/include/components-navigation.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/include/dynamic-css.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/include/footer.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/include/header.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/include/references.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/main.xhtml
trunk/richfaces-samples/richfaces-demo/src/main/webapp/welcome.xhtml
trunk/richfaces-samples/richfaces-demo/src/test/
trunk/richfaces-samples/richfaces-demo/src/test/java/
trunk/richfaces-samples/richfaces-demo/src/test/java/org/
trunk/richfaces-samples/richfaces-demo/src/test/java/org/richfaces/
trunk/richfaces-samples/richfaces-demo/src/test/java/org/richfaces/demo/
trunk/richfaces-samples/richfaces-demo/src/test/java/org/richfaces/demo/tree/
trunk/richfaces-samples/richfaces-demo/src/test/java/org/richfaces/demo/tree/test/
trunk/richfaces-samples/richfaces-demo/src/test/java/org/richfaces/demo/tree/test/LibraryTest.java
Log:
commit for richfaces-demo
Property changes on: trunk/richfaces-samples/richfaces-demo
___________________________________________________________________
Name: svn:ignore
+ target
.settings
.classpath
.exadelproject
.project
Added: trunk/richfaces-samples/richfaces-demo/html-design/site/images/Thumbs.db
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/html-design/site/images/Thumbs.db
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/html-design/site/images/bullet_arrow.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/html-design/site/images/bullet_arrow.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/html-design/site/images/cn_panel.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/html-design/site/images/cn_panel.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/html-design/site/images/cn_separator.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/html-design/site/images/cn_separator.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/html-design/site/images/cn_slider.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/html-design/site/images/cn_slider.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/html-design/site/images/cn_spacer.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/html-design/site/images/cn_spacer.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/html-design/site/images/cn_spinner.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/html-design/site/images/cn_spinner.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/html-design/site/images/cn_tabpanel.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/html-design/site/images/cn_tabpanel.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/html-design/site/images/ico_panel.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/html-design/site/images/ico_panel.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/html-design/site/images/ico_separator.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/html-design/site/images/ico_separator.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/html-design/site/images/ico_slider.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/html-design/site/images/ico_slider.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/html-design/site/images/ico_spacer.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/html-design/site/images/ico_spacer.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/html-design/site/images/ico_spinner.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/html-design/site/images/ico_spinner.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/html-design/site/images/ico_tabpanel.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/html-design/site/images/ico_tabpanel.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/html-design/site/images/menu_bg.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/html-design/site/images/menu_bg.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/html-design/site/images/page_bg.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/html-design/site/images/page_bg.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/html-design/site/images/pn_about.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/html-design/site/images/pn_about.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/html-design/site/images/pn_aboutDemo.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/html-design/site/images/pn_aboutDemo.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/html-design/site/images/spacer.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/html-design/site/images/spacer.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/html-design/site/images/tabpanel_custom/Thumbs.db
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/html-design/site/images/tabpanel_custom/Thumbs.db
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/html-design/site/images/tabpanel_custom/tab_active_bg.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/html-design/site/images/tabpanel_custom/tab_active_bg.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/html-design/site/images/tabpanel_custom/tab_border_bg.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/html-design/site/images/tabpanel_custom/tab_border_bg.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/html-design/site/images/tabpanel_custom/tab_unactive_bg.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/html-design/site/images/tabpanel_custom/tab_unactive_bg.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/html-design/site/images/tabpanel_custom/tabpanel_bg.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/html-design/site/images/tabpanel_custom/tabpanel_bg.jpg
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/html-design/site/images/top_nav_bg.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/html-design/site/images/top_nav_bg.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/html-design/site/template.html
===================================================================
--- trunk/richfaces-samples/richfaces-demo/html-design/site/template.html (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/html-design/site/template.html 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,344 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+
+<html>
+<head>
+ <title>RichFaces Demo Site</title>
+<style>
+body{
+ margin : 0px;
+ background-image : url(images/page_bg.gif);
+ background-position : top left;
+ background-repeat : no-repeat;
+ background-color : White;
+}
+
+.page_brick{
+ position : absolute;
+ top : 0px;
+ width : 998px;
+}
+
+li{
+ list-style : outside url(images/bullet_arrow.gif);
+ margin-top : 5px;
+ margin-bottom : 5px;
+ margin-left : -12px;
+}
+ul{
+ margin-top : 10px;
+ margin-bottom : 10px;
+}
+
+
+.top_navbar{
+ position : absolute;
+ top : 2px;
+ right : 0px;
+ font-family : verdana;
+ font-size : 11px;
+}
+.top_navbar td{
+ padding : 5px 10px 7px 10px;
+ background-image : url(images/top_nav_bg.gif);
+ background-position : left;
+ background-repeat : repeat-y;
+ background-color : transparent;
+}
+.top_navbar td a{
+ color : #000000;
+ text-decoration : none;
+}
+.top_navbar td a:hover{
+ color : #000000;
+ text-decoration : underline;
+}
+
+
+.skin_chooser{
+ position : absolute;
+ top : 77px;
+ left : 294px;
+ font-family : verdana;
+ font-size : 11px;
+ height : 26px;
+}
+.skin_chooser td{
+ padding : 0px 0px 0px 10px;
+ background-color : transparent;
+}
+.skin_chooser td a{
+ color : #7795AF;
+ text-decoration : none;
+}
+.skin_chooser td a:hover{
+ color : #7795AF;
+ text-decoration : underline;
+}
+.skin_chooser .skin_line{
+ font-family : verdana;
+ font-size : 11px;
+}
+.skin_chooser .skin_line a{
+ color : #000000;
+ text-decoration : none;
+}
+.skin_chooser .skin_line a:hover{
+ color : #000000;
+ text-decoration : underline;
+}
+
+
+.left_menu{
+ position : absolute;
+ top : 71px;
+ left : 28px;
+ width : 222px;
+}
+.panel_documents{
+ background-color : transparency;
+ border : 1px solid #FFFFFF;
+ font-family : verdana;
+ font-size : 11px;
+ padding : 10px 10px 10px 20px;
+}
+.panel_documents a{
+ color : #000000;
+ text-decoration : none;
+}
+.panel_documents a:hover{
+ color : #000000;
+ text-decoration : underline;
+}
+
+
+.menu_separator{
+ background-color : #ACBECE;
+ height : 5px;
+ font-size : 1px;
+}
+
+
+.panel_menu{
+ background-color : transparency;
+ border : 1px solid #FFFFFF;
+ border-bottom : 0px;
+ background-image : url(images/menu_bg.gif);
+ background-position : left;
+ background-repeat : repeat-y;
+ background-color : transparent;
+ padding : 10px 10px 10px 12px;
+}
+.panel_menu table .unactive .ico{
+ border : 1px solid #FFFFFF;
+}
+.panel_menu table .active .ico{
+ border : 1px solid #ACBECE;
+}
+.panel_menu table .active .text{
+ color : #FFFFFF;
+ font-family : verdana;
+ font-size : 11px;
+ background-color : #ACBECE;
+ padding-left : 10px
+}
+.panel_menu table .unactive .text{
+ font-family : verdana;
+ font-size : 11px;
+ padding-left : 10px
+}
+.text, .ico{
+ cursor : pointer;
+}
+
+
+.component_name{
+ position : absolute;
+ top : 124px;
+ left : 290px;
+}
+
+.content_container{
+ position : absolute;
+ top : 176px;
+ left : 0px;
+}
+.content_container_pdddings{
+ padding : 0px 35px 35px 0px;
+}
+.content_container_left_brick{
+ width : 294px;
+}
+
+.footer{
+ border-top : 2px solid #ACBECE;
+ text-align : right;
+ height : 50px;
+ font-family : verdana;
+ font-size : 11px;
+ padding : 0px 15px 0px 0px;
+}
+</style>
+</head>
+
+<body>
+<div class="page_brick"></div>
+<table class="top_navbar" cellpadding="0" cellspacing="0" border="0">
+<tbody>
+ <tr>
+ <td>
+ <a href="#">Download</a>
+ </td>
+ <td>
+ <a href="#">Support</a>
+ </td>
+ <td>
+ <a href="#">Community</a>
+ </td>
+ </tr>
+</tbody>
+</table>
+
+<table class="skin_chooser" cellpadding="0" cellspacing="0" border="0">
+<tbody>
+ <tr>
+ <td>
+ <strong>Skins:</strong>
+ </td>
+ <td>
+
+ <table class="skin_line" cellpadding="0" cellspacing="0" border="0">
+ <tbody>
+ <tr>
+ <td>
+ <a href="#">SkyBlue</a>
+ </td>
+ <td>
+ <a href="#">Classic</a>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ <table class="skin_line" cellpadding="0" cellspacing="0" border="0" style="display : none">
+ <tbody>
+ <tr>
+ <td>
+ <a href="#">SkyBlue</a>
+ </td>
+ <td>
+ <a href="#">Classic</a>
+ </td>
+ <td>
+ <a href="#">Ruby</a>
+ </td>
+ <td>
+ <a href="#">Wine</a>
+ </td>
+ <td>
+ <a href="#">DeepMarine</a>
+ </td>
+ <td>
+ <a href="#">EmeraldTown</a>
+ </td>
+ <td>
+ <a href="#">JapanCherry</a>
+ </td>
+ <td>
+ <a href="#">Default</a>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+
+ </td>
+ <td>
+ <a href="#">more »</a>
+ </td>
+ </tr>
+</tbody>
+</table>
+
+
+<table class="left_menu" cellpadding="0" cellspacing="0" border="0">
+<tbody>
+ <tr>
+ <td>
+ <div class="panel_documents">
+ <strong>InputNumberSpinner</strong>
+ <ul>
+ <li><a href="#">Developers Guide</a></li>
+ <li><a href="#">Tld Documentation</a></li>
+ <li><a href="#">Component Class Documentation</a></li>
+ </ul>
+ </div>
+ <div class="menu_separator">
+
+ </div>
+ <div class="panel_menu">
+ <table border="0" cellpadding="3" cellspacing="1">
+ <tbody>
+ <tr class="unactive" onmouseover="this.className='active'" onmouseout="this.className='unactive'">
+ <td class="ico"><img src="images/ico_panel.gif" width="16" height="16" alt="" border="0"></td>
+ <td class="text" width="100%">
+ Panel
+ </td>
+ </tr>
+ <tr class="unactive" onmouseover="this.className='active'" onmouseout="this.className='unactive'">
+ <td class="ico"><img src="images/ico_spacer.gif" width="16" height="16" alt="" border="0"></td>
+ <td class="text">
+ Spacer
+ </td>
+ </tr>
+ <tr class="unactive" onmouseover="this.className='active'" onmouseout="this.className='unactive'">
+ <td class="ico"><img src="images/ico_separator.gif" width="16" height="16" alt="" border="0"></td>
+ <td class="text">
+ Separator
+ </td>
+ </tr>
+ <tr class="unactive" onmouseover="this.className='active'" onmouseout="this.className='unactive'">
+ <td class="ico"><img src="images/ico_slider.gif" width="16" height="16" alt="" border="0"></td>
+ <td class="text">
+ Input Number Slider
+ </td>
+ </tr>
+ <tr class="active">
+ <td class="ico"><img src="images/ico_spinner.gif" width="16" height="16" alt="" border="0"></td>
+ <td class="text">
+ Input Number Spinner
+ </td>
+ </tr>
+ <tr class="unactive" onmouseover="this.className='active'" onmouseout="this.className='unactive'">
+ <td class="ico"><img src="images/ico_tabpanel.gif" width="16" height="16" alt="" border="0"></td>
+ <td class="text">
+ Tab Panel
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+
+ </td>
+ </tr>
+</tbody>
+</table>
+
+<img src="images/cn_spinner.gif" height="40" alt="" border="0" class="component_name">
+
+<table cellpadding="0" cellspacing="0" border="0" class="content_container" width="100%">
+<tbody>
+ <tr>
+ <td>
+ <div class="content_container_left_brick"></div>
+ </td>
+ <td width="100%" class="content_container_pdddings">
+<!-- tabpanel begin -->
+
+<!-- tabpanel end -->
+ </td>
+ </tr>
+</tbody>
+</table>
+
+
+</body>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/pom.xml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/pom.xml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/pom.xml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,23 @@
+<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>richfaces-samples</artifactId>
+ <groupId>org.richfaces</groupId>
+ <version>3.0.0-SNAPSHOT</version>
+ </parent>
+ <modelVersion>4.0.0</modelVersion>
+ <groupId>org.richfaces</groupId>
+ <artifactId>richfaces-demo</artifactId>
+ <packaging>war</packaging>
+ <name>richfaces-demo Maven Webapp</name>
+ <dependencies>
+ <dependency>
+ <groupId>org.richfaces</groupId>
+ <artifactId>richfaces</artifactId>
+ <version>${project.version}</version>
+ </dependency>
+ </dependencies>
+ <build>
+ <finalName>richfaces-demo</finalName>
+ </build>
+</project>
Added: trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/datatable/ExpenseReport.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/datatable/ExpenseReport.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/datatable/ExpenseReport.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,70 @@
+package org.richfaces.datatable;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+public class ExpenseReport {
+ private List records = null;
+
+ public List getRecords() {
+ if (records==null) {
+ initRecords();
+ }
+ return records;
+ }
+
+ public void setRecords(List records) {
+ this.records = records;
+ }
+
+ public double getTotalMeals() {
+ double ret = 0.0;
+ Iterator it = getRecords().iterator();
+ while (it.hasNext()) {
+ ExpenseReportRecord record = (ExpenseReportRecord) it.next();
+ ret+=record.getTotalMeals();
+ }
+ return ret;
+ }
+ public double getTotalHotels() {
+ double ret = 0.0;
+ Iterator it = getRecords().iterator();
+ while (it.hasNext()) {
+ ExpenseReportRecord record = (ExpenseReportRecord) it.next();
+ ret+=record.getTotalHotels();
+ }
+ return ret;
+ }
+ public double getTotalTransport() {
+ double ret = 0.0;
+ Iterator it = getRecords().iterator();
+ while (it.hasNext()) {
+ ExpenseReportRecord record = (ExpenseReportRecord) it.next();
+ ret+=record.getTotalTransport();
+ }
+ return ret;
+ }
+ public double getGrandTotal() {
+ return getTotalMeals()+getTotalHotels()+getTotalTransport();
+ }
+ public int getRecordsCount() {
+ return getRecords().size();
+ }
+
+ private void initRecords() {
+ records = new ArrayList();
+ ExpenseReportRecord rec;
+ rec = new ExpenseReportRecord();
+ rec.setCity("San Jose");
+ rec.getItems().add(new ExpenseReportRecordItem("25-Aug-97",37.74,112.0,45.0));
+ rec.getItems().add(new ExpenseReportRecordItem("26-Aug-97",27.28,112.0,45.0));
+ records.add(rec);
+ rec = new ExpenseReportRecord();
+ rec.setCity("Seattle");
+ rec.getItems().add(new ExpenseReportRecordItem("27-Aug-97",96.25,109.0,36.00));
+ rec.getItems().add(new ExpenseReportRecordItem("28-Aug-97",35.0,109.0,36.0));
+ records.add(rec);
+ }
+
+}
Added: trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/datatable/ExpenseReportRecord.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/datatable/ExpenseReportRecord.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/datatable/ExpenseReportRecord.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,56 @@
+package org.richfaces.datatable;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+public class ExpenseReportRecord {
+ private String city;
+ private List items = new ArrayList();
+ public String getCity() {
+ return city;
+ }
+ public void setCity(String city) {
+ this.city = city;
+ }
+ public List getItems() {
+ return this.items;
+ }
+ public void setItems(List items) {
+ this.items = items;
+ }
+ public double getTotalMeals() {
+ double ret = 0.0;
+ Iterator it = items.iterator();
+ while (it.hasNext()) {
+ ExpenseReportRecordItem item = (ExpenseReportRecordItem) it.next();
+ ret+=item.getMeals();
+ }
+ return ret;
+ }
+ public double getTotalHotels() {
+ double ret = 0.0;
+ Iterator it = items.iterator();
+ while (it.hasNext()) {
+ ExpenseReportRecordItem item = (ExpenseReportRecordItem) it.next();
+ ret+=item.getHotels();
+ }
+ return ret;
+ }
+ public double getTotalTransport() {
+ double ret = 0.0;
+ Iterator it = items.iterator();
+ while (it.hasNext()) {
+ ExpenseReportRecordItem item = (ExpenseReportRecordItem) it.next();
+ ret+=item.getTransport();
+ }
+ return ret;
+ }
+ public double getTotal() {
+ return getTotalMeals() +getTotalHotels()+getTotalTransport();
+ }
+
+ public int getItemsCount() {
+ return getItems().size();
+ }
+}
Added: trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/datatable/ExpenseReportRecordItem.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/datatable/ExpenseReportRecordItem.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/datatable/ExpenseReportRecordItem.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,42 @@
+package org.richfaces.datatable;
+
+public class ExpenseReportRecordItem {
+ private String day;
+ private double meals;
+ private double hotels;
+ private double transport;
+
+ public ExpenseReportRecordItem(String day, double meals, double hotels, double transport) {
+ this.day = day;
+ this.meals = meals;
+ this.hotels = hotels;
+ this.transport = transport;
+ }
+ public String getDay() {
+ return day;
+ }
+ public void setDay(String day) {
+ this.day = day;
+ }
+ public double getHotels() {
+ return hotels;
+ }
+ public void setHotels(double hotels) {
+ this.hotels = hotels;
+ }
+ public double getMeals() {
+ return meals;
+ }
+ public void setMeals(double meals) {
+ this.meals = meals;
+ }
+ public double getTransport() {
+ return transport;
+ }
+ public void setTransport(double transport) {
+ this.transport = transport;
+ }
+ public double getTotal() {
+ return meals+hotels+transport;
+ }
+}
Added: trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/datatablescroller/DataTableScrollerBean.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/datatablescroller/DataTableScrollerBean.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/datatablescroller/DataTableScrollerBean.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,136 @@
+/**
+ *
+ */
+package org.richfaces.datatablescroller;
+
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Random;
+
+import org.richfaces.demo.datafilterslider.DemoInventoryItem;
+
+/**
+ * @author Nick Belaevski - nbelaevski(a)exadel.com
+ * created 02.03.2007
+ *
+ */
+public class DataTableScrollerBean {
+ private static int DECIMALS = 1;
+ private static int ROUNDING_MODE = BigDecimal.ROUND_HALF_UP;
+
+ private List allCars = null;
+
+ public List getAllCars() {
+ synchronized (this) {
+ if (allCars == null) {
+ allCars = new ArrayList();
+ for (int k = 0; k <= 5; k++) {
+ try{
+ switch (k) {
+ case 0:
+ allCars.addAll(createCar("Chevrolet","Corvette", 5));
+ allCars.addAll(createCar("Chevrolet","Malibu", 8));
+ allCars.addAll(createCar("Chevrolet","S-10", 10));
+ allCars.addAll(createCar("Chevrolet","Tahoe", 6));
+ break;
+
+ case 1:
+ allCars.addAll(createCar("Ford","Taurus", 12));
+ allCars.addAll(createCar("Ford","Explorer", 11));
+ break;
+ case 2:
+ allCars.addAll(createCar("Nissan","Maxima", 9));
+ break;
+ case 3:
+ allCars.addAll(createCar("Toyota","4-Runner", 7));
+ allCars.addAll(createCar("Toyota","Camry", 15));
+ allCars.addAll(createCar("Toyota","Avalon", 13));
+ break;
+ case 4:
+ allCars.addAll(createCar("GMC","Sierra", 8));
+ allCars.addAll(createCar("GMC","Yukon", 10));
+ break;
+ case 5:
+ allCars.addAll(createCar("Infiniti","G35", 6));
+ break;
+ default:
+ break;
+ }
+ }catch(Exception e){
+ System.out.println("!!!!!!loadAllCars Error: " + e.getMessage());
+ e.printStackTrace();
+ }
+ }
+ }
+ }
+
+ return allCars;
+ }
+
+ public int genRand() {
+ return rand(1,10000);
+ }
+
+ public List createCar(String make, String model, int count){
+
+ ArrayList iiList = null;
+
+ try{
+ int arrayCount = count;
+
+ DemoInventoryItem[] demoInventoryItemArrays = new DemoInventoryItem[arrayCount];
+
+ 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){
+ System.out.println("!!!!!!createCategory Error: " + e.getMessage());
+ 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/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/common/ComponentDescriptor.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/common/ComponentDescriptor.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/common/ComponentDescriptor.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,92 @@
+package org.richfaces.demo.common;
+
+import javax.faces.context.FacesContext;
+
+public class ComponentDescriptor {
+ private String id;
+ private String name;
+ private String captionImage;
+ private String iconImage;
+ private String devGuideLocation;
+ private String tldDocLocation;
+ private String javaDocLocation;
+ private String demoLocation;
+ private boolean current;
+
+ public ComponentDescriptor() {
+ this.id = "";
+ this.name = "";
+ this.captionImage = "";
+ this.iconImage = "";
+ this.devGuideLocation = "";
+ this.tldDocLocation = "";
+ this.javaDocLocation = "";
+ this.current = false;
+ }
+
+ public String getCaptionImage() {
+ return captionImage;
+ }
+ public void setCaptionImage(String captionImage) {
+ this.captionImage = captionImage;
+ }
+ public String getDevGuideLocation() {
+ return devGuideLocation;
+ }
+ public void setDevGuideLocation(String devGuideLocation) {
+ this.devGuideLocation = devGuideLocation;
+ }
+ public String getId() {
+ return id;
+ }
+ public void setId(String id) {
+ this.id = id;
+ }
+ public String getJavaDocLocation() {
+ return javaDocLocation;
+ }
+ public void setJavaDocLocation(String javaDocLocation) {
+ this.javaDocLocation = javaDocLocation;
+ }
+ public String getName() {
+ return name;
+ }
+ public void setName(String name) {
+ this.name = name;
+ }
+ public String getTldDocLocation() {
+ return tldDocLocation;
+ }
+ public void setTldDocLocation(String tldDocLocation) {
+ this.tldDocLocation = tldDocLocation;
+ }
+
+ public boolean isCurrent() {
+ return current;
+ }
+
+ public void setCurrent(boolean current) {
+ this.current = current;
+ }
+
+ public String getIconImage() {
+ return iconImage;
+ }
+
+ public void setIconImage(String iconImage) {
+ this.iconImage = iconImage;
+ }
+
+ public String getDemoLocation() {
+ return demoLocation;
+ }
+
+ public void setDemoLocation(String demoLocation) {
+ this.demoLocation = demoLocation;
+ }
+ public String getContextRelativeDemoLocation() {
+ FacesContext fc = FacesContext.getCurrentInstance();
+ return fc.getExternalContext().getRequestContextPath()+getDemoLocation();
+ }
+
+}
Added: trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/common/ComponentNavigator.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/common/ComponentNavigator.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/common/ComponentNavigator.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,112 @@
+package org.richfaces.demo.common;
+
+import java.io.InputStream;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.Comparator;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Properties;
+import java.util.Set;
+import java.util.StringTokenizer;
+
+import javax.faces.FacesException;
+import javax.faces.context.FacesContext;
+
+public class ComponentNavigator {
+ private List components = null;
+ private ComponentDescriptor currentComponent;
+
+ public ComponentDescriptor getCurrentComponent() {
+ String id = getComponentParam();
+ if (id!=null) {
+ setCurrentComponent(findComponentById(id));
+ }
+ return currentComponent;
+ }
+ private String getComponentParam() {
+ FacesContext fc = FacesContext.getCurrentInstance();
+ String param = (String) fc.getExternalContext().getRequestParameterMap().get("c");
+ if (param!=null && param.trim().length()>0) {
+ return param;
+ } else {
+ return null;
+ }
+ }
+
+ public ComponentDescriptor findComponentById(String id) {
+ if (components==null) {
+ loadComponents();
+ }
+ Iterator it = components.iterator();
+ while (it.hasNext()) {
+ ComponentDescriptor component = (ComponentDescriptor) it.next();
+ if (component.getId().equals(id)) {
+ return component;
+ }
+ }
+ throw new RuntimeException("Component id=["+id+"] not found");
+ }
+
+ public void setCurrentComponent(ComponentDescriptor currentComponent) {
+ this.currentComponent = currentComponent;
+ }
+
+ public List getComponents() {
+ if (components==null) {
+ loadComponents();
+ }
+ Iterator it = components.iterator();
+ ComponentDescriptor cur = getCurrentComponent();
+ while (it.hasNext()) {
+ ComponentDescriptor desc = (ComponentDescriptor) it.next();
+ if (desc.equals(cur)) {
+ desc.setCurrent(true);
+ } else {
+ desc.setCurrent(false);
+ }
+ }
+ return components;
+ }
+
+ public void setComponents(List components) {
+ this.components = components;
+ }
+
+ private void loadComponents() {
+ Properties props = new Properties();
+ List temp = new ArrayList();
+ try {
+ InputStream is = this.getClass().getClassLoader().getResourceAsStream("/org/richfaces/demo/common/components.properties");
+ props.load(is);
+ } catch (Exception e) {
+ throw new FacesException(e);
+ }
+ Set entries = props.entrySet();
+ Iterator it = entries.iterator();
+ while (it.hasNext()) {
+ Map.Entry e = (Map.Entry) it.next();
+ ComponentDescriptor desc = new ComponentDescriptor();
+ desc.setId(e.getKey().toString().trim());
+ StringTokenizer toc = new StringTokenizer(e.getValue().toString(),",");
+// #id=name,captionImage,iconImage,devGuideLocation,tldDocLocation,javaDocLocation
+ desc.setName(toc.nextToken().trim());
+ desc.setIconImage(toc.nextToken().trim());
+ desc.setCaptionImage(toc.nextToken().trim());
+ desc.setDevGuideLocation(toc.nextToken().trim());
+ desc.setTldDocLocation(toc.nextToken().trim());
+ desc.setJavaDocLocation(toc.nextToken().trim());
+ desc.setDemoLocation(toc.nextToken().trim());
+ temp.add(desc);
+ }
+ Collections.sort(temp, new Comparator() {
+ public int compare(Object o1, Object o2) {
+ ComponentDescriptor d1 = (ComponentDescriptor)o1;
+ ComponentDescriptor d2 = (ComponentDescriptor)o2;
+ return d1.getId().compareTo(d2.getId());
+ }});
+ setComponents(temp);
+ setCurrentComponent((ComponentDescriptor) temp.get(0));
+ }
+}
Added: trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/common/Environment.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/common/Environment.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/common/Environment.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,17 @@
+package org.richfaces.demo.common;
+
+import java.util.HashMap;
+import java.util.Map;
+
+public class Environment {
+ private Map params = new HashMap();
+
+ public Map getParams() {
+ return params;
+ }
+
+ public void setParams(Map params) {
+ this.params = params;
+ }
+
+}
Added: trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/common/SkinBean.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/common/SkinBean.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/common/SkinBean.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,53 @@
+/**
+ *
+ */
+package org.richfaces.demo.common;
+
+import javax.faces.context.FacesContext;
+
+
+/**
+ * @author sim
+ *
+ */
+public class SkinBean {
+ private String skin;
+ private Object skinChooserState;
+
+ public String getSkin() {
+ String param = getSkinParam();
+ if (param!=null) {
+ setSkin(param);
+ }
+ return skin;
+ }
+ public void setSkin(String skin) {
+ this.skin = skin;
+ }
+
+ private String getSkinParam(){
+ FacesContext fc = FacesContext.getCurrentInstance();
+ String param = (String) fc.getExternalContext().getRequestParameterMap().get("s");
+ if (param!=null && param.trim().length()>0) {
+ return param;
+ } else {
+ return null;
+ }
+ }
+
+
+ public String changeSkin() {
+ String param = getSkinParam();
+ if (param!=null) {
+ setSkin(param);
+ }
+ return null;
+ }
+
+ public Object getSkinChooserState() {
+ return skinChooserState;
+ }
+ public void setSkinChooserState(Object skinChooserState) {
+ this.skinChooserState = skinChooserState;
+ }
+}
Added: trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/datafilterslider/DataFilterSliderDao.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/datafilterslider/DataFilterSliderDao.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/datafilterslider/DataFilterSliderDao.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,12 @@
+package org.richfaces.demo.datafilterslider;
+
+import java.util.List;
+
+public interface DataFilterSliderDao {
+
+ public List getCarsById(String id);
+
+ public List getAllCarMakes();
+
+ public int genRand();
+}
Added: trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/datafilterslider/DataFilterSliderDaoImpl.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/datafilterslider/DataFilterSliderDaoImpl.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/datafilterslider/DataFilterSliderDaoImpl.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,163 @@
+package org.richfaces.demo.datafilterslider;
+
+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){
+ System.out.println("!!!!!!loadAllCars Error: " + e.getMessage());
+ 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){
+ System.out.println("!!!!!!createCategory Error: " + e.getMessage());
+ 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/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/datafilterslider/DemoInventoryItem.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/datafilterslider/DemoInventoryItem.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/datafilterslider/DemoInventoryItem.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,154 @@
+package org.richfaces.demo.datafilterslider;
+
+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/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/datafilterslider/DemoInventoryList.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/datafilterslider/DemoInventoryList.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/datafilterslider/DemoInventoryList.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,266 @@
+package org.richfaces.demo.datafilterslider;
+
+import org.richfaces.component.UIDataFltrSlider;
+
+import javax.faces.event.ActionEvent;
+import javax.faces.context.FacesContext;
+import javax.faces.component.UIData;
+import java.util.List;
+import java.util.ArrayList;
+import java.util.Collections;
+import java.math.BigDecimal;
+
+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/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/datafilterslider/DemoSliderBean.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/datafilterslider/DemoSliderBean.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/datafilterslider/DemoSliderBean.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,28 @@
+package org.richfaces.demo.datafilterslider;
+
+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/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/datatable/Report.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/datatable/Report.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/datatable/Report.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,17 @@
+package org.richfaces.demo.datatable;
+
+import org.richfaces.datatable.ExpenseReport;
+
+public class Report {
+ ExpenseReport expReport;
+
+ public ExpenseReport getExpReport() {
+ if (expReport == null)
+ expReport = new ExpenseReport();
+ return expReport;
+ }
+
+ public void setExpReport(ExpenseReport expReport) {
+ this.expReport = expReport;
+ }
+}
Added: trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/dnd/DndBean.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/dnd/DndBean.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/dnd/DndBean.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,79 @@
+package org.richfaces.demo.dnd;
+
+import java.util.ArrayList;
+
+public class DndBean {
+ private ArrayList containerPHP;
+ private ArrayList containerCF;
+ private ArrayList containerDNET;
+ private ArrayList frameworks;
+
+ public ArrayList getContainerCF() {
+ return containerCF;
+ }
+ public void setContainerCF(ArrayList containerCF) {
+ this.containerCF = containerCF;
+ }
+ public ArrayList getContainerDNET() {
+ return containerDNET;
+ }
+ public void setContainerDNET(ArrayList containerDNET) {
+ this.containerDNET = containerDNET;
+ }
+ public ArrayList getContainerPHP() {
+ return containerPHP;
+ }
+ public void setContainerPHP(ArrayList containerPHP) {
+ this.containerPHP = containerPHP;
+ }
+ public ArrayList getFrameworks() {
+ if (frameworks == null)
+ initList();
+ return frameworks;
+ }
+ public void setFrameworks(ArrayList frameworks) {
+ this.frameworks = frameworks;
+ }
+
+ public void moveFramework(Object fm, Object family) {
+ ArrayList target = null;
+ if ("PHP".equals(family)) target = containerPHP;
+ else if ("DNET".equals(family)) target = containerDNET;
+ else if ("CF".equals(family)) target = containerCF;
+
+ if (target != null) {
+ int ind = frameworks.indexOf(fm);
+ if (ind > -1) {
+ target.add(frameworks.get(ind));
+ frameworks.remove(ind);
+ }
+
+ }
+ }
+
+ public String reset() {
+
+ initList();
+ return null;
+
+ }
+
+ private void initList() {
+ frameworks = new ArrayList();
+ frameworks.add(new Framework("Flexible Ajax", "PHP"));
+ frameworks.add(new Framework("ajaxCFC", "CF"));
+ frameworks.add(new Framework("AJAXEngine", "DNET"));
+ frameworks.add(new Framework("AjaxAC", "PHP"));
+ frameworks.add(new Framework("AJAXEngine", "DNET"));
+ frameworks.add(new Framework("MonoRail", "DNET"));
+ frameworks.add(new Framework("wddxAjax", "CF"));
+ frameworks.add(new Framework("AJAX AGENT", "PHP"));
+ frameworks.add(new Framework("FastPage", "DNET"));
+ frameworks.add(new Framework("JSMX", "CF"));
+ frameworks.add(new Framework("AJAXEngine", "DNET"));
+ containerPHP = new ArrayList();
+ containerCF = new ArrayList();
+ containerDNET = new ArrayList();
+ }
+
+}
Added: trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/dnd/EventBean.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/dnd/EventBean.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/dnd/EventBean.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,24 @@
+package org.richfaces.demo.dnd;
+
+
+ import org.ajax4jsf.dnd.event.DropEvent;
+ import org.ajax4jsf.dnd.event.DropListener;
+ import org.ajax4jsf.dnd.Dropzone;
+
+
+ public class EventBean implements DropListener {
+ private org.richfaces.demo.dnd.DndBean dndBean;
+
+ public void processDrop(DropEvent dropEvent) {
+ Dropzone dropzone = (Dropzone) dropEvent.getComponent();
+ dndBean.moveFramework(dropEvent.getDragValue(), dropzone.getDropValue());
+ }
+
+ public org.richfaces.demo.dnd.DndBean getDndBean() {
+ return dndBean;
+ }
+
+ public void setDndBean(org.richfaces.demo.dnd.DndBean dndBean) {
+ this.dndBean = dndBean;
+ }
+ }
\ No newline at end of file
Added: trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/dnd/Framework.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/dnd/Framework.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/dnd/Framework.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,25 @@
+package org.richfaces.demo.dnd;
+
+public class Framework {
+ private String name;
+ private String family;
+ public String getFamily() {
+ return family;
+ }
+ public void setFamily(String family) {
+ this.family = family;
+ }
+ public String getName() {
+ return name;
+ }
+ public void setName(String name) {
+ this.name = name;
+ }
+ public Framework(String name, String family) {
+ super();
+ this.name = name;
+ this.family = family;
+ }
+
+
+}
Added: trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/gmap/Bean.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/gmap/Bean.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/gmap/Bean.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,112 @@
+package org.richfaces.demo.gmap;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Iterator;
+
+import javax.faces.context.ExternalContext;
+import javax.faces.context.FacesContext;
+
+
+public class Bean {
+
+ private ArrayList point;
+ private String currentId;
+ private int zoom;
+ private String gmapkey;
+
+
+ public String getCurrentId() {
+ return currentId;
+ }
+
+
+
+ public void setCurrentId(String currentId) {
+ this.currentId = currentId;
+ }
+
+
+
+ public ArrayList getPoint() {
+ if (point == null)
+ initData();
+ return point;
+ }
+
+
+
+ public void setPoint(ArrayList point) {
+ this.point = point;
+ }
+
+
+ public Place getCurrentPlace() {
+ Iterator it = point.iterator();
+ while (it.hasNext()) {
+ Place pl = (Place)it.next();
+ if (currentId.equals(pl.getId())) {
+ zoom = pl.getZoom(); //sync with zoom of new place
+ return pl;
+ }
+ }
+ return (Place)point.get(0);
+ }
+
+ private void initData() {
+ point = new ArrayList();
+ point.add(new Place ("goldengate", "/org/richfaces/demo/gmap/images/gold.gif", "37.81765", "-122.477603" , 14,
+ "Golden Gate Bridge, San Francisco"));
+ point.add(new Place ("eiffeltower", "/org/richfaces/demo/gmap/images//tower.gif", "48.858489", "2.295295" , 17,
+ "Eiffel Tower, Paris"));
+ point.add(new Place ("pyramids", "/org/richfaces/demo/gmap/images/pyramids.gif", "29.977785", "31.132915" , 15,
+ "Pyramids of Egypt, Giza"));
+ point.add(new Place ("exadel", "/org/richfaces/demo/gmap/images/exadel.gif", "37.971796", "-122.042334" , 18,
+ "Headquarter of Exadel, Inc , Concord"));
+ currentId = "eiffeltower";
+ }
+
+
+
+ public int getZoom() {
+ return zoom;
+ }
+
+
+
+ public void setZoom(int zoom) {
+ this.zoom = zoom;
+ }
+
+
+
+ public String getGmapkey() {
+ if (gmapkey == null) {
+ gmapkey = createKey();
+ }
+ return gmapkey;
+ }
+
+ private String createKey() {
+
+ HashMap hosts = new HashMap();
+ hosts.put("localhost", "ABQIAAAAxU6W9QEhFLMNdc3ATIu-VxT2yXp_ZAY8_ufC3CFXhHIE1NvwkxRkrpOGzxH8_ud3inE9pG1845-FCA");
+ hosts.put("localhost:8080", "ABQIAAAAxU6W9QEhFLMNdc3ATIu-VxTwM0brOpm-All5BF6PoaKBxRWWERTHxF5cK19oAMu3MP89kWdchuCH6w");
+ hosts.put("livedemo.exadel.com", "ABQIAAAAxU6W9QEhFLMNdc3ATIu-VxRl-RYVoXwacweAQq3rWvtlmS78MhRst9EH2cahrIp0_HHi_U1Zn7o1Fg");
+
+ ExternalContext ec = FacesContext.getCurrentInstance().getExternalContext();
+ String host = (String)ec.getRequestHeaderMap().get("host");
+ String key = (String)hosts.get(host);
+ if (key != null)
+ return key;
+ else
+ return "get the key for your domain at http://www.google.com/apis/maps/signup.html";
+
+ }
+
+
+ public void setGmapkey(String gmapkey) {
+ this.gmapkey = gmapkey;
+ }
+
+}
Added: trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/gmap/Place.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/gmap/Place.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/gmap/Place.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,58 @@
+package org.richfaces.demo.gmap;
+
+public class Place {
+ private String pic;
+ private String id;
+ private String lat;
+ private String lng;
+ private int zoom;
+ private String desc;
+
+
+ public String getDesc() {
+ return desc;
+ }
+ public void setDesc(String desc) {
+ this.desc = desc;
+ }
+ public Place(String id, String pic, String lat, String lng, int zoom, String desc) {
+ super();
+ this.id = id;
+ this.pic = pic;
+ this.lat = lat;
+ this.lng = lng;
+ this.zoom = zoom;
+ this.desc = desc;
+ }
+ public String getId() {
+ return id;
+ }
+ public void setId(String id) {
+ this.id = id;
+ }
+ public String getLat() {
+ return lat;
+ }
+ public void setLat(String lat) {
+ this.lat = lat;
+ }
+ public String getLng() {
+ return lng;
+ }
+ public void setLng(String lng) {
+ this.lng = lng;
+ }
+ public int getZoom() {
+ return zoom;
+ }
+ public void setZoom(int zoom) {
+ this.zoom = zoom;
+ }
+ public String getPic() {
+ return pic;
+ }
+ public void setPic(String pic) {
+ this.pic = pic;
+ }
+}
+
Added: trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/inputnumberslider/ValueBean.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/inputnumberslider/ValueBean.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/inputnumberslider/ValueBean.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,14 @@
+package org.richfaces.demo.inputnumberslider;
+
+public class ValueBean {
+ private Integer value;
+
+ public Integer getValue() {
+ return value;
+ }
+
+ public void setValue(Integer value) {
+ this.value = value;
+ }
+
+}
Added: trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/paint2d/PaintBean.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/paint2d/PaintBean.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/paint2d/PaintBean.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,38 @@
+package org.richfaces.demo.paint2d;
+
+
+import java.awt.Color;
+import java.awt.Font;
+import java.awt.Graphics2D;
+import java.awt.geom.AffineTransform;
+
+public class PaintBean {
+
+ private int fontSize;
+
+ public void paint(Graphics2D g2d, Object obj) {
+
+ PaintData data = (PaintData) obj;
+
+ int testLenght = data.text.length();
+ fontSize = testLenght < 8? 40 : 40 - (testLenght - 8);
+ if (fontSize < 12)fontSize = 12;
+ Font font = new Font("Serif", Font.HANGING_BASELINE, fontSize);
+ g2d.setFont(font);
+
+ int x = 10;
+ int y = fontSize*5/2;
+ g2d.translate(x, y);
+ Color color = new Color(data.color );
+
+ g2d.setPaint(new Color(color.getRed(),color.getGreen(), color.getBlue(), 30));
+ AffineTransform origTransform = g2d.getTransform();
+ g2d.shear(-0.5*data.scale, 0);
+ g2d.scale(1, data.scale);
+ g2d.drawString(data.text, 0, 0);
+
+ g2d.setTransform(origTransform);
+ g2d.setPaint(color);
+ g2d.drawString(data.text, 0, 0);
+ }
+}
Added: trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/paint2d/PaintData.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/paint2d/PaintData.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/paint2d/PaintData.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,28 @@
+package org.richfaces.demo.paint2d;
+
+import java.io.Serializable;
+
+public class PaintData implements Serializable{
+ String text;
+ int color;
+ float scale;
+ public int getColor() {
+ return color;
+ }
+ public void setColor(int color) {
+ this.color = color;
+ }
+ public float getScale() {
+ return scale;
+ }
+ public void setScale(float scale) {
+ this.scale = scale;
+ }
+
+ public String getText() {
+ return text;
+ }
+ public void setText(String text) {
+ this.text = text;
+ }
+}
Added: trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/sb/Data.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/sb/Data.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/sb/Data.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,31 @@
+package org.richfaces.demo.sb;
+
+import java.io.Serializable;
+
+public class Data implements Serializable {
+ private String text;
+
+ private String label;
+
+ public Data(String text, String label) {
+ this.text = text;
+ this.label = label;
+ }
+
+ 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;
+ }
+}
+
Added: trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/sb/SuggestionBox.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/sb/SuggestionBox.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/sb/SuggestionBox.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,227 @@
+package org.richfaces.demo.sb;
+
+import org.richfaces.renderkit.html.SuggestionBoxRenderer;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+import java.io.Serializable;
+
+public class SuggestionBox implements Serializable {
+ /**
+ *
+ */
+ private static final long serialVersionUID = 1L;
+
+ private String property;
+
+ private ArrayList cities;
+
+ private ArrayList data;
+ private ArrayList tokens;
+
+ private String rows;
+ private String first;
+ private String cellspacing;
+ private String cellpadding;
+ private String minchars;
+ private String frequency;
+ private String rules;
+ private boolean check;
+ private String shadowDepth = Integer.toString(SuggestionBoxRenderer.SHADOW_DEPTH);
+ private String border = "1";
+ private String width = "200";
+ private String height = "150";
+ private String shadowOpacity = "4";
+
+ private static final String [] cit = {"Abba", "Abbeville", "Acworth", "Adairsville", "Adel", "Adrian", "Ailey", "Alamo", "Alapaha", "Albany", "Allenhurst", "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 SuggestionBox() {
+ this.rows = "0";
+ this.first = "0";
+ this.cellspacing = "2";
+ this.cellpadding = "2";
+ this.minchars = "1";
+ this.frequency = "0";
+ this.rules = "none";
+
+ setCities(getAllData());
+ }
+
+ public List autocomplete(Object suggest) {
+ String pref = (String)suggest;
+ 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 String getFirst() {
+ return first;
+ }
+
+ public int getIntFirst() {
+ return Integer.parseInt(getFirst());
+ }
+
+ public void setFirst(String 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 getShadowDepth() {
+ return shadowDepth;
+ }
+
+ public void setShadowDepth(String shadowDepth) {
+ this.shadowDepth = shadowDepth;
+ }
+
+ public String getBorder() {
+ return border;
+ }
+
+ public void setBorder(String border) {
+ this.border = border;
+ }
+
+ public String getWidth() {
+ return width;
+ }
+
+ public void setWidth(String width) {
+ this.width = width;
+ }
+
+ 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;
+ }
+}
Added: trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/togglePanel/ToggleBean.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/togglePanel/ToggleBean.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/togglePanel/ToggleBean.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,35 @@
+/**
+ *
+ */
+package org.richfaces.demo.togglePanel;
+
+
+
+/**
+ * @author ishabalov
+ *
+ */
+public class ToggleBean {
+ private Object skinChooserState1;
+ private Object skinChooserState2;
+ private Object skinChooserState3;
+ public Object getSkinChooserState1() {
+ return skinChooserState1;
+ }
+ public void setSkinChooserState1(Object skinChooserState1) {
+ this.skinChooserState1 = skinChooserState1;
+ }
+ public Object getSkinChooserState2() {
+ return skinChooserState2;
+ }
+ public void setSkinChooserState2(Object skinChooserState2) {
+ this.skinChooserState2 = skinChooserState2;
+ }
+ public Object getSkinChooserState3() {
+ return skinChooserState3;
+ }
+ public void setSkinChooserState3(Object skinChooserState3) {
+ this.skinChooserState3 = skinChooserState3;
+ }
+
+}
Added: trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/toolBar/TbBean.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/toolBar/TbBean.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/toolBar/TbBean.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,20 @@
+package org.richfaces.demo.toolBar;
+
+public class TbBean {
+ private String groupSeparator;
+ private String groupItemSeparator;
+ public String getGroupItemSeparator() {
+ return groupItemSeparator;
+ }
+ public void setGroupItemSeparator(String groupItemSeparator) {
+ this.groupItemSeparator = groupItemSeparator;
+ }
+ public String getGroupSeparator() {
+ return groupSeparator;
+ }
+ public void setGroupSeparator(String groupSeparator) {
+ this.groupSeparator = groupSeparator;
+ }
+
+
+}
Added: trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/tree/Album.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/tree/Album.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/tree/Album.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,96 @@
+package org.richfaces.demo.tree;
+
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+
+import org.richfaces.component.TreeNode;
+
+public class Album implements TreeNode {
+ /**
+ *
+ */
+ private static final long serialVersionUID = 6514596192023597908L;
+ private long id;
+ private Map songs = new HashMap();
+ private String title;
+ private Integer year;
+ private Artist artist;
+
+ public Album(long id) {
+ this.id = id;
+ }
+
+ public void addSong(Song song) {
+ addChild(Long.toString(song.getId()), song);
+ song.setParent(this);
+ }
+ public void addChild(Object identifier, TreeNode child) {
+ songs.put(identifier, child);
+ }
+
+ public TreeNode getChild(Object id) {
+ return (TreeNode) songs.get(id);
+ }
+
+ public Iterator getChildren() {
+ return songs.entrySet().iterator();
+ }
+
+ public Object getData() {
+ return this;
+ }
+
+ public TreeNode getParent() {
+ return artist;
+ }
+
+ public boolean isLeaf() {
+ return songs.isEmpty();
+ }
+
+ public void removeChild(Object id) {
+ songs.remove(id);
+ }
+
+ public void setData(Object data) {
+ }
+
+ public void setParent(TreeNode parent) {
+ this.artist = (Artist) parent;
+ }
+
+ public String getTitle() {
+ return title;
+ }
+
+ public void setTitle(String title) {
+ this.title = title;
+ }
+
+ public Integer getYear() {
+ return year;
+ }
+
+ public void setYear(Integer year) {
+ this.year = year;
+ }
+
+ public long getId() {
+ return id;
+ }
+
+ public Artist getArtist() {
+ return artist;
+ }
+
+ public void setArtist(Artist artist) {
+ this.artist = artist;
+ }
+
+ public String getType() {
+ return "album";
+ }
+
+
+}
Added: trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/tree/Artist.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/tree/Artist.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/tree/Artist.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,87 @@
+package org.richfaces.demo.tree;
+
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+
+import org.richfaces.component.TreeNode;
+
+public class Artist implements TreeNode {
+ private long id;
+ private Map albums = new HashMap();
+ private String name;
+ private Library library;
+
+
+ /**
+ *
+ */
+ private static final long serialVersionUID = 6831863694596474846L;
+
+ public Artist(long id) {
+ this.id = id;
+ }
+
+ public void addAlbum(Album album) {
+ addChild(Long.toString(album.getId()), album);
+ album.setParent(this);
+ }
+
+ public void addChild(Object identifier, TreeNode child) {
+ albums.put(identifier, child);
+ }
+
+ public TreeNode getChild(Object id) {
+ return (TreeNode) albums.get(id);
+ }
+
+ public Iterator getChildren() {
+ return albums.entrySet().iterator();
+ }
+
+ public Object getData() {
+ return this;
+ }
+
+ public TreeNode getParent() {
+ return library;
+ }
+
+ public boolean isLeaf() {
+ return albums.isEmpty();
+ }
+
+ public void removeChild(Object id) {
+ albums.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 "artist";
+ }
+}
Added: trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/tree/Library.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/tree/Library.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/tree/Library.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,146 @@
+package org.richfaces.demo.tree;
+
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+import java.util.StringTokenizer;
+
+import org.richfaces.component.TreeNode;
+
+public class Library implements TreeNode {
+ /**
+ *
+ */
+ private static final long serialVersionUID = -3530085227471752526L;
+ private Map artists = null;
+ private Object state1;
+ private Object state2;
+
+ private Map getArtists() {
+ if (this.artists==null) {
+ initData();
+ }
+ return this.artists;
+ }
+ public void addArtist(Artist artist) {
+ addChild(Long.toString(artist.getId()), artist);
+ artist.setParent(this);
+ }
+
+ public void addChild(Object identifier, TreeNode child) {
+ getArtists().put(identifier, child);
+ }
+
+ public TreeNode getChild(Object id) {
+ return (TreeNode) getArtists().get(id);
+ }
+
+ public Iterator getChildren() {
+ return getArtists().entrySet().iterator();
+ }
+
+ public Object getData() {
+ return this;
+ }
+
+ public TreeNode getParent() {
+ return null;
+ }
+
+ public boolean isLeaf() {
+ return getArtists().isEmpty();
+ }
+
+ public void removeChild(Object id) {
+ getArtists().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 albumCache = new HashMap();
+ private Map artistCache = new HashMap();
+ private Artist getArtistByName(String name, Library library) {
+ Artist artist = (Artist)artistCache.get(name);
+ if (artist==null) {
+ artist = new Artist(getNextId());
+ artist.setName(name);
+ artistCache.put(name, artist);
+ library.addArtist(artist);
+ }
+ return artist;
+ }
+ private Album getAlbumByTitle(String title, Artist artist) {
+ Album album = (Album)albumCache.get(title);
+ if (album==null) {
+ album = new Album(getNextId());
+ album.setTitle(title);
+ albumCache.put(title, album);
+ artist.addAlbum(album);
+ }
+ return album;
+ }
+
+ private void initData() {
+ artists = new HashMap();
+ InputStream is = this.getClass().getClassLoader().getResourceAsStream("org/richfaces/demo/tree/data.txt");
+ ByteArrayOutputStream os = new ByteArrayOutputStream();
+ byte[] rb = new byte[1024];
+ int read;
+ try {
+ do {
+ read = is.read(rb);
+ if (read>0) {
+ os.write(rb, 0, read);
+ }
+ } while (read>0);
+ String buf = os.toString();
+ StringTokenizer toc1 = new StringTokenizer(buf,"\n");
+ while (toc1.hasMoreTokens()) {
+ String str = toc1.nextToken();
+ StringTokenizer toc2 = new StringTokenizer(str, "\t");
+ String songTitle = toc2.nextToken();
+ String artistName = toc2.nextToken();
+ String albumTitle = toc2.nextToken();
+ toc2.nextToken();
+ toc2.nextToken();
+ String albumYear = toc2.nextToken();
+ Artist artist = getArtistByName(artistName,this);
+ Album album = getAlbumByTitle(albumTitle, artist);
+ album.setYear(new Integer(albumYear));
+ Song song = new Song(getNextId());
+ song.setTitle(songTitle);
+ album.addSong(song);
+ }
+ } catch (IOException e) {
+ throw new RuntimeException(e);
+ }
+ }
+ public Object getState1() {
+ return state1;
+ }
+ public void setState1(Object state1) {
+ this.state1 = state1;
+ }
+ public Object getState2() {
+ return state2;
+ }
+ public void setState2(Object state2) {
+ this.state2 = state2;
+ }
+}
Added: trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/tree/Song.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/tree/Song.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/java/org/richfaces/demo/tree/Song.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,97 @@
+package org.richfaces.demo.tree;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+
+import org.richfaces.component.TreeNode;
+
+public class Song implements TreeNode {
+ /**
+ *
+ */
+ private static final long serialVersionUID = 7155620465939481885L;
+ private long id;
+ private String title;
+ private String genre;
+ private int trackNumber;
+ private Album album;
+
+ public Song(long id) {
+ this.id = id;
+ }
+
+ public void addChild(Object identifier, TreeNode child) {
+ throw new UnsupportedOperationException("Songs do not have children");
+ }
+
+ public TreeNode getChild(Object id) {
+ throw new UnsupportedOperationException("Songs 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 album;
+ }
+
+ public boolean isLeaf() {
+ return true;
+ }
+
+ public void removeChild(Object id) {
+ throw new UnsupportedOperationException("Songs do not have children");
+ }
+
+ public void setData(Object data) {
+ }
+
+ public void setParent(TreeNode parent) {
+ this.album = (Album) parent;
+ }
+
+ public Album getAlbum() {
+ return album;
+ }
+
+ public void setAlbum(Album album) {
+ this.album = album;
+ }
+
+ public String getGenre() {
+ return genre;
+ }
+
+ public void setGenre(String genre) {
+ this.genre = genre;
+ }
+
+ public String getTitle() {
+ return title;
+ }
+
+ public void setTitle(String title) {
+ this.title = title;
+ }
+
+ public int getTrackNumber() {
+ return trackNumber;
+ }
+
+ public void setTrackNumber(int trackNumber) {
+ this.trackNumber = trackNumber;
+ }
+
+ public long getId() {
+ return id;
+ }
+ public String getType() {
+ return "song";
+ }
+}
Added: trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/common/components.properties
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/common/components.properties (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/common/components.properties 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,23 @@
+# list of components in comma-separated format
+#id=name,iconImage,captionImage,devGuideLocation,tldDocLocation,javaDocLocation
+panel= Panel, /images/ico_panel.gif, /images/cn_panel.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/panel.html, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/pane..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/panel.jsf
+separator= Separator, /images/ico_separator.gif, /images/cn_separator.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/separat..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/sepa..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/separator.jsf
+spacer= Spacer, /images/ico_spacer.gif, /images/cn_spacer.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/spacer...., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/spac..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/spacer.jsf
+tabPanel= Tab Panel, /images/ico_tabpanel.gif, /images/cn_tabpanel.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/tabPane..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/tabP..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/tabPanel.jsf
+inputNumberSlider= Input Number Slider, /images/ico_slider.gif, /images/cn_slider.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/inputNu..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/inpu..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/inputNumberSlider.jsf
+inputNumberSpinner= Input Number Spinner, /images/ico_spinner.gif, /images/cn_spinner.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/inputNu..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/inpu..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/inputNumberSpinner.jsf
+dataFilterSlider= Data Filter Slider, /images/ico_DataFilterSlider.gif, /images/cn_DataFilterSlider.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/dataFil..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/data..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/dataFilterSlider.jsf
+dataTable= Data Table, /images/ico_DataTable.gif, /images/cn_DataTable.gif, http\://dem01.exadel.com\:18091/openexadel-org/richdocs/devguide/dataTable.html, http\://dem01.exadel.com\:18091/openexadel-org/richdocs/tlddoc/rich/dataTable.html, http\://dem01.exadel.com\:18091/openexadel-org/richdocs/javadoc/org/richfaces/component/UIDataTable.html, /richfaces/dataTable.jsf
+gmap= Google Map, /images/ico_GoogleMap.gif, /images/cn_GoogleMap.gif, http\://dem01.exadel.com\:18091/openexadel-org/richdocs/devguide/gmap.html, http\://dem01.exadel.com\:18091/openexadel-org/richdocs/tlddoc/rich/gmap.html, http\://dem01.exadel.com\:18091/openexadel-org/richdocs/javadoc/org/richfaces/component/UIGmap.html, /richfaces/gmap.jsf
+paint2d= Paint2D, /images/ico_Paint2D.gif, /images/cn_Paint2D.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/paint2D..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/pain..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/paint2D.jsf
+toolBar= Tool Bar, /images/ico_ToolBar.gif, /images/cn_ToolBar.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/toolBar..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/tool..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/toolBar.jsf
+simpleTogglePanel= Simple Toggle Panel, /images/ico_SimpleTogglePanel.gif, /images/cn_SimpleTogglePanel.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/simpleT..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/simp..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/simpleTogglePanel.jsf
+dragIndicator= Drag Indicator, /images/ico_DragIndicator.gif, /images/cn_DragIndicator.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/dragInd..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/drag..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/dragSupport.jsf
+dragSupport= Drag Support, /images/ico_DragSupport.gif, /images/cn_DragSupport.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/dragSup..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/drag..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/dragSupport.jsf
+dropSupport= Drop Support, /images/ico_DropSupport.gif, /images/cn_DropSupport.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/dropSup..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/drop..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/dragSupport.jsf
+panelBar= Panel Bar, /images/ico_PanelBar.gif, /images/cn_PanelBar.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/panelBa..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/pane..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/panelBar.jsf
+tree= Tree, /images/ico_Tree.gif, /images/cn_tree.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/tree.html, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/tree..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/tree.jsf
+modalPanel= Modal Panel, /images/ico_ModalPanel.gif, /images/cn_ModalPanel.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/modalPa..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/moda..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/modalPanel.jsf
+togglePanel= Toggle Panel, /images/ico_TogglePanel.gif, /images/cn_TogglePanel.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/toggleP..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/Togg..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/togglePanel.jsf
+suggestionBox= Suggestion Box, /images/ico_SuggestionBox.gif, /images/cn_SuggestionBox.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/suggest..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/sugg..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/suggestionBox.jsf
+dataTableScroller= Data Table Scroller, /images/ico_DataTableScroller.gif, /images/cn_DataTableScroller.gif, http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/devguide/datascr..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/tlddoc/rich/data..., http://www.jboss.org/projects/jbossajx4jsf/freezone/docs/apidoc/org/richf..., /richfaces/dataTableScroller.jsf
Added: trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/gmap/images/exadel.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/gmap/images/exadel.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/gmap/images/gold.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/gmap/images/gold.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/gmap/images/pyramids.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/gmap/images/pyramids.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/gmap/images/tower.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/gmap/images/tower.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/tree/data.txt
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/tree/data.txt (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/resources/org/richfaces/demo/tree/data.txt 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,42 @@
+Yes Sir,I Can Boogie Baccara Grand Collection 6750318 242 1 1999 7/4/2005 2:15 PM 5/7/2005 3:36 PM 220 44100 AAC audio file www.allofmp3.com M:\My Music\Baccara\Grand Collection\01 Yes Sir,I Can Boogie.m4a
+Soryy,i`m A Lady Baccara Grand Collection 7643797 266 2 1999 7/4/2005 2:15 PM 5/7/2005 3:36 PM 227 44100 AAC audio file www.allofmp3.com M:\My Music\Baccara\Grand Collection\02 Soryy,i`m A Lady.m4a
+A Quien Le Importa Baccara Grand Collection 7649974 270 3 1999 7/4/2005 2:15 PM 5/7/2005 3:36 PM 224 44100 AAC audio file www.allofmp3.com M:\My Music\Baccara\Grand Collection\03 A Quien Le Importa.m4a
+The Devil Send You To Laredo Baccara Grand Collection 6084233 222 4 1999 7/4/2005 2:15 PM 5/7/2005 3:36 PM 216 44100 AAC audio file www.allofmp3.com M:\My Music\Baccara\Grand Collection\04 The Devil Send You To Laredo.m4a
+Ni Mas Ni Menos Baccara Grand Collection 5323998 219 5 1999 7/4/2005 2:15 PM 5/7/2005 3:36 PM 192 44100 AAC audio file www.allofmp3.com M:\My Music\Baccara\Grand Collection\05 Ni Mas Ni Menos.m4a
+Parlez-vous Francais? Baccara Grand Collection 7620098 264 6 1999 7/4/2005 2:15 PM 5/7/2005 3:36 PM 228 44100 AAC audio file www.allofmp3.com M:\My Music\Baccara\Grand Collection\06 Parlez-vous Francais_.m4a
+Que Naadie Sepa Mi Sufrir Baccara Grand Collection 6702931 228 7 1999 7/4/2005 2:15 PM 5/7/2005 3:36 PM 232 44100 AAC audio file www.allofmp3.com M:\My Music\Baccara\Grand Collection\07 Que Naadie Sepa Mi Sufrir.m4a
+Borriquito Baccara Grand Collection 5275303 226 8 1999 7/4/2005 2:15 PM 5/7/2005 3:36 PM 184 44100 AAC audio file www.allofmp3.com M:\My Music\Baccara\Grand Collection\08 Borriquito.m4a
+Love Me Please Love Me Baccara Grand Collection 8061128 278 9 1999 7/4/2005 2:15 PM 5/7/2005 3:36 PM 229 44100 AAC audio file www.allofmp3.com M:\My Music\Baccara\Grand Collection\09 Love Me Please Love Me.m4a
+Paloma Blanca Baccara Grand Collection 6897984 236 10 1999 7/4/2005 2:15 PM 5/7/2005 3:36 PM 231 44100 AAC audio file www.allofmp3.com M:\My Music\Baccara\Grand Collection\10 Paloma Blanca.m4a
+Me Tienes Desenganada Baccara Grand Collection 6989122 238 11 1999 7/4/2005 2:15 PM 5/7/2005 3:36 PM 232 44100 AAC audio file www.allofmp3.com M:\My Music\Baccara\Grand Collection\11 Me Tienes Desenganada.m4a
+El Porompompero Baccara Grand Collection 6711469 236 12 1999 7/4/2005 2:15 PM 5/7/2005 3:36 PM 225 44100 AAC audio file www.allofmp3.com M:\My Music\Baccara\Grand Collection\12 El Porompompero.m4a
+Yes Sir, I Can Boogie Baccara Grand Collection 4820326 255 13 1999 7/4/2005 2:15 PM 5/7/2005 3:36 PM 149 44100 AAC audio file www.allofmp3.com M:\My Music\Baccara\Grand Collection\13 Yes Sir, I Can Boogie.m4a
+Sorry,i`m A Lady Baccara Grand Collection 5844870 217 14 1999 7/4/2005 2:15 PM 5/7/2005 3:36 PM 213 44100 AAC audio file www.allofmp3.com M:\My Music\Baccara\Grand Collection\14 Sorry,i`m A Lady.m4a
+Brandenburg Concerto No 1-1 I Bach, Johann Sebastian Forever Classics Other 6778589 282 1996 7/4/2005 2:00 PM 4/24/2004 7:31 AM 192 44100 MPEG audio file M:\My Music\Bach, Johann Sebastian\Forever Classics\Brandenburg Concerto No 1-1 I.mp3
+Brandenburg Concerto No 1-2 I Bach, Johann Sebastian Forever Classics Other 6181116 257 1996 7/4/2005 2:00 PM 4/24/2004 7:31 AM 192 44100 MPEG audio file M:\My Music\Bach, Johann Sebastian\Forever Classics\Brandenburg Concerto No 1-2 I.mp3
+Brandenburg Concerto No 1-3 I Bach, Johann Sebastian Forever Classics Other 8123999 338 1996 7/4/2005 2:00 PM 4/24/2004 7:31 AM 192 44100 MPEG audio file M:\My Music\Bach, Johann Sebastian\Forever Classics\Brandenburg Concerto No 1-3 I.mp3
+Brandenburg Concerto No 1-4 I Bach, Johann Sebastian Forever Classics Other 12878076 536 1996 7/4/2005 2:00 PM 4/24/2004 7:31 AM 192 44100 MPEG audio file M:\My Music\Bach, Johann Sebastian\Forever Classics\Brandenburg Concerto No 1-4 I.mp3
+Brandenburg Concerto No 2-1 I Bach, Johann Sebastian Forever Classics Other 7811784 325 1996 7/4/2005 2:00 PM 4/24/2004 7:31 AM 192 44100 MPEG audio file M:\My Music\Bach, Johann Sebastian\Forever Classics\Brandenburg Concerto No 2-1 I.mp3
+Brandenburg Concerto No 2-2 I Bach, Johann Sebastian Forever Classics Other 5467033 227 1996 7/4/2005 2:00 PM 4/24/2004 7:31 AM 192 44100 MPEG audio file M:\My Music\Bach, Johann Sebastian\Forever Classics\Brandenburg Concerto No 2-2 I.mp3
+Brandenburg Concerto No 2-3 I Bach, Johann Sebastian Forever Classics Other 4503428 187 1996 7/4/2005 2:00 PM 4/24/2004 7:31 AM 192 44100 MPEG audio file M:\My Music\Bach, Johann Sebastian\Forever Classics\Brandenburg Concerto No 2-3 I.mp3
+Brandenburg Concerto No 3-1 I Bach, Johann Sebastian Forever Classics Other 10262487 427 1996 7/4/2005 2:00 PM 4/24/2004 7:31 AM 192 44100 MPEG audio file M:\My Music\Bach, Johann Sebastian\Forever Classics\Brandenburg Concerto No 3-1 I.mp3
+Brandenburg Concerto No 3-2 I Bach, Johann Sebastian Forever Classics Other 8596711 358 1996 7/4/2005 2:00 PM 4/24/2004 7:31 AM 192 44100 MPEG audio file M:\My Music\Bach, Johann Sebastian\Forever Classics\Brandenburg Concerto No 3-2 I.mp3
+Organ Concerto In D Minor, BW Bach, Johann Sebastian Forever Classics Other 17580117 732 1996 7/4/2005 2:00 PM 4/24/2004 7:31 AM 192 44100 MPEG audio file M:\My Music\Bach, Johann Sebastian\Forever Classics\Organ Concerto In D Minor, BW.mp3
+Toccata & Fugue In D Minor, B Bach, Johann Sebastian Forever Classics Other 13384016 557 1996 7/4/2005 2:00 PM 4/24/2004 7:31 AM 192 44100 MPEG audio file M:\My Music\Bach, Johann Sebastian\Forever Classics\Toccata & Fugue In D Minor, B.mp3
+The Road To Hell (Part 1) Chris Rea The Road To Hell 7734984 293 1 1989 3/3/2007 2:08 PM 5/9/2004 11:11 AM 209 44100 AAC audio file www.allofmp3.com 1 6/11/2004 11:06 PM M:\My Music\Chris Rea\The Road To Hell\01 The Road To Hell (Part 1).m4a
+The Road To Hell (Part 2) Chris Rea The Road To Hell 8279561 272 2 1989 3/3/2007 2:08 PM 5/9/2004 11:11 AM 241 44100 AAC audio file www.allofmp3.com 1 6/11/2004 11:10 PM M:\My Music\Chris Rea\The Road To Hell\02 The Road To Hell (Part 2).m4a
+You Must Be Evil Chris Rea The Road To Hell 7923206 261 3 1989 3/3/2007 2:08 PM 5/9/2004 11:11 AM 239 44100 AAC audio file www.allofmp3.com 1 6/11/2004 11:14 PM M:\My Music\Chris Rea\The Road To Hell\03 You Must Be Evil.m4a
+Texas Chris Rea The Road To Hell 8610554 310 4 1989 3/3/2007 2:08 PM 5/9/2004 11:11 AM 220 44100 AAC audio file www.allofmp3.com M:\My Music\Chris Rea\The Road To Hell\04 Texas.m4a
+Looking For A Rainbow Chris Rea The Road To Hell 13633770 484 5 1989 3/3/2007 2:08 PM 5/9/2004 11:11 AM 223 44100 AAC audio file www.allofmp3.com M:\My Music\Chris Rea\The Road To Hell\05 Looking For A Rainbow.m4a
+Your Warm And Tender Love Chris Rea The Road To Hell 7416353 273 6 1989 3/3/2007 2:08 PM 5/9/2004 11:11 AM 214 44100 AAC audio file www.allofmp3.com M:\My Music\Chris Rea\The Road To Hell\06 Your Warm And Tender Love.m4a
+Daytona Chris Rea The Road To Hell 9394003 306 7 1989 3/3/2007 2:08 PM 5/9/2004 11:11 AM 243 44100 AAC audio file www.allofmp3.com M:\My Music\Chris Rea\The Road To Hell\07 Daytona.m4a
+That`s What They Always Say Chris Rea The Road To Hell 7676117 268 8 1989 3/3/2007 2:08 PM 5/9/2004 11:11 AM 226 44100 AAC audio file www.allofmp3.com M:\My Music\Chris Rea\The Road To Hell\08 That`s What They Always Say.m4a
+Let`s Dance Chris Rea The Road To Hell 8243277 257 9 1989 3/3/2007 2:08 PM 5/9/2004 11:11 AM 254 44100 AAC audio file www.allofmp3.com M:\My Music\Chris Rea\The Road To Hell\09 Let`s Dance.m4a
+I Just Wanna Be With You Chris Rea The Road To Hell 6707876 221 10 1989 3/3/2007 2:08 PM 5/9/2004 11:11 AM 240 44100 AAC audio file www.allofmp3.com M:\My Music\Chris Rea\The Road To Hell\10 I Just Wanna Be With You.m4a
+Tell Me There`s A Heaven Chris Rea The Road To Hell 9665532 361 11 1989 3/3/2007 2:08 PM 5/9/2004 11:11 AM 212 44100 AAC audio file www.allofmp3.com M:\My Music\Chris Rea\The Road To Hell\11 Tell Me There`s A Heaven.m4a
+Storm on Serret Mountain David Miles Huber David Miles Huber Distant Thunder Blues 29298688 1831 1 1993 7/4/2005 1:58 PM 4/24/2004 7:30 AM 128 44100 MPEG audio file M:\My Music\David Miles Huber\Distant Thunder\01 Storm on Serret Mountain.mp3
+After the Storm David Miles Huber David Miles Huber Distant Thunder Blues 28840498 1802 2 1993 7/4/2005 1:59 PM 4/24/2004 7:30 AM 128 44100 MPEG audio file M:\My Music\David Miles Huber\Distant Thunder\02 After the Storm.mp3
+Storm on Serret Mountain David Miles Huber Relaxation & Meditation With Music & Nature - Distant Thunder misc 29319168 1832 1 7/4/2005 1:59 PM 4/24/2004 7:30 AM 128 44100 MPEG audio file M:\My Music\David Miles Huber\Relaxation & Meditation With Music & Nat\01 Storm on Serret Mountain.mp3
+Spring Showers David Miles Huber Relaxation & Meditation With Music & Nature - Distant Thunder misc 28790784 1799 2 7/4/2005 1:59 PM 4/24/2004 7:30 AM 128 44100 MPEG audio file M:\My Music\David Miles Huber\Relaxation & Meditation With Music & Nat\02 Spring Showers.mp3
+Exotic Journey David Miles Huber Relaxation & Meditation With Music & Nature - Tropical Rainforest misc 29294819 1830 1 1993 7/4/2005 1:59 PM 4/24/2004 7:30 AM 128 44100 MPEG audio file M:\My Music\David Miles Huber\Relaxation & Meditation With Music & Nat\01 Exotic Journey.mp3
+Evening Rain David Miles Huber Relaxation & Meditation With Music & Nature - Tropical Rainforest misc 28823552 1801 2 1993 7/4/2005 1:59 PM 4/24/2004 7:30 AM 128 44100 MPEG audio file M:\My Music\David Miles Huber\Relaxation & Meditation With Music & Nat\02 Evening Rain.mp3
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/META-INF/MANIFEST.MF
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/META-INF/MANIFEST.MF (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/META-INF/MANIFEST.MF 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,3 @@
+Manifest-Version: 1.0
+Class-Path:
+
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/WEB-INF/faces-config.xml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/WEB-INF/faces-config.xml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/WEB-INF/faces-config.xml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,142 @@
+<?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>org.richfaces.demo.common.SkinBean</managed-bean-class>
+ <managed-bean-scope>session</managed-bean-scope>
+ <managed-property>
+ <property-name>skin</property-name>
+ <property-class>java.lang.String</property-class>
+ <value>blueSky</value>
+ </managed-property>
+ </managed-bean>
+ <managed-bean>
+ <managed-bean-name>dfsBean</managed-bean-name>
+ <managed-bean-class>org.richfaces.demo.datafilterslider.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>dataTableScrollerBean</managed-bean-name>
+ <managed-bean-class>org.richfaces.datatablescroller.DataTableScrollerBean</managed-bean-class>
+ <managed-bean-scope>application</managed-bean-scope>
+ </managed-bean>
+ <managed-bean>
+ <managed-bean-name>toggleBean</managed-bean-name>
+ <managed-bean-class>org.richfaces.demo.togglePanel.ToggleBean</managed-bean-class>
+ <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+ <managed-bean>
+ <managed-bean-name>inventoryList</managed-bean-name>
+ <managed-bean-class>org.richfaces.demo.datafilterslider.DemoInventoryList</managed-bean-class>
+ <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+ <managed-bean>
+ <managed-bean-name>suggestionBox</managed-bean-name>
+ <managed-bean-class>org.richfaces.demo.sb.SuggestionBox</managed-bean-class>
+ <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+ <managed-bean>
+ <managed-bean-name>gmBean</managed-bean-name>
+ <managed-bean-class>org.richfaces.demo.gmap.Bean</managed-bean-class>
+ <managed-bean-scope>session</managed-bean-scope>
+ <managed-property>
+ <property-name>zoom</property-name>
+ <property-class>int</property-class>
+ <value>17</value>
+ </managed-property>
+ </managed-bean>
+ <managed-bean>
+ <managed-bean-name>environment</managed-bean-name>
+ <managed-bean-class>org.richfaces.demo.common.Environment</managed-bean-class>
+ <managed-bean-scope>session</managed-bean-scope>
+ <managed-property>
+ <property-name>params</property-name>
+ <property-class>java.util.Map</property-class>
+ <map-entries>
+ <map-entry>
+ <key>devguide-location</key>
+ <value>http://www.jboss.org/projects/jbossrichfaces/freezone/docs/devguide</value>
+ </map-entry>
+ <map-entry>
+ <key>tld-doc-location</key>
+ <value>http://www.jboss.org/projects/jbossrichfaces/freezone/docs/tlddoc</value>
+ </map-entry>
+ <map-entry>
+ <key>java-doc-location</key>
+ <value>http://www.jboss.org/projects/jbossrichfaces/freezone/docs/apidoc</value>
+ </map-entry>
+ </map-entries>
+ </managed-property>
+ </managed-bean>
+ <managed-bean>
+ <managed-bean-name>insValueBean</managed-bean-name>
+ <managed-bean-class>org.richfaces.demo.inputnumberslider.ValueBean</managed-bean-class>
+ <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+ <managed-bean>
+ <managed-bean-name>componentNavigator</managed-bean-name>
+ <managed-bean-class>org.richfaces.demo.common.ComponentNavigator</managed-bean-class>
+ <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+ <managed-bean>
+ <managed-bean-name>report</managed-bean-name>
+ <managed-bean-class>org.richfaces.demo.datatable.Report</managed-bean-class>
+ <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+ <managed-bean>
+ <managed-bean-name>tbBean</managed-bean-name>
+ <managed-bean-class>org.richfaces.demo.toolBar.TbBean</managed-bean-class>
+ <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+ <managed-bean>
+ <managed-bean-name>paintBean</managed-bean-name>
+ <managed-bean-class>org.richfaces.demo.paint2d.PaintBean</managed-bean-class>
+ <managed-bean-scope>request</managed-bean-scope>
+ </managed-bean>
+ <managed-bean>
+ <managed-bean-name>paintData</managed-bean-name>
+ <managed-bean-class>org.richfaces.demo.paint2d.PaintData</managed-bean-class>
+ <managed-bean-scope>request</managed-bean-scope>
+ <managed-property>
+ <property-name>color</property-name>
+ <property-class>int</property-class>
+ <value>1000</value>
+ </managed-property>
+ <managed-property>
+ <property-name>scale</property-name>
+ <property-class>float</property-class>
+ <value>2</value>
+ </managed-property>
+ <managed-property>
+ <property-name>text</property-name>
+ <property-class>java.lang.String</property-class>
+ <value>Paint 2D</value>
+ </managed-property>
+ </managed-bean>
+ <managed-bean>
+ <managed-bean-name>library</managed-bean-name>
+ <managed-bean-class>org.richfaces.demo.tree.Library</managed-bean-class>
+ <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+ <managed-bean>
+ <managed-bean-name>dndBean</managed-bean-name>
+ <managed-bean-class>org.richfaces.demo.dnd.DndBean</managed-bean-class>
+ <managed-bean-scope>session</managed-bean-scope>
+ </managed-bean>
+ <managed-bean>
+ <managed-bean-name>eventBean</managed-bean-name>
+ <managed-bean-class>org.richfaces.demo.dnd.EventBean</managed-bean-class>
+ <managed-bean-scope>request</managed-bean-scope>
+ <managed-property>
+ <property-name>dndBean</property-name>
+ <property-class>org.richfaces.demo.dnd.DndBean</property-class>
+ <value>#{dndBean}</value>
+ </managed-property>
+ </managed-bean>
+</faces-config>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/WEB-INF/faces-config.xml.l4t
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/WEB-INF/faces-config.xml.l4t (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/WEB-INF/faces-config.xml.l4t 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<PROCESS ENTITY="JSFProcess"/>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/WEB-INF/web.xml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/WEB-INF/web.xml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/WEB-INF/web.xml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,66 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<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>Richfaces Components demo</description>
+ <display-name>richfaces-demo</display-name>
+ <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>server</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>org.ajax4jsf.SKIN</param-name>
+ <param-value>#{skinBean.skin}</param-value>
+ </context-param>
+ <context-param>
+ <param-name>org.ajax4jsf.VIEW_HANDLERS</param-name>
+ <param-value>com.sun.facelets.FaceletViewHandler</param-value>
+ </context-param>
+ <context-param>
+ <param-name>javax.faces.CONFIG_FILES</param-name>
+ <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/richfaces-samples/richfaces-demo/src/main/webapp/css/common.css
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/css/common.css (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/css/common.css 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,234 @@
+form {
+ margin:0;
+ padding:0;
+}
+
+p {
+ margin-top: 15px;
+ margin-bottom: 5px;
+ font-size: 12px;
+ font-family: Verdana;
+}
+
+body{
+ margin : 0px;
+ background-position : top left;
+ background-repeat : no-repeat;
+ background-color : White;
+}
+
+.page_brick{
+ position : absolute;
+ top : 0px;
+ width : 998px;
+}
+
+li{
+ margin-top : 5px;
+ margin-bottom : 5px;
+ margin-left : -12px;
+}
+ul{
+ margin-top : 10px;
+ margin-bottom : 10px;
+}
+
+.sample-container {
+ padding: 8px 25px 5px 25px;
+}
+
+.top_navbar{
+ position : absolute;
+ top : 2px;
+ right : 0px;
+ font-family : verdana;
+ font-size : 11px;
+}
+.top_navbar td{
+ padding : 5px 10px 7px 10px;
+ background-position : left;
+ background-repeat : repeat-y;
+ background-color : transparent;
+}
+.top_navbar td a{
+ color : #000000;
+ text-decoration : none;
+}
+.top_navbar td a:hover{
+ color : #000000;
+ text-decoration : underline;
+}
+.skin_chooser{
+ position : absolute;
+ top : 77px;
+ left : 294px;
+ font-family : verdana;
+ font-size : 11px;
+ height : 26px;
+}
+.skin_chooser td{
+ padding : 0px 0px 0px 10px;
+ background-color : transparent;
+}
+.skin_chooser td a{
+ color : #7795AF;
+ text-decoration : none;
+}
+.skin_chooser td a:hover{
+ color : #7795AF;
+ text-decoration : underline;
+}
+.skin_chooser .skin_line{
+ font-family : verdana;
+ font-size : 11px;
+}
+.skin_chooser .skin_line .control a{
+ color : #7795AF;
+ text-decoration : none;
+}
+.skin_chooser .skin_line .control a:hover{
+ color : #7795AF;
+ text-decoration : underline;
+}
+.skin_chooser .skin_line a{
+ color : #000000;
+ text-decoration : none;
+}
+.skin_chooser .skin_line a:hover{
+ color : #000000;
+ text-decoration : underline;
+}
+
+
+.left_menu{
+ position : absolute;
+ z-index : 10;
+ top : 71px;
+ left : 28px;
+ width : 222px;
+}
+.panel_documents{
+ background-color: transparent;
+ border : 1px solid #FFFFFF;
+ padding : 10px 10px 10px 20px;
+}
+.panel_documents div{
+ background-color: transparent;
+ font-family : verdana;
+ font-size : 11px;
+ border:0;
+ padding:0;
+}
+
+.panel_documents a{
+ color : #000000;
+ text-decoration : none;
+}
+.panel_documents a:hover{
+ color : #000000;
+ text-decoration : underline;
+}
+
+.menu_separator{
+ background-color : #ACBECE;
+ height : 5px;
+ font-size : 1px;
+}
+
+.panel_menu{
+ background-color : transparency;
+ border : 1px solid #FFFFFF;
+ border-bottom : 0px;
+ background-position : left;
+ background-repeat : repeat-y;
+ background-color : transparent;
+ padding : 10px 10px 10px 12px;
+}
+.panel_menu div{
+ background-color : transparent;
+ padding:0;
+}
+
+.panel_menu a {
+ color : #000000;
+ text-decoration : none;
+}
+
+.panel_menu table .unactive .ico{
+ border : 1px solid #FFFFFF;
+}
+.panel_menu table .active .ico{
+ border : 1px solid #ACBECE;
+}
+.panel_menu table .active .text{
+ color : #FFFFFF;
+ font-family : verdana;
+ font-size : 11px;
+ background-color : #ACBECE;
+ padding-left : 10px
+}
+.panel_menu table .unactive .text{
+ font-family : verdana;
+ font-size : 11px;
+ padding-left : 10px
+}
+.text, .ico{
+ cursor : pointer;
+}
+
+.component_name{
+ position : absolute;
+ top : 124px;
+ left : 290px;
+}
+
+.content_container{
+ position : absolute;
+ top : 176px;
+ left : 0px;
+}
+.content_container_pdddings{
+ padding : 0px 35px 35px 0px;
+}
+.content_container_left_brick{
+ background-color : transparent;
+ width : 294px;
+}
+
+.footer{
+ border-top : 2px solid #ACBECE;
+ text-align : right;
+ height : 50px;
+ font-family : verdana;
+ font-size : 11px;
+ padding : 0px 15px 0px 0px;
+}
+.content_tab {
+ background-color: transparent;
+ border-width:0;
+ background-position : top left;
+ background-repeat : no-repeat;
+}
+.active_tab {
+ background-position : top left;
+ border-width: 1px 1px 0px 1px;
+}
+.inactive_tab {
+ background-position : top left;
+}
+
+.top_tab .rich-tabhdr-side-border {
+}
+
+.top_tab .dr-tbpnl-tbtopbrdr{
+}
+.source_frame {
+ border: 1px solid #ACBECE;
+ margin: 8px 0px 15px 0px;
+ width: 100%;
+ height:300px;
+}
+
+.vertical-align-top {
+ vertical-align: top;
+}
\ No newline at end of file
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/css/xhtml-source.css
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/css/xhtml-source.css (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/css/xhtml-source.css 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,25 @@
+body {
+ color: green;
+ background: #FFFFE7;
+ font-family: monospace
+}
+
+.comment {
+ color: gray;
+ font-style: italic;
+}
+
+.keyword {
+ color: blue;
+ font-weight: normal;
+}
+
+.string {
+ color: maroon;
+ font-weight: bold
+}
+
+.type {
+ color: black;
+ text-decoration: none;
+}
\ No newline at end of file
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/bullet_arrow.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/bullet_arrow.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DataDefinitionList.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DataDefinitionList.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DataFilterSlider.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DataFilterSlider.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DataGrid.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DataGrid.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DataList.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DataList.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DataOrderedList.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DataOrderedList.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DataTable.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DataTable.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DataTableScroller.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DataTableScroller.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DragIndicator.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DragIndicator.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DragSupport.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DragSupport.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DropSupport.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_DropSupport.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_GoogleMap.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_GoogleMap.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_ModalPanel.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_ModalPanel.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_Paint2D.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_Paint2D.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_PanelBar.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_PanelBar.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_SimpleTogglePanel.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_SimpleTogglePanel.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_SuggestionBox.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_SuggestionBox.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_TogglePanel.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_TogglePanel.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_ToolBar.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_ToolBar.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_panel.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_panel.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_separator.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_separator.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_slider.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_slider.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_spacer.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_spacer.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_spinner.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_spinner.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_tabpanel.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_tabpanel.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_tree.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/cn_tree.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/dnd/basket.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/dnd/basket.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/dnd/bball.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/dnd/bball.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/dnd/can.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/dnd/can.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/dnd/dropcan.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/dnd/dropcan.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/dnd/opencan.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/dnd/opencan.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_DataFilterSlider.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_DataFilterSlider.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_DataTable.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_DataTable.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_DataTableScroller.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_DataTableScroller.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_DragIndicator.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_DragIndicator.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_DragSupport.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_DragSupport.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_DropSupport.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_DropSupport.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_GoogleMap.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_GoogleMap.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_ModalPanel.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_ModalPanel.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_Paint2D.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_Paint2D.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_PanelBar.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_PanelBar.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_SimpleTogglePanel.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_SimpleTogglePanel.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_SuggestionBox.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_SuggestionBox.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_TogglePanel.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_TogglePanel.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_ToolBar.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_ToolBar.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_Tree.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_Tree.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_panel.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_panel.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_separator.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_separator.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_slider.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_slider.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_spacer.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_spacer.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_spinner.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_spinner.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_tabpanel.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/ico_tabpanel.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/menu_bg.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/menu_bg.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/modal/close.png
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/modal/close.png
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/page_bg.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/page_bg.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/pn_about.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/pn_about.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/pn_aboutDemo.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/pn_aboutDemo.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/spacer.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/spacer.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/tabpanel_custom/tab_active_bg.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/tabpanel_custom/tab_active_bg.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/tabpanel_custom/tab_border_bg.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/tabpanel_custom/tab_border_bg.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/tabpanel_custom/tab_unactive_bg.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/tabpanel_custom/tab_unactive_bg.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/tabpanel_custom/tabpanel_bg.jpg
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/tabpanel_custom/tabpanel_bg.jpg
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/top_nav_bg.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/images/top_nav_bg.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/index.jsp
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/index.jsp (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/index.jsp 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,7 @@
+<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
+<html>
+<head></head>
+ <body>
+ <jsp:forward page="/welcome.jsf" />
+ </body>
+</html>
\ No newline at end of file
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataFilterSlider/source/usage.html
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataFilterSlider/source/usage.html (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataFilterSlider/source/usage.html 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,99 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
+ "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type"
+content="text/html; charset=iso-8859-1">
+<meta name="GENERATOR" content="GNU source-highlight 2.1.2
+by Lorenzo Bettini
+http://www.lorenzobettini.it
+http://www.gnu.org/software/src-highlite">
+<title>usage.xhtml</title>
+<link rel="stylesheet" href="../../../css/xhtml-source.css" type="text/css">
+</head>
+<body>
+<pre><tt><span class="keyword"><a4j:form</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">form1</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">reRender</span><span class="symbol">=</span><span class="string">"</span><span class="string">list-body</span><span class="string">"</span><span class="normal"> </span><span class="type">ajaxSubmit</span><span class="symbol">=</span><span class="string">"</span><span class="string">true</span><span class="string">"</span><span class="normal"> </span><span class="type">ignoreDupResponses</span><span class="symbol">=</span><span class="string">"</span><span class="string">true</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">requestDelay</span><span class="symbol">=</span><span class="string">"</span><span class="string">500</span><span class="string">"</span><span class="keyword">></span>
+
+<span class="normal"> </span><span class="keyword"><a4j:region</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">stat1</span><span class="string">"</span><span class="keyword">></span>
+
+<span class="normal"> </span><span class="keyword"><a4j:outputPanel</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">slider-body</span><span class="string">"</span><span class="keyword">></span>
+
+<span class="normal"> </span><span class="keyword"><rich:dataFilterSlider</span><span class="normal"> </span><span class="type">sliderListener</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{dfsBean.doSlide}</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">binding</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{inventoryList.dataFilterSlider}</span><span class="string">"</span><span class="normal"> </span><span class="type">for</span><span class="symbol">=</span><span class="string">"</span><span class="string">carList</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">forValRef</span><span class="symbol">=</span><span class="string">"</span><span class="string">inventoryList.carInventory</span><span class="string">"</span><span class="normal"> </span><span class="type">filterBy</span><span class="symbol">=</span><span class="string">"</span><span class="string">getMileage</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">manualInput</span><span class="symbol">=</span><span class="string">"</span><span class="string">true</span><span class="string">"</span><span class="normal"> </span><span class="type">onSlide</span><span class="symbol">=</span><span class="string">"</span><span class="string">true</span><span class="string">"</span><span class="normal"> </span><span class="type">onChange</span><span class="symbol">=</span><span class="string">"</span><span class="string">true</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">storeResults</span><span class="symbol">=</span><span class="string">"</span><span class="string">true</span><span class="string">"</span><span class="normal"> </span><span class="type">trackStyleClass</span><span class="symbol">=</span><span class="string">"</span><span class="string">track</span><span class="string">"</span><span class="normal"> </span><span class="type">width</span><span class="symbol">=</span><span class="string">"</span><span class="string">200px</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">styleClass</span><span class="symbol">=</span><span class="string">"</span><span class="string">slider-container</span><span class="string">"</span><span class="normal"> </span><span class="type">startRange</span><span class="symbol">=</span><span class="string">"</span><span class="string">10000</span><span class="string">"</span><span class="normal"> </span><span class="type">endRange</span><span class="symbol">=</span><span class="string">"</span><span class="string">60000</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">increment</span><span class="symbol">=</span><span class="string">"</span><span class="string">10000</span><span class="string">"</span><span class="normal"> </span><span class="type">rangeStyleClass</span><span class="symbol">=</span><span class="string">"</span><span class="string">range</span><span class="string">"</span><span class="normal"> </span><span class="type">trailer</span><span class="symbol">=</span><span class="string">"</span><span class="string">true</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">trailerStyleClass</span><span class="symbol">=</span><span class="string">"</span><span class="string">trailer</span><span class="string">"</span><span class="normal"> </span><span class="type">handleStyleClass</span><span class="symbol">=</span><span class="string">"</span><span class="string">handle</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">handleValue</span><span class="symbol">=</span><span class="string">"</span><span class="string">1</span><span class="string">"</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">slider_1</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></rich:dataFilterSlider></span>
+
+<span class="normal"> </span><span class="keyword"></a4j:outputPanel></span>
+
+<span class="normal"> </span><span class="keyword"><rich:spacer</span><span class="normal"> </span><span class="type">height</span><span class="symbol">=</span><span class="string">"</span><span class="string">15</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+
+<span class="normal"> </span><span class="keyword"><a4j:outputPanel</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">list-body</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:dataTable</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">carIndex</span><span class="string">"</span><span class="normal"> </span><span class="type">rows</span><span class="symbol">=</span><span class="string">"</span><span class="string">10</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">binding</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{inventoryList.carMakeIndexUIData}</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{inventoryList.carMakeIndex}</span><span class="string">"</span><span class="normal"> </span><span class="type">var</span><span class="symbol">=</span><span class="string">"</span><span class="string">category</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">styleClass</span><span class="symbol">=</span><span class="string">"</span><span class="string">list-table1</span><span class="string">"</span><span class="normal"> </span><span class="type">columnClasses</span><span class="symbol">=</span><span class="string">"</span><span class="string">column-index</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">rowClasses</span><span class="symbol">=</span><span class="string">"</span><span class="string">list-row3</span><span class="string">"</span><span class="keyword">></span>
+
+<span class="normal"> </span><span class="keyword"><h:column></span>
+<span class="normal"> </span><span class="keyword"><a4j:commandLink</span><span class="normal"> </span><span class="type">actionListener</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{inventoryList.filterCarList}</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">reRender</span><span class="symbol">=</span><span class="string">"</span><span class="string">carList</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{category}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"><f:attribute</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">filterRule</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">showTable</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+
+<span class="normal"> </span><span class="keyword"></a4j:commandLink></span>
+<span class="normal"> </span><span class="keyword"></h:column></span>
+
+<span class="normal"> </span><span class="keyword"></h:dataTable></span>
+<span class="normal"> </span><span class="keyword"><rich:spacer</span><span class="normal"> </span><span class="type">height</span><span class="symbol">=</span><span class="string">"</span><span class="string">15</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+
+<span class="normal"> </span><span class="keyword"><rich:dataTable</span><span class="normal"> </span><span class="type">width</span><span class="symbol">=</span><span class="string">"</span><span class="string">300</span><span class="string">"</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">carList</span><span class="string">"</span><span class="normal"> </span><span class="type">rows</span><span class="symbol">=</span><span class="string">"</span><span class="string">10</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{inventoryList.carInventory}</span><span class="string">"</span><span class="normal"> </span><span class="type">var</span><span class="symbol">=</span><span class="string">"</span><span class="string">category</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">header</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:columnGroup></span>
+<span class="normal"> </span><span class="keyword"><h:column></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">styleClass</span><span class="symbol">=</span><span class="string">"</span><span class="string">headerText</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Make</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></h:column></span>
+<span class="normal"> </span><span class="keyword"><h:column></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">styleClass</span><span class="symbol">=</span><span class="string">"</span><span class="string">headerText</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Model</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></h:column></span>
+<span class="normal"> </span><span class="keyword"><h:column></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">styleClass</span><span class="symbol">=</span><span class="string">"</span><span class="string">headerText</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Price</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></h:column></span>
+<span class="normal"> </span><span class="keyword"><h:column></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">styleClass</span><span class="symbol">=</span><span class="string">"</span><span class="string">headerText</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Mileage</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></h:column></span>
+<span class="normal"> </span><span class="keyword"></rich:columnGroup></span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+
+<span class="normal"> </span><span class="keyword"><h:column></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{category.make}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></h:column></span>
+<span class="normal"> </span><span class="keyword"><h:column></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{category.model}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></h:column></span>
+<span class="normal"> </span><span class="keyword"><h:column></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{category.price}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></h:column></span>
+<span class="normal"> </span><span class="keyword"><h:column></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{category.mileage}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></h:column></span>
+
+<span class="normal"> </span><span class="keyword"></rich:dataTable></span>
+
+<span class="normal"> </span><span class="keyword"></a4j:outputPanel></span>
+
+<span class="normal"> </span><span class="keyword"><rich:spacer</span><span class="normal"> </span><span class="type">height</span><span class="symbol">=</span><span class="string">"</span><span class="string">15</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+
+
+<span class="normal"> </span><span class="keyword"></a4j:region></span>
+
+<span class="keyword"></a4j:form></span></tt></pre>
+</body>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataFilterSlider/source/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataFilterSlider/source/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataFilterSlider/source/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,83 @@
+<a4j:form id="form1"
+ reRender="list-body" ajaxSubmit="true" ignoreDupResponses="true"
+ requestDelay="500">
+
+ <a4j:region id="stat1">
+
+ <a4j:outputPanel id="slider-body">
+
+ <rich:dataFilterSlider sliderListener="#{dfsBean.doSlide}"
+ binding="#{inventoryList.dataFilterSlider}" for="carList"
+ forValRef="inventoryList.carInventory" filterBy="getMileage"
+ manualInput="true" onSlide="true" onChange="true"
+ storeResults="true" trackStyleClass="track" width="200px"
+ styleClass="slider-container" startRange="10000" endRange="60000"
+ increment="10000" rangeStyleClass="range" trailer="true"
+ trailerStyleClass="trailer" handleStyleClass="handle"
+ handleValue="1" id="slider_1"></rich:dataFilterSlider>
+
+ </a4j:outputPanel>
+
+ <rich:spacer height="15" />
+
+ <a4j:outputPanel id="list-body">
+ <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>
+ <rich:spacer height="15" />
+
+ <rich:dataTable width="300" id="carList" rows="10"
+ value="#{inventoryList.carInventory}" var="category">
+ <f:facet name="header">
+ <rich:columnGroup>
+ <h:column>
+ <h:outputText styleClass="headerText" value="Make" />
+ </h:column>
+ <h:column>
+ <h:outputText styleClass="headerText" value="Model" />
+ </h:column>
+ <h:column>
+ <h:outputText styleClass="headerText" value="Price" />
+ </h:column>
+ <h:column>
+ <h:outputText styleClass="headerText" value="Mileage" />
+ </h:column>
+ </rich:columnGroup>
+ </f:facet>
+
+ <h:column>
+ <h:outputText value="#{category.make}" />
+ </h:column>
+ <h:column>
+ <h:outputText value="#{category.model}" />
+ </h:column>
+ <h:column>
+ <h:outputText value="#{category.price}" />
+ </h:column>
+ <h:column>
+ <h:outputText value="#{category.mileage}" />
+ </h:column>
+
+ </rich:dataTable>
+
+ </a4j:outputPanel>
+
+ <rich:spacer height="15" />
+
+
+ </a4j:region>
+
+</a4j:form>
\ No newline at end of file
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataFilterSlider/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataFilterSlider/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataFilterSlider/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,115 @@
+<!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:a4j="https://ajax4jsf.dev.java.net/ajax"
+ xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+<ui:composition template="/templates/component-sample.xhtml">
+ <ui:define name="sample">
+
+ <style>
+ .rich-table-firstrow .rich-table-cell{
+ border-top-width:0px;
+ }
+ </style>
+
+ <p>The Slider component can be used to filter any UIData object or
+ can be used independently to send its values to the backing bean. It
+ has 2 modes, the first mode stores the UIData object on session so user interaction will work smoothly. The second just sends the
+ previous and new values as a "sliderEvent" to the backing bean.</p>
+
+ <div class="sample-container">
+ <a4j:form id="form1"
+ reRender="list-body" ajaxSubmit="true" ignoreDupResponses="true"
+ requestDelay="500">
+
+ <a4j:region id="stat1">
+
+ <a4j:outputPanel id="slider-body">
+
+ <rich:dataFilterSlider sliderListener="#{dfsBean.doSlide}"
+ binding="#{inventoryList.dataFilterSlider}" for="carList"
+ forValRef="inventoryList.carInventory" filterBy="getMileage"
+ manualInput="true" onSlide="true" onChange="true"
+ storeResults="true" trackStyleClass="track" width="200px"
+ styleClass="slider-container" startRange="10000" endRange="60000"
+ increment="10000" rangeStyleClass="range" trailer="true"
+ trailerStyleClass="trailer" handleStyleClass="handle"
+ handleValue="1" id="slider_1"></rich:dataFilterSlider>
+
+ </a4j:outputPanel>
+
+ <rich:spacer height="15" />
+
+ <a4j:outputPanel id="list-body">
+ <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>
+ <rich:spacer height="15" />
+
+ <rich:dataTable width="300" id="carList" rows="10"
+ value="#{inventoryList.carInventory}" var="category">
+ <f:facet name="header">
+ <rich:columnGroup>
+ <h:column>
+ <h:outputText styleClass="headerText" value="Make" />
+ </h:column>
+ <h:column>
+ <h:outputText styleClass="headerText" value="Model" />
+ </h:column>
+ <h:column>
+ <h:outputText styleClass="headerText" value="Price" />
+ </h:column>
+ <h:column>
+ <h:outputText styleClass="headerText" value="Mileage" />
+ </h:column>
+ </rich:columnGroup>
+ </f:facet>
+
+ <h:column>
+ <h:outputText value="#{category.make}" />
+ </h:column>
+ <h:column>
+ <h:outputText value="#{category.model}" />
+ </h:column>
+ <h:column>
+ <h:outputText value="#{category.price}" />
+ </h:column>
+ <h:column>
+ <h:outputText value="#{category.mileage}" />
+ </h:column>
+
+ </rich:dataTable>
+
+ </a4j:outputPanel>
+
+ <rich:spacer height="15" />
+
+
+ </a4j:region>
+
+ </a4j:form>
+ </div>
+ </ui:define>
+ <ui:define name="sources">
+ Here is fragment of page sources for given example:
+ <iframe
+ src="${facesContext.externalContext.requestContextPath}/richfaces/dataFilterSlider/source/usage.html"
+ class="source_frame" />
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataFilterSlider.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataFilterSlider.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataFilterSlider.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,17 @@
+<!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">
+<ui:composition template="/templates/main.xhtml">
+ <ui:define name="title">RichFaces - Open Source Rich JSF Components - Data FIlter Slider</ui:define>
+ <ui:define name="body">
+ <rich:tabPanel switchType="server" styleClass="top_tab" contentClass="content_tab" inactiveTabClass="inactive_tab" activeTabClass="active_tab">
+ <rich:tab label="Usage">
+ <ui:include src="/richfaces/dataFilterSlider/usage.xhtml"/>
+ </rich:tab>
+ </rich:tabPanel>
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTable/source/usage.html
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTable/source/usage.html (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTable/source/usage.html 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,98 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
+ "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type"
+content="text/html; charset=iso-8859-1">
+<meta name="GENERATOR" content="GNU source-highlight 2.1.2
+by Lorenzo Bettini
+http://www.lorenzobettini.it
+http://www.gnu.org/software/src-highlite">
+<title>usage.xhtml</title>
+<link rel="stylesheet" href="../../../css/xhtml-source.css" type="text/css">
+</head>
+<body>
+<pre><tt><span class="keyword"><rich:dataTable</span><span class="normal"> </span>
+<span class="normal"> </span><span class="type">onRowMouseOver</span><span class="symbol">=</span><span class="string">"</span><span class="string">this.style.backgroundColor='#F1F1F1'</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">onRowMouseOut</span><span class="symbol">=</span><span class="string">"</span><span class="string">this.style.backgroundColor='#{a4jSkin.tableBackgroundColor}'</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">cellpadding</span><span class="symbol">=</span><span class="string">"</span><span class="string">0</span><span class="string">"</span><span class="normal"> </span><span class="type">cellspacing</span><span class="symbol">=</span><span class="string">"</span><span class="string">0</span><span class="string">"</span><span class="normal"> </span>
+<span class="normal"> </span><span class="type">width</span><span class="symbol">=</span><span class="string">"</span><span class="string">700</span><span class="string">"</span><span class="normal"> </span><span class="type">border</span><span class="symbol">=</span><span class="string">"</span><span class="string">0</span><span class="string">"</span><span class="normal"> </span><span class="type">var</span><span class="symbol">=</span><span class="string">"</span><span class="string">record</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{report.expReport.records}</span><span class="string">"</span><span class="keyword">></span>
+
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">header</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:columnGroup></span>
+<span class="normal"> </span><span class="keyword"><rich:column</span><span class="normal"> </span><span class="type">rowspan</span><span class="symbol">=</span><span class="string">"</span><span class="string">2</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:spacer</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:column></span>
+<span class="normal"> </span><span class="keyword"><rich:column</span><span class="normal"> </span><span class="type">colspan</span><span class="symbol">=</span><span class="string">"</span><span class="string">3</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Expenses</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:column></span>
+<span class="normal"> </span><span class="keyword"><rich:column</span><span class="normal"> </span><span class="type">rowspan</span><span class="symbol">=</span><span class="string">"</span><span class="string">2</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">subtotals</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:column></span>
+<span class="normal"> </span><span class="keyword"><rich:column</span><span class="normal"> </span><span class="type">breakBefore</span><span class="symbol">=</span><span class="string">"</span><span class="string">true</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Meals</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:column></span>
+<span class="normal"> </span><span class="keyword"><rich:column></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Hotels</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:column></span>
+<span class="normal"> </span><span class="keyword"><rich:column></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Transport</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:column></span>
+<span class="normal"> </span><span class="keyword"></rich:columnGroup></span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+
+<span class="normal"> </span><span class="keyword"><rich:column</span><span class="normal"> </span><span class="type">colspan</span><span class="symbol">=</span><span class="string">"</span><span class="string">5</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{record.city}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span><span class="keyword"></rich:column></span>
+<span class="normal"> </span>
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"><rich:subTable</span>
+<span class="normal"> </span><span class="type">onRowMouseOver</span><span class="symbol">=</span><span class="string">"</span><span class="string">this.style.backgroundColor='#F8F8F8'</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">onRowMouseOut</span><span class="symbol">=</span><span class="string">"</span><span class="string">this.style.backgroundColor='#{a4jSkin.tableBackgroundColor}'</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">var</span><span class="symbol">=</span><span class="string">"</span><span class="string">expense</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{record.items}</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:column></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{expense.day}</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></h:outputText></span>
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">footer</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:spacer</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+<span class="normal"> </span><span class="keyword"></rich:column></span>
+<span class="normal"> </span><span class="keyword"><rich:column></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{expense.meals}</span><span class="string">"</span><span class="keyword">></span><span class="keyword"><f:convertNumber</span><span class="normal"> </span><span class="type">pattern</span><span class="symbol">=</span><span class="string">"</span><span class="string">$####.00</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span><span class="keyword"></h:outputText></span>
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">footer</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{record.totalMeals}</span><span class="string">"</span><span class="keyword">></span><span class="keyword"><f:convertNumber</span><span class="normal"> </span><span class="type">pattern</span><span class="symbol">=</span><span class="string">"</span><span class="string">$####.00</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span><span class="keyword"></h:outputText></span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+<span class="normal"> </span><span class="keyword"></rich:column></span>
+<span class="normal"> </span><span class="keyword"><rich:column></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{expense.hotels}</span><span class="string">"</span><span class="keyword">></span><span class="keyword"><f:convertNumber</span><span class="normal"> </span><span class="type">pattern</span><span class="symbol">=</span><span class="string">"</span><span class="string">$####.00</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span><span class="keyword"></h:outputText></span>
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">footer</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{record.totalHotels}</span><span class="string">"</span><span class="keyword">></span><span class="keyword"><f:convertNumber</span><span class="normal"> </span><span class="type">pattern</span><span class="symbol">=</span><span class="string">"</span><span class="string">$####.00</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span><span class="keyword"></h:outputText></span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+<span class="normal"> </span><span class="keyword"></rich:column></span>
+<span class="normal"> </span><span class="keyword"><rich:column></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{expense.transport}</span><span class="string">"</span><span class="keyword">></span><span class="keyword"><f:convertNumber</span><span class="normal"> </span><span class="type">pattern</span><span class="symbol">=</span><span class="string">"</span><span class="string">$####.00</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span><span class="keyword"></h:outputText></span>
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">footer</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{record.totalTransport}</span><span class="string">"</span><span class="keyword">></span><span class="keyword"><f:convertNumber</span><span class="normal"> </span><span class="type">pattern</span><span class="symbol">=</span><span class="string">"</span><span class="string">$####.00</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span><span class="keyword"></h:outputText></span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+<span class="normal"> </span><span class="keyword"></rich:column></span>
+<span class="normal"> </span><span class="keyword"><rich:column></span>
+<span class="normal"> </span><span class="keyword"><rich:spacer></span><span class="keyword"></rich:spacer></span>
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">footer</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{record.total}</span><span class="string">"</span><span class="keyword">></span><span class="keyword"><f:convertNumber</span><span class="normal"> </span><span class="type">pattern</span><span class="symbol">=</span><span class="string">"</span><span class="string">$####.00</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span><span class="keyword"></h:outputText></span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+<span class="normal"> </span><span class="keyword"></rich:column></span><span class="normal"> </span>
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"></rich:subTable></span>
+
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">footer</span><span class="string">"</span><span class="keyword">></span>
+
+<span class="normal"> </span><span class="keyword"><rich:columnGroup></span>
+<span class="normal"> </span><span class="keyword"><rich:column></span><span class="normal">Totals</span><span class="keyword"></rich:column></span>
+<span class="normal"> </span><span class="keyword"><rich:column></span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{report.expReport.totalMeals}</span><span class="string">"</span><span class="keyword">></span><span class="keyword"><f:convertNumber</span><span class="normal"> </span><span class="type">pattern</span><span class="symbol">=</span><span class="string">"</span><span class="string">$####.00</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span><span class="keyword"></h:outputText></span><span class="keyword"></rich:column></span>
+<span class="normal"> </span><span class="keyword"><rich:column></span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{report.expReport.totalHotels}</span><span class="string">"</span><span class="keyword">></span><span class="keyword"><f:convertNumber</span><span class="normal"> </span><span class="type">pattern</span><span class="symbol">=</span><span class="string">"</span><span class="string">$####.00</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span><span class="keyword"></h:outputText></span><span class="keyword"></rich:column></span>
+<span class="normal"> </span><span class="keyword"><rich:column></span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{report.expReport.totalTransport}</span><span class="string">"</span><span class="keyword">></span><span class="keyword"><f:convertNumber</span><span class="normal"> </span><span class="type">pattern</span><span class="symbol">=</span><span class="string">"</span><span class="string">$####.00</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span><span class="keyword"></h:outputText></span><span class="keyword"></rich:column></span>
+<span class="normal"> </span><span class="keyword"><rich:column></span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{report.expReport.grandTotal}</span><span class="string">"</span><span class="keyword">></span><span class="keyword"><f:convertNumber</span><span class="normal"> </span><span class="type">pattern</span><span class="symbol">=</span><span class="string">"</span><span class="string">$####.00</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span><span class="keyword"></h:outputText></span><span class="keyword"></rich:column></span>
+<span class="normal"> </span><span class="keyword"></rich:columnGroup></span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+
+<span class="keyword"></rich:dataTable></span></tt></pre>
+</body>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTable/source/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTable/source/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTable/source/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,82 @@
+<rich:dataTable
+ onRowMouseOver="this.style.backgroundColor='#F1F1F1'"
+ onRowMouseOut="this.style.backgroundColor='#{a4jSkin.tableBackgroundColor}'"
+ cellpadding="0" cellspacing="0"
+ width="700" border="0" var="record" value="#{report.expReport.records}">
+
+ <f:facet name="header">
+ <rich:columnGroup>
+ <rich:column rowspan="2">
+ <rich:spacer />
+ </rich:column>
+ <rich:column colspan="3">
+ <h:outputText value="Expenses" />
+ </rich:column>
+ <rich:column rowspan="2">
+ <h:outputText value="subtotals" />
+ </rich:column>
+ <rich:column breakBefore="true">
+ <h:outputText value="Meals" />
+ </rich:column>
+ <rich:column>
+ <h:outputText value="Hotels" />
+ </rich:column>
+ <rich:column>
+ <h:outputText value="Transport" />
+ </rich:column>
+ </rich:columnGroup>
+ </f:facet>
+
+ <rich:column colspan="5">
+ <h:outputText value="#{record.city}" /></rich:column>
+
+
+ <rich:subTable
+ onRowMouseOver="this.style.backgroundColor='#F8F8F8'"
+ onRowMouseOut="this.style.backgroundColor='#{a4jSkin.tableBackgroundColor}'"
+ var="expense" value="#{record.items}">
+ <rich:column>
+ <h:outputText value="#{expense.day}"></h:outputText>
+ <f:facet name="footer">
+ <rich:spacer />
+ </f:facet>
+ </rich:column>
+ <rich:column>
+ <h:outputText value="#{expense.meals}"><f:convertNumber pattern="$####.00" /></h:outputText>
+ <f:facet name="footer">
+ <h:outputText value="#{record.totalMeals}"><f:convertNumber pattern="$####.00" /></h:outputText>
+ </f:facet>
+ </rich:column>
+ <rich:column>
+ <h:outputText value="#{expense.hotels}"><f:convertNumber pattern="$####.00" /></h:outputText>
+ <f:facet name="footer">
+ <h:outputText value="#{record.totalHotels}"><f:convertNumber pattern="$####.00" /></h:outputText>
+ </f:facet>
+ </rich:column>
+ <rich:column>
+ <h:outputText value="#{expense.transport}"><f:convertNumber pattern="$####.00" /></h:outputText>
+ <f:facet name="footer">
+ <h:outputText value="#{record.totalTransport}"><f:convertNumber pattern="$####.00" /></h:outputText>
+ </f:facet>
+ </rich:column>
+ <rich:column>
+ <rich:spacer></rich:spacer>
+ <f:facet name="footer">
+ <h:outputText value="#{record.total}"><f:convertNumber pattern="$####.00" /></h:outputText>
+ </f:facet>
+ </rich:column>
+
+ </rich:subTable>
+
+ <f:facet name="footer">
+
+ <rich:columnGroup>
+ <rich:column>Totals</rich:column>
+ <rich:column><h:outputText value="#{report.expReport.totalMeals}"><f:convertNumber pattern="$####.00" /></h:outputText></rich:column>
+ <rich:column><h:outputText value="#{report.expReport.totalHotels}"><f:convertNumber pattern="$####.00" /></h:outputText></rich:column>
+ <rich:column><h:outputText value="#{report.expReport.totalTransport}"><f:convertNumber pattern="$####.00" /></h:outputText></rich:column>
+ <rich:column><h:outputText value="#{report.expReport.grandTotal}"><f:convertNumber pattern="$####.00" /></h:outputText></rich:column>
+ </rich:columnGroup>
+ </f:facet>
+
+</rich:dataTable>
\ No newline at end of file
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTable/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTable/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTable/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,110 @@
+<!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:a4j="https://ajax4jsf.dev.java.net/ajax"
+ xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+ <ui:composition template="/templates/component-sample.xhtml">
+ <ui:define name="sample">
+
+
+
+ <p>DataTable allows to show a tabular data. Additional to the stadard <h:dataTable>, this component
+ enables row and column spans for columns, a flexible layout for a header and a footer.
+ DataTable supports "master-detail" pattern and allows to show the combination
+ of a master table and detail sub-tables.<br />
+ The folowing example shows the dataTable component in use:
+ </p>
+
+ <div class="sample-container" >
+ <rich:dataTable
+ onRowMouseOver="this.style.backgroundColor='#F1F1F1'"
+ onRowMouseOut="this.style.backgroundColor='#{a4jSkin.tableBackgroundColor}'"
+ cellpadding="0" cellspacing="0"
+ width="700" border="0" var="record" value="#{report.expReport.records}">
+
+ <f:facet name="header">
+ <rich:columnGroup>
+ <rich:column rowspan="2">
+ <rich:spacer />
+ </rich:column>
+ <rich:column colspan="3">
+ <h:outputText value="Expenses" />
+ </rich:column>
+ <rich:column rowspan="2">
+ <h:outputText value="subtotals" />
+ </rich:column>
+ <rich:column breakBefore="true">
+ <h:outputText value="Meals" />
+ </rich:column>
+ <rich:column>
+ <h:outputText value="Hotels" />
+ </rich:column>
+ <rich:column>
+ <h:outputText value="Transport" />
+ </rich:column>
+ </rich:columnGroup>
+ </f:facet>
+
+ <rich:column colspan="5">
+ <h:outputText value="#{record.city}" /></rich:column>
+
+
+ <rich:subTable
+ onRowMouseOver="this.style.backgroundColor='#F8F8F8'"
+ onRowMouseOut="this.style.backgroundColor='#{a4jSkin.tableBackgroundColor}'"
+ var="expense" value="#{record.items}">
+ <rich:column>
+ <h:outputText value="#{expense.day}"></h:outputText>
+ <f:facet name="footer">
+ <rich:spacer />
+ </f:facet>
+ </rich:column>
+ <rich:column>
+ <h:outputText value="#{expense.meals}"><f:convertNumber pattern="$####.00" /></h:outputText>
+ <f:facet name="footer">
+ <h:outputText value="#{record.totalMeals}"><f:convertNumber pattern="$####.00" /></h:outputText>
+ </f:facet>
+ </rich:column>
+ <rich:column>
+ <h:outputText value="#{expense.hotels}"><f:convertNumber pattern="$####.00" /></h:outputText>
+ <f:facet name="footer">
+ <h:outputText value="#{record.totalHotels}"><f:convertNumber pattern="$####.00" /></h:outputText>
+ </f:facet>
+ </rich:column>
+ <rich:column>
+ <h:outputText value="#{expense.transport}"><f:convertNumber pattern="$####.00" /></h:outputText>
+ <f:facet name="footer">
+ <h:outputText value="#{record.totalTransport}"><f:convertNumber pattern="$####.00" /></h:outputText>
+ </f:facet>
+ </rich:column>
+ <rich:column>
+ <rich:spacer></rich:spacer>
+ <f:facet name="footer">
+ <h:outputText value="#{record.total}"><f:convertNumber pattern="$####.00" /></h:outputText>
+ </f:facet>
+ </rich:column>
+
+ </rich:subTable>
+
+ <f:facet name="footer">
+
+ <rich:columnGroup>
+ <rich:column>Totals</rich:column>
+ <rich:column><h:outputText value="#{report.expReport.totalMeals}"><f:convertNumber pattern="$####.00" /></h:outputText></rich:column>
+ <rich:column><h:outputText value="#{report.expReport.totalHotels}"><f:convertNumber pattern="$####.00" /></h:outputText></rich:column>
+ <rich:column><h:outputText value="#{report.expReport.totalTransport}"><f:convertNumber pattern="$####.00" /></h:outputText></rich:column>
+ <rich:column><h:outputText value="#{report.expReport.grandTotal}"><f:convertNumber pattern="$####.00" /></h:outputText></rich:column>
+ </rich:columnGroup>
+ </f:facet>
+
+ </rich:dataTable>
+ </div>
+ </ui:define>
+ <ui:define name="sources">
+ Here is a fragment of page sources for the given example:
+ <iframe src="${facesContext.externalContext.requestContextPath}/richfaces/dataTable/source/usage.html" class="source_frame"/>
+ </ui:define>
+ </ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTable.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTable.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTable.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,17 @@
+<!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">
+<ui:composition template="/templates/main.xhtml">
+ <ui:define name="title">RichFaces - Open Source Rich JSF Components - Data table</ui:define>
+ <ui:define name="body">
+ <rich:tabPanel switchType="server" styleClass="top_tab" contentClass="content_tab" inactiveTabClass="inactive_tab" activeTabClass="active_tab">
+ <rich:tab label="Usage">
+ <ui:include src="/richfaces/dataTable/usage.xhtml"/>
+ </rich:tab>
+ </rich:tabPanel>
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTableScroller/source/usage.html
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTableScroller/source/usage.html (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTableScroller/source/usage.html 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,56 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
+ "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type"
+content="text/html; charset=iso-8859-1">
+<meta name="GENERATOR" content="GNU source-highlight 2.1.2
+by Lorenzo Bettini
+http://www.lorenzobettini.it
+http://www.gnu.org/software/src-highlite">
+<title>usage.xhtml</title>
+<link rel="stylesheet" href="../../../css/xhtml-source.css" type="text/css">
+</head>
+<body>
+<pre><tt><span class="keyword"><h:form></span>
+<span class="normal"> </span><span class="keyword"><rich:datascroller</span><span class="normal"> </span><span class="type">for</span><span class="symbol">=</span><span class="string">"</span><span class="string">carList</span><span class="string">"</span><span class="normal"> </span><span class="type">maxPages</span><span class="symbol">=</span><span class="string">"</span><span class="string">20</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"><rich:spacer</span><span class="normal"> </span><span class="type">height</span><span class="symbol">=</span><span class="string">"</span><span class="string">30</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"><rich:dataTable</span><span class="normal"> </span><span class="type">width</span><span class="symbol">=</span><span class="string">"</span><span class="string">483</span><span class="string">"</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">carList</span><span class="string">"</span><span class="normal"> </span><span class="type">rows</span><span class="symbol">=</span><span class="string">"</span><span class="string">10</span><span class="string">"</span><span class="normal"> </span><span class="type">columnClasses</span><span class="symbol">=</span><span class="string">"</span><span class="string">col</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{dataTableScrollerBean.allCars}</span><span class="string">"</span><span class="normal"> </span><span class="type">var</span><span class="symbol">=</span><span class="string">"</span><span class="string">category</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">header</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:columnGroup></span>
+<span class="normal"> </span><span class="keyword"><h:column></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">styleClass</span><span class="symbol">=</span><span class="string">"</span><span class="string">headerText</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Make</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></h:column></span>
+<span class="normal"> </span><span class="keyword"><h:column></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">styleClass</span><span class="symbol">=</span><span class="string">"</span><span class="string">headerText</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Model</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></h:column></span>
+<span class="normal"> </span><span class="keyword"><h:column></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">styleClass</span><span class="symbol">=</span><span class="string">"</span><span class="string">headerText</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Price</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></h:column></span>
+<span class="normal"> </span><span class="keyword"><h:column></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">styleClass</span><span class="symbol">=</span><span class="string">"</span><span class="string">headerText</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Mileage</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></h:column></span>
+<span class="normal"> </span><span class="keyword"></rich:columnGroup></span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+
+<span class="normal"> </span><span class="keyword"><h:column></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{category.make}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></h:column></span>
+<span class="normal"> </span><span class="keyword"><h:column></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{category.model}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></h:column></span>
+<span class="normal"> </span><span class="keyword"><h:column></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{category.price}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></h:column></span>
+<span class="normal"> </span><span class="keyword"><h:column></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{category.mileage}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></h:column></span>
+
+
+
+<span class="normal"> </span><span class="keyword"></rich:dataTable></span>
+<span class="keyword"></h:form></span>
+</tt></pre>
+</body>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTableScroller/source/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTableScroller/source/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTableScroller/source/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,39 @@
+<h:form>
+ <rich:datascroller for="carList" maxPages="20" />
+ <rich:spacer height="30" />
+ <rich:dataTable width="483" id="carList" rows="10" columnClasses="col"
+ value="#{dataTableScrollerBean.allCars}" var="category">
+ <f:facet name="header">
+ <rich:columnGroup>
+ <h:column>
+ <h:outputText styleClass="headerText" value="Make" />
+ </h:column>
+ <h:column>
+ <h:outputText styleClass="headerText" value="Model" />
+ </h:column>
+ <h:column>
+ <h:outputText styleClass="headerText" value="Price" />
+ </h:column>
+ <h:column>
+ <h:outputText styleClass="headerText" value="Mileage" />
+ </h:column>
+ </rich:columnGroup>
+ </f:facet>
+
+ <h:column>
+ <h:outputText value="#{category.make}" />
+ </h:column>
+ <h:column>
+ <h:outputText value="#{category.model}" />
+ </h:column>
+ <h:column>
+ <h:outputText value="#{category.price}" />
+ </h:column>
+ <h:column>
+ <h:outputText value="#{category.mileage}" />
+ </h:column>
+
+
+
+ </rich:dataTable>
+</h:form>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTableScroller/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTableScroller/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTableScroller/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,68 @@
+<!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:a4j="https://ajax4jsf.dev.java.net/ajax"
+ xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+<ui:composition template="/templates/component-sample.xhtml">
+ <ui:define name="sample">
+ <style>
+ .col {
+ width:100px;
+ }
+ </style>
+
+ <p>The component is designed to provide the functionality of table
+ pagination using AJAX requests.</p>
+
+ <div class="sample-container">
+ <h:form>
+ <rich:datascroller for="carList" maxPages="20" />
+ <rich:spacer height="30" />
+ <rich:dataTable width="483" id="carList" rows="10" columnClasses="col"
+ value="#{dataTableScrollerBean.allCars}" var="category">
+ <f:facet name="header">
+ <rich:columnGroup>
+ <h:column>
+ <h:outputText styleClass="headerText" value="Make" />
+ </h:column>
+ <h:column>
+ <h:outputText styleClass="headerText" value="Model" />
+ </h:column>
+ <h:column>
+ <h:outputText styleClass="headerText" value="Price" />
+ </h:column>
+ <h:column>
+ <h:outputText styleClass="headerText" value="Mileage" />
+ </h:column>
+ </rich:columnGroup>
+ </f:facet>
+
+ <h:column>
+ <h:outputText value="#{category.make}" />
+ </h:column>
+ <h:column>
+ <h:outputText value="#{category.model}" />
+ </h:column>
+ <h:column>
+ <h:outputText value="#{category.price}" />
+ </h:column>
+ <h:column>
+ <h:outputText value="#{category.mileage}" />
+ </h:column>
+
+
+
+ </rich:dataTable>
+ </h:form>
+ </div>
+ </ui:define>
+ <ui:define name="sources">
+ Here is a fragment of page sources for the given example:
+ <iframe
+ src="${facesContext.externalContext.requestContextPath}/richfaces/dataTableScroller/source/usage.html"
+ class="source_frame" />
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTableScroller.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTableScroller.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dataTableScroller.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,17 @@
+<!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">
+<ui:composition template="/templates/main.xhtml">
+ <ui:define name="title">RichFaces - Open Source Rich JSF Components - Data Table Scroller</ui:define>
+ <ui:define name="body">
+ <rich:tabPanel switchType="server" styleClass="top_tab" contentClass="content_tab" inactiveTabClass="inactive_tab" activeTabClass="active_tab">
+ <rich:tab label="Usage">
+ <ui:include src="/richfaces/dataTableScroller/usage.xhtml"/>
+ </rich:tab>
+ </rich:tabPanel>
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dragIndicator.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dragIndicator.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dragIndicator.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,17 @@
+<!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">
+<ui:composition template="/templates/main.xhtml">
+ <ui:define name="title">RichFaces - Open Source Rich JSF Components - Drag-n-Drop. Drag Indicator</ui:define>
+ <ui:define name="body">
+ <rich:tabPanel switchType="server" styleClass="top_tab" contentClass="content_tab" inactiveTabClass="inactive_tab" activeTabClass="active_tab">
+ <rich:tab label="Usage">
+ <ui:include src="/richfaces/dragSupport/usage.xhtml"/>
+ </rich:tab>
+ </rich:tabPanel>
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dragSupport/source/usage.html
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dragSupport/source/usage.html (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dragSupport/source/usage.html 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,101 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
+ "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type"
+content="text/html; charset=iso-8859-1">
+<meta name="GENERATOR" content="GNU source-highlight 2.1.2
+by Lorenzo Bettini
+http://www.lorenzobettini.it
+http://www.gnu.org/software/src-highlite">
+<title>usage.xhtml</title>
+<link rel="stylesheet" href="../../../css/xhtml-source.css" type="text/css">
+</head>
+<body>
+<pre><tt><span class="keyword"><rich:dragIndicator</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">indicator</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></rich:dragIndicator></span>
+
+<span class="keyword"><h:form</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">form</span><span class="string">"</span><span class="keyword">></span>
+
+<span class="normal"> </span><span class="keyword"><h:panelGrid</span><span class="normal"> </span><span class="type">columnClasses</span><span class="symbol">=</span><span class="string">"</span><span class="string">panelc</span><span class="string">"</span><span class="normal"> </span><span class="type">columns</span><span class="symbol">=</span><span class="string">"</span><span class="string">4</span><span class="string">"</span><span class="normal"> </span><span class="type">width</span><span class="symbol">=</span><span class="string">"</span><span class="string">100%</span><span class="string">"</span><span class="keyword">></span>
+
+<span class="normal"> </span><span class="keyword"><rich:panel</span><span class="normal"> </span><span class="type">style</span><span class="symbol">=</span><span class="string">"</span><span class="string">width:100px</span><span class="string">"</span><span class="keyword">></span><span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">header</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Source List</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+<span class="normal"> </span><span class="keyword"><h:dataTable</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">src</span><span class="string">"</span><span class="normal"> </span><span class="type">columns</span><span class="symbol">=</span><span class="string">"</span><span class="string">1</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{dndBean.frameworks}</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">var</span><span class="symbol">=</span><span class="string">"</span><span class="string">fm</span><span class="string">"</span><span class="normal"> </span><span class="keyword">></span>
+
+<span class="normal"> </span><span class="keyword"><h:column></span>
+<span class="normal"> </span><span class="keyword"><a4j:outputPanel</span><span class="normal"> </span><span class="type">style</span><span class="symbol">=</span><span class="string">"</span><span class="string">border:1px solid gray;padding:2px;</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">layout</span><span class="symbol">=</span><span class="string">"</span><span class="string">block</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:dragSupport</span><span class="normal"> </span><span class="type">dragIndicator</span><span class="symbol">=</span><span class="string">"</span><span class="string">:indicator</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">dragType</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{fm.family}</span><span class="string">"</span><span class="normal"> </span><span class="type">dragValue</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{fm}</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:dndParam</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">label</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{fm.name}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:dragSupport></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{fm.name}</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></h:outputText></span>
+<span class="normal"> </span><span class="keyword"></a4j:outputPanel></span>
+<span class="normal"> </span><span class="keyword"></h:column></span>
+
+<span class="normal"> </span><span class="keyword"></h:dataTable></span>
+<span class="normal"> </span><span class="keyword"></rich:panel></span>
+
+<span class="normal"> </span><span class="keyword"><rich:panel></span>
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">header</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">PHP Frameworks</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+<span class="normal"> </span><span class="keyword"><rich:dropSupport</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">php</span><span class="string">"</span><span class="normal"> </span><span class="type">acceptedTypes</span><span class="symbol">=</span><span class="string">"</span><span class="string">PHP</span><span class="string">"</span><span class="normal"> </span><span class="type">dropValue</span><span class="symbol">=</span><span class="string">"</span><span class="string">PHP</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">dropListener</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{eventBean.processDrop}</span><span class="string">"</span><span class="normal"> </span><span class="type">reRender</span><span class="symbol">=</span><span class="string">"</span><span class="string">phptable, src</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"></rich:dropSupport></span>
+
+<span class="normal"> </span><span class="keyword"><h:dataTable</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">phptable</span><span class="string">"</span><span class="normal"> </span><span class="type">columns</span><span class="symbol">=</span><span class="string">"</span><span class="string">1</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{dndBean.containerPHP}</span><span class="string">"</span><span class="normal"> </span><span class="type">var</span><span class="symbol">=</span><span class="string">"</span><span class="string">fm</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:column></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{fm.name}</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></h:outputText></span>
+<span class="normal"> </span><span class="keyword"></h:column></span>
+<span class="normal"> </span><span class="keyword"></h:dataTable></span>
+
+
+<span class="normal"> </span><span class="keyword"></rich:panel></span>
+
+<span class="normal"> </span><span class="keyword"><rich:panel></span>
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">header</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">.NET Frameworks</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+<span class="normal"> </span><span class="keyword"><rich:dropSupport</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">dnet</span><span class="string">"</span><span class="normal"> </span><span class="type">acceptedTypes</span><span class="symbol">=</span><span class="string">"</span><span class="string">DNET</span><span class="string">"</span><span class="normal"> </span><span class="type">dropValue</span><span class="symbol">=</span><span class="string">"</span><span class="string">DNET</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">dropListener</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{eventBean.processDrop}</span><span class="string">"</span><span class="normal"> </span><span class="type">reRender</span><span class="symbol">=</span><span class="string">"</span><span class="string">dnettable, src</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"></rich:dropSupport></span>
+
+<span class="normal"> </span><span class="keyword"><h:dataTable</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">dnettable</span><span class="string">"</span><span class="normal"> </span><span class="type">columns</span><span class="symbol">=</span><span class="string">"</span><span class="string">1</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{dndBean.containerDNET}</span><span class="string">"</span><span class="normal"> </span><span class="type">var</span><span class="symbol">=</span><span class="string">"</span><span class="string">fm</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:column></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{fm.name}</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></h:outputText></span>
+<span class="normal"> </span><span class="keyword"></h:column></span>
+<span class="normal"> </span><span class="keyword"></h:dataTable></span>
+
+
+<span class="normal"> </span><span class="keyword"></rich:panel></span>
+
+<span class="normal"> </span><span class="keyword"><rich:panel></span>
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">header</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">ColdFusion Frameworks</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+<span class="normal"> </span><span class="keyword"><rich:dropSupport</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">cf</span><span class="string">"</span><span class="normal"> </span><span class="type">acceptedTypes</span><span class="symbol">=</span><span class="string">"</span><span class="string">CF</span><span class="string">"</span><span class="normal"> </span><span class="type">dropValue</span><span class="symbol">=</span><span class="string">"</span><span class="string">CF</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">dropListener</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{eventBean.processDrop}</span><span class="string">"</span><span class="normal"> </span><span class="type">reRender</span><span class="symbol">=</span><span class="string">"</span><span class="string">cftable, src</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"></rich:dropSupport></span>
+
+<span class="normal"> </span><span class="keyword"><h:dataTable</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">cftable</span><span class="string">"</span><span class="normal"> </span><span class="type">columns</span><span class="symbol">=</span><span class="string">"</span><span class="string">1</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{dndBean.containerCF}</span><span class="string">"</span><span class="normal"> </span><span class="type">var</span><span class="symbol">=</span><span class="string">"</span><span class="string">fm</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:column></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{fm.name}</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></h:outputText></span>
+<span class="normal"> </span><span class="keyword"></h:column></span>
+<span class="normal"> </span><span class="keyword"></h:dataTable></span>
+
+
+<span class="normal"> </span><span class="keyword"></rich:panel></span>
+
+
+
+
+<span class="normal"> </span><span class="keyword"></h:panelGrid></span>
+<span class="normal"> </span><span class="keyword"><a4j:commandButton</span><span class="normal"> </span><span class="type">action</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{dndBean.reset}</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Start Over</span><span class="string">"</span><span class="normal"> </span>
+<span class="normal"> </span><span class="type">reRender</span><span class="symbol">=</span><span class="string">"</span><span class="string">src,phptable,cftable,dnettable</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="keyword"></h:form></span></tt></pre>
+</body>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dragSupport/source/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dragSupport/source/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dragSupport/source/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,85 @@
+<rich:dragIndicator id="indicator"></rich:dragIndicator>
+
+<h:form id="form">
+
+ <h:panelGrid columnClasses="panelc" columns="4" width="100%">
+
+ <rich:panel style="width:100px">
+ <f:facet name="header">
+ <h:outputText value="Source List" />
+ </f:facet>
+ <h:dataTable id="src" columns="1" value="#{dndBean.frameworks}"
+ var="fm" >
+
+ <h:column>
+ <a4j:outputPanel style="border:1px solid gray;padding:2px;"
+ layout="block">
+ <rich:dragSupport dragIndicator=":indicator"
+ dragType="#{fm.family}" dragValue="#{fm}">
+ <rich:dndParam name="label" value="#{fm.name}" />
+ </rich:dragSupport>
+ <h:outputText value="#{fm.name}"></h:outputText>
+ </a4j:outputPanel>
+ </h:column>
+
+ </h:dataTable>
+ </rich:panel>
+
+ <rich:panel>
+ <f:facet name="header">
+ <h:outputText value="PHP Frameworks" />
+ </f:facet>
+ <rich:dropSupport id="php" acceptedTypes="PHP" dropValue="PHP"
+ dropListener="#{eventBean.processDrop}" reRender="phptable, src">
+ </rich:dropSupport>
+
+ <h:dataTable id="phptable" columns="1" value="#{dndBean.containerPHP}" var="fm">
+ <h:column>
+ <h:outputText value="#{fm.name}"></h:outputText>
+ </h:column>
+ </h:dataTable>
+
+
+ </rich:panel>
+
+ <rich:panel>
+ <f:facet name="header">
+ <h:outputText value=".NET Frameworks" />
+ </f:facet>
+ <rich:dropSupport id="dnet" acceptedTypes="DNET" dropValue="DNET"
+ dropListener="#{eventBean.processDrop}" reRender="dnettable, src">
+ </rich:dropSupport>
+
+ <h:dataTable id="dnettable" columns="1" value="#{dndBean.containerDNET}" var="fm">
+ <h:column>
+ <h:outputText value="#{fm.name}"></h:outputText>
+ </h:column>
+ </h:dataTable>
+
+
+ </rich:panel>
+
+ <rich:panel>
+ <f:facet name="header">
+ <h:outputText value="ColdFusion Frameworks" />
+ </f:facet>
+ <rich:dropSupport id="cf" acceptedTypes="CF" dropValue="CF"
+ dropListener="#{eventBean.processDrop}" reRender="cftable, src">
+ </rich:dropSupport>
+
+ <h:dataTable id="cftable" columns="1" value="#{dndBean.containerCF}" var="fm">
+ <h:column>
+ <h:outputText value="#{fm.name}"></h:outputText>
+ </h:column>
+ </h:dataTable>
+
+
+ </rich:panel>
+
+
+
+
+ </h:panelGrid>
+ <a4j:commandButton action="#{dndBean.reset}" value="Start Over"
+ reRender="src,phptable,cftable,dnettable" />
+</h:form>
\ No newline at end of file
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dragSupport/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dragSupport/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dragSupport/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,149 @@
+<!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:a4j="https://ajax4jsf.dev.java.net/ajax"
+ xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+<ui:composition template="/templates/component-sample.xhtml">
+ <ui:define name="sample">
+ <style>
+ .panelc {
+ width:25%;
+ vertical-align:top;
+ height:300px;
+ }
+ </style>
+
+ <p>The Richfaces Drag-n-Drop component suite includes three components: dragSupport, dropSupport
+ and dragIndicator.</p>
+ <p>dragSupport is used to point to the JSF component that becomes draggable. dragSupport
+ is similar to Ajax4jsf <a4j:support>. If you want to add a draggable feature to the existing
+ component, attach dragSupport as a child component to it.
+ </p>
+ <p>dropSupport is similar to the dragSupport, but it's used to define the drag zone. dropSupport
+ has a built-in Ajax support. I.e. it allows to send an Ajax request and re-render the specified
+ area on a page when the Ajax response is returned back. With the dropListener attribute you can
+ point to a method of the backing bean that accepts dropEvent as a parameter. This event contains
+ information provided by dropValue and dragValue attributes of dropSupport and dragSupport.
+ </p>
+
+ <p>Drag Indicator is a special visual representation of a dragged object. It contains
+ a drag marker and a drag label by default, but you can freely define the layout you want using
+ a "single" facet for drag-n-drop of a single object or "multiple" for drag-n-drop on the group of
+ objects</p>
+
+
+ <p>
+ <i>Note: The parent component for dragSupport and dropSupport should be designed to render
+ its children and has two attribute "onmouseover" and "onmouseout". You can use <a4j:outputPanel> as
+ an container if the component is not satisfy this requirements. Use <a4j:outputPanel> layout="block"
+ to wrap the component with a block type layout. We will work to eliminate this restriction in the
+ future.</i>
+ </p>
+
+ <div class="sample-container">
+ <p>The following example demonstrates the drag-n-drop functionality on practice. The left list
+ contains the examples of Ajax frameworks. Do you know them? The demo helps you to sort them.
+ Drag one and drag over the headers of three panels. If the draggable framework is suitable for a certain
+ framework family, it will be accepted. Otherwise, the drag indicator shows the "reject" icon.</p>
+
+ <rich:dragIndicator id="indicator"></rich:dragIndicator>
+
+ <h:form id="form">
+
+ <h:panelGrid columnClasses="panelc" columns="4" width="100%">
+
+ <rich:panel style="width:100px">
+ <f:facet name="header">
+ <h:outputText value="Source List" />
+ </f:facet>
+ <h:dataTable id="src" columns="1" value="#{dndBean.frameworks}"
+ var="fm" >
+
+ <h:column>
+ <a4j:outputPanel style="border:1px solid gray;padding:2px;"
+ layout="block">
+ <rich:dragSupport dragIndicator=":indicator"
+ dragType="#{fm.family}" dragValue="#{fm}">
+ <rich:dndParam name="label" value="#{fm.name}" />
+ </rich:dragSupport>
+ <h:outputText value="#{fm.name}"></h:outputText>
+ </a4j:outputPanel>
+ </h:column>
+
+ </h:dataTable>
+ </rich:panel>
+
+ <rich:panel>
+ <f:facet name="header">
+ <h:outputText value="PHP Frameworks" />
+ </f:facet>
+ <rich:dropSupport id="php" acceptedTypes="PHP" dropValue="PHP"
+ dropListener="#{eventBean.processDrop}" reRender="phptable, src">
+ </rich:dropSupport>
+
+ <h:dataTable id="phptable" columns="1" value="#{dndBean.containerPHP}" var="fm">
+ <h:column>
+ <h:outputText value="#{fm.name}"></h:outputText>
+ </h:column>
+ </h:dataTable>
+
+
+ </rich:panel>
+
+ <rich:panel>
+ <f:facet name="header">
+ <h:outputText value=".NET Frameworks" />
+ </f:facet>
+ <rich:dropSupport id="dnet" acceptedTypes="DNET" dropValue="DNET"
+ dropListener="#{eventBean.processDrop}" reRender="dnettable, src">
+ </rich:dropSupport>
+
+ <h:dataTable id="dnettable" columns="1" value="#{dndBean.containerDNET}" var="fm">
+ <h:column>
+ <h:outputText value="#{fm.name}"></h:outputText>
+ </h:column>
+ </h:dataTable>
+
+
+ </rich:panel>
+
+ <rich:panel>
+ <f:facet name="header">
+ <h:outputText value="ColdFusion Frameworks" />
+ </f:facet>
+ <rich:dropSupport id="cf" acceptedTypes="CF" dropValue="CF"
+ dropListener="#{eventBean.processDrop}" reRender="cftable, src">
+ </rich:dropSupport>
+
+ <h:dataTable id="cftable" columns="1" value="#{dndBean.containerCF}" var="fm">
+ <h:column>
+ <h:outputText value="#{fm.name}"></h:outputText>
+ </h:column>
+ </h:dataTable>
+
+
+ </rich:panel>
+
+
+
+
+ </h:panelGrid>
+ <a4j:commandButton action="#{dndBean.reset}" value="Start Over"
+ reRender="src,phptable,cftable,dnettable" />
+ </h:form>
+ <a4j:outputPanel ajaxRendered="true">
+ <h:messages></h:messages>
+ </a4j:outputPanel></div>
+
+
+ </ui:define>
+ <ui:define name="sources">
+ Here is fragment of page sources for given example:
+ <iframe
+ src="${facesContext.externalContext.requestContextPath}/richfaces/dragSupport/source/usage.html"
+ class="source_frame" />
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dragSupport.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dragSupport.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dragSupport.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,17 @@
+<!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">
+<ui:composition template="/templates/main.xhtml">
+ <ui:define name="title">RichFaces - Open Source Rich JSF Components - Drag-n-Drop. DragSupport</ui:define>
+ <ui:define name="body">
+ <rich:tabPanel switchType="server" styleClass="top_tab" contentClass="content_tab" inactiveTabClass="inactive_tab" activeTabClass="active_tab">
+ <rich:tab label="Usage">
+ <ui:include src="/richfaces/dragSupport/usage.xhtml"/>
+ </rich:tab>
+ </rich:tabPanel>
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dropSupport.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dropSupport.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/dropSupport.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,17 @@
+<!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">
+<ui:composition template="/templates/main.xhtml">
+ <ui:define name="title">RichFaces - Open Source Rich JSF Components - Drag-n-Drop. DragSupport</ui:define>
+ <ui:define name="body">
+ <rich:tabPanel switchType="server" styleClass="top_tab" contentClass="content_tab" inactiveTabClass="inactive_tab" activeTabClass="active_tab">
+ <rich:tab label="Usage">
+ <ui:include src="/richfaces/dragSupport/usage.xhtml"/>
+ </rich:tab>
+ </rich:tabPanel>
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/gmap/source/usage.html
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/gmap/source/usage.html (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/gmap/source/usage.html 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,242 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
+ "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type"
+content="text/html; charset=iso-8859-1">
+<meta name="GENERATOR" content="GNU source-highlight 2.1.2
+by Lorenzo Bettini
+http://www.lorenzobettini.it
+http://www.gnu.org/software/src-highlite">
+<title>usage.xhtml</title>
+<link rel="stylesheet" href="../../../css/xhtml-source.css" type="text/css">
+</head>
+<body>
+<pre><tt><span class="keyword"><h:panelGrid</span><span class="normal"> </span><span class="type">columns</span><span class="symbol">=</span><span class="string">"</span><span class="string">2</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:gmap</span><span class="normal"> </span><span class="type">gmapVar</span><span class="symbol">=</span><span class="string">"</span><span class="string">map</span><span class="string">"</span><span class="normal"> </span><span class="type">zoom</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{gmBean.zoom}</span><span class="string">"</span><span class="normal"> </span><span class="type">style</span><span class="symbol">=</span><span class="string">"</span><span class="string">width:400px;height:400px</span><span class="string">"</span><span class="normal"> </span><span class="type">gmapKey</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{gmBean.gmapkey}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"><h:panelGroup></span>
+<span class="normal"> </span><span class="keyword"><rich:tabPanel</span><span class="normal"> </span><span class="type">switchType</span><span class="symbol">=</span><span class="string">"</span><span class="string">ajax</span><span class="string">"</span><span class="normal"> </span><span class="type">width</span><span class="symbol">=</span><span class="string">"</span><span class="string">350</span><span class="string">"</span><span class="normal"> </span><span class="type">height</span><span class="symbol">=</span><span class="string">"</span><span class="string">400</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:tab</span><span class="normal"> </span><span class="type">label</span><span class="symbol">=</span><span class="string">"</span><span class="string">Using Google Map API</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:panelGrid</span><span class="normal"> </span><span class="type">columns</span><span class="symbol">=</span><span class="string">"</span><span class="string">2</span><span class="string">"</span><span class="normal"> </span><span class="type">columnClasses</span><span class="symbol">=</span><span class="string">"</span><span class="string">optionList</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Controls:</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"><h:panelGroup></span>
+<span class="normal"> </span><span class="keyword"><a</span><span class="normal"> </span><span class="type">href</span><span class="symbol">=</span><span class="string">"</span><span class="string">javascript: void 0</span><span class="string">"</span><span class="normal"> </span><span class="type">onclick</span><span class="symbol">=</span><span class="string">"</span><span class="string">map.hideControls()</span><span class="string">"</span><span class="keyword">></span><span class="normal">Hide</span><span class="keyword"></a></span>
+<span class="normal"> </span><span class="keyword"><a</span><span class="normal"> </span><span class="type">href</span><span class="symbol">=</span><span class="string">"</span><span class="string">javascript: void 0</span><span class="string">"</span><span class="normal"> </span><span class="type">onclick</span><span class="symbol">=</span><span class="string">"</span><span class="string">map.showControls()</span><span class="string">"</span><span class="keyword">></span><span class="normal">Show</span><span class="keyword"></a></span><span class="keyword"><br/></span>
+<span class="normal"> </span><span class="keyword"></h:panelGroup></span>
+
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Zoom:</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"><rich:inputNumberSlider</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">zoom</span><span class="string">"</span><span class="normal"> </span><span class="type">showInput</span><span class="symbol">=</span><span class="string">"</span><span class="string">false</span><span class="string">"</span><span class="normal"> </span><span class="type">minValue</span><span class="symbol">=</span><span class="string">"</span><span class="string">1</span><span class="string">"</span><span class="normal"> </span><span class="type">maxValue</span><span class="symbol">=</span><span class="string">"</span><span class="string">18</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{gmBean.zoom}</span><span class="string">"</span><span class="normal"> </span><span class="type">onchange</span><span class="symbol">=</span><span class="string">"</span><span class="string">map.setZoom(this.value)</span><span class="string">"</span><span class="keyword">/></span>
+<span class="normal"> </span>
+
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Map Type:</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"><h:panelGroup></span>
+<span class="normal"> </span><span class="keyword"><a</span><span class="normal"> </span><span class="type">href</span><span class="symbol">=</span><span class="string">"</span><span class="string">javascript: void 0</span><span class="string">"</span><span class="normal"> </span><span class="type">onclick</span><span class="symbol">=</span><span class="string">"</span><span class="string">map.setMapType(G_NORMAL_MAP)</span><span class="string">"</span><span class="keyword">></span><span class="normal">Normal</span><span class="keyword"></a></span>
+<span class="normal"> </span><span class="keyword"><a</span><span class="normal"> </span><span class="type">href</span><span class="symbol">=</span><span class="string">"</span><span class="string">javascript: void 0</span><span class="string">"</span><span class="normal"> </span><span class="type">onclick</span><span class="symbol">=</span><span class="string">"</span><span class="string">map.setMapType(G_SATELLITE_MAP)</span><span class="string">"</span><span class="keyword">></span><span class="normal">Satellite</span><span class="keyword"></a></span>
+<span class="normal"> </span><span class="keyword"><a</span><span class="normal"> </span><span class="type">href</span><span class="symbol">=</span><span class="string">"</span><span class="string">javascript: void 0</span><span class="string">"</span><span class="normal"> </span><span class="type">onclick</span><span class="symbol">=</span><span class="string">"</span><span class="string">map.setMapType(G_HYBRID_MAP)</span><span class="string">"</span><span class="keyword">></span><span class="normal">Hybrid</span><span class="keyword"></a></span><span class="keyword"><br/></span>
+<span class="normal"> </span><span class="keyword"></h:panelGroup></span>
+
+<span class="normal"> </span><span class="keyword"></h:panelGrid></span>
+<span class="normal"> </span><span class="keyword"></rich:tab></span>
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"><rich:tab</span><span class="normal"> </span><span class="type">label</span><span class="symbol">=</span><span class="string">"</span><span class="string">Using Ajax with JSON</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:dataGrid</span><span class="normal"> </span><span class="type">var</span><span class="symbol">=</span><span class="string">"</span><span class="string">place</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{gmBean.point}</span><span class="string">"</span><span class="normal"> </span><span class="type">columns</span><span class="symbol">=</span><span class="string">"</span><span class="string">2</span><span class="string">"</span><span class="normal"> </span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:graphicImage</span><span class="normal"> </span><span class="type">onclick</span><span class="symbol">=</span><span class="string">"</span><span class="string">showPlace('#{place.id}')</span><span class="string">"</span><span class="normal"> </span><span class="type">style</span><span class="symbol">=</span><span class="string">"</span><span class="string">cursor:pointer</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">resource://#{place.pic}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span><span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"></rich:dataGrid></span>
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"></rich:tab></span>
+
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"></rich:tabPanel></span>
+<span class="normal"> </span><span class="keyword"></h:panelGroup></span>
+<span class="keyword"></h:panelGrid></span>
+<span class="keyword"><h:form></span>
+<span class="normal"> </span><span class="keyword"><a4j:jsFunction</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">showPlace</span><span class="string">"</span><span class="normal"> </span><span class="type">data</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{gmBean.currentPlace}</span><span class="string">"</span><span class="normal"> </span><span class="type">reRender</span><span class="symbol">=</span><span class="string">"</span><span class="string">:zoom</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">oncomplete</span><span class="symbol">=</span><span class="string">"</span><span class="string">map.setCenter(new GLatLng(data.lat, data.lng),data.zoom)</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><a4j:actionparam</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">id</span><span class="string">"</span><span class="normal"> </span><span class="type">assignTo</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{gmBean.currentId}</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></a4j:actionparam></span>
+<span class="normal"> </span><span class="keyword"></a4j:jsFunction></span>
+<span class="keyword"></h:form></span>
+
+<span class="normal">....</span>
+<span class="normal">gmBean context:</span>
+
+<span class="normal">package org.richfaces.demo.gmap;</span>
+
+<span class="normal">import java.util.ArrayList;</span>
+<span class="normal">import java.util.HashMap;</span>
+<span class="normal">import java.util.Iterator;</span>
+
+<span class="normal">import javax.faces.context.ExternalContext;</span>
+<span class="normal">import javax.faces.context.FacesContext;</span>
+
+
+<span class="normal">public class Bean {</span>
+
+<span class="normal"> private ArrayList point;</span>
+<span class="normal"> private String currentId;</span>
+<span class="normal"> private int zoom;</span>
+<span class="normal"> private String gmapkey;</span>
+<span class="normal"> </span>
+<span class="normal"> </span>
+<span class="normal"> public String getCurrentId() {</span>
+<span class="normal"> return currentId;</span>
+<span class="normal"> }</span>
+
+
+
+<span class="normal"> public void setCurrentId(String currentId) {</span>
+<span class="normal"> this.currentId = currentId;</span>
+<span class="normal"> }</span>
+
+
+
+<span class="normal"> public ArrayList getPoint() {</span>
+<span class="normal"> if (point == null)</span>
+<span class="normal"> initData();</span>
+<span class="normal"> return point;</span>
+<span class="normal"> }</span>
+
+
+
+<span class="normal"> public void setPoint(ArrayList point) {</span>
+<span class="normal"> this.point = point;</span>
+<span class="normal"> }</span>
+
+
+<span class="normal"> public Place getCurrentPlace() {</span>
+<span class="normal"> Iterator it = point.iterator();</span>
+<span class="normal"> while (it.hasNext()) {</span>
+<span class="normal"> Place pl = (Place)it.next();</span>
+<span class="normal"> if (currentId.equals(pl.getId())) {</span>
+<span class="normal"> zoom = pl.getZoom(); //sync with zoom of new place</span>
+<span class="normal"> return pl;</span>
+<span class="normal"> }</span>
+<span class="normal"> }</span>
+<span class="normal"> return (Place)point.get(0); </span>
+<span class="normal"> }</span>
+
+<span class="normal"> private void initData() {</span>
+<span class="normal"> point = new ArrayList();</span>
+<span class="normal"> point.add(new Place ("goldengate", "/org/richfaces/demo/gmap/images/gold.gif", "37.81765", "-122.477603" , 14,</span>
+<span class="normal"> "Golden Gate Bridge, San Francisco"));</span>
+<span class="normal"> point.add(new Place ("eiffeltower", "/org/richfaces/demo/gmap/images//tower.gif", "48.858489", "2.295295" , 17,</span>
+<span class="normal"> "Eiffel Tower, Paris"));</span>
+<span class="normal"> point.add(new Place ("pyramids", "/org/richfaces/demo/gmap/images/pyramids.gif", "29.977785", "31.132915" , 15,</span>
+<span class="normal"> "Pyramids of Egypt, Giza"));</span>
+<span class="normal"> point.add(new Place ("exadel", "/org/richfaces/demo/gmap/images/exadel.gif", "37.971796", "-122.042334" , 18,</span>
+<span class="normal"> "Headquarter of Exadel, Inc , Concord"));</span>
+<span class="normal"> currentId = "eiffeltower";</span>
+<span class="normal"> }</span>
+
+
+
+<span class="normal"> public int getZoom() {</span>
+<span class="normal"> return zoom;</span>
+<span class="normal"> }</span>
+
+
+
+<span class="normal"> public void setZoom(int zoom) {</span>
+<span class="normal"> this.zoom = zoom;</span>
+<span class="normal"> }</span>
+
+
+
+<span class="normal"> public String getGmapkey() {</span>
+<span class="normal"> if (gmapkey == null) {</span>
+<span class="normal"> gmapkey = createKey();</span>
+<span class="normal"> }</span>
+<span class="normal"> return gmapkey;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> private String createKey() {</span>
+<span class="normal"> </span>
+<span class="normal"> HashMap hosts = new HashMap();</span>
+<span class="normal"> hosts.put("localhost", "ABQIAAAAxU6W9QEhFLMNdc3ATIu-VxT2yXp_ZAY8_ufC3CFXhHIE1NvwkxRkrpOGzxH8_ud3inE9pG1845-FCA");</span>
+<span class="normal"> hosts.put("localhost:8080", "ABQIAAAAxU6W9QEhFLMNdc3ATIu-VxTwM0brOpm-All5BF6PoaKBxRWWERTHxF5cK19oAMu3MP89kWdchuCH6w");</span>
+<span class="normal"> hosts.put("livedemo.exadel.com", "ABQIAAAAxU6W9QEhFLMNdc3ATIu-VxRl-RYVoXwacweAQq3rWvtlmS78MhRst9EH2cahrIp0_HHi_U1Zn7o1Fg");</span>
+<span class="normal"> </span>
+<span class="normal"> ExternalContext ec = FacesContext.getCurrentInstance().getExternalContext();</span>
+<span class="normal"> String host = (String)ec.getRequestHeaderMap().get("host");</span>
+<span class="normal"> String key = (String)hosts.get(host);</span>
+<span class="normal"> if (key != null) </span>
+<span class="normal"> return key;</span>
+<span class="normal"> else</span>
+<span class="normal"> return "get the key for your domain at http://www.google.com/apis/maps/signup.html";</span>
+<span class="normal"> </span>
+<span class="normal"> }</span>
+
+
+<span class="normal"> public void setGmapkey(String gmapkey) {</span>
+<span class="normal"> this.gmapkey = gmapkey;</span>
+<span class="normal"> }</span>
+
+<span class="normal">}</span>
+
+<span class="normal">.....</span>
+
+<span class="normal">Place.java:</span>
+
+
+<span class="normal">package org.richfaces.demo.gmap;</span>
+
+<span class="normal">public class Place {</span>
+<span class="normal"> private String pic;</span>
+<span class="normal"> private String id;</span>
+<span class="normal"> private String lat;</span>
+<span class="normal"> private String lng;</span>
+<span class="normal"> private int zoom;</span>
+<span class="normal"> private String desc;</span>
+<span class="normal"> </span>
+
+<span class="normal"> public String getDesc() {</span>
+<span class="normal"> return desc;</span>
+<span class="normal"> }</span>
+<span class="normal"> public void setDesc(String desc) {</span>
+<span class="normal"> this.desc = desc;</span>
+<span class="normal"> }</span>
+<span class="normal"> public Place(String id, String pic, String lat, String lng, int zoom, String desc) {</span>
+<span class="normal"> super();</span>
+<span class="normal"> this.id = id;</span>
+<span class="normal"> this.pic = pic;</span>
+<span class="normal"> this.lat = lat;</span>
+<span class="normal"> this.lng = lng;</span>
+<span class="normal"> this.zoom = zoom;</span>
+<span class="normal"> this.desc = desc;</span>
+<span class="normal"> }</span>
+<span class="normal"> public String getId() {</span>
+<span class="normal"> return id;</span>
+<span class="normal"> }</span>
+<span class="normal"> public void setId(String id) {</span>
+<span class="normal"> this.id = id;</span>
+<span class="normal"> }</span>
+<span class="normal"> public String getLat() {</span>
+<span class="normal"> return lat;</span>
+<span class="normal"> }</span>
+<span class="normal"> public void setLat(String lat) {</span>
+<span class="normal"> this.lat = lat;</span>
+<span class="normal"> }</span>
+<span class="normal"> public String getLng() {</span>
+<span class="normal"> return lng;</span>
+<span class="normal"> }</span>
+<span class="normal"> public void setLng(String lng) {</span>
+<span class="normal"> this.lng = lng;</span>
+<span class="normal"> }</span>
+<span class="normal"> public int getZoom() {</span>
+<span class="normal"> return zoom;</span>
+<span class="normal"> }</span>
+<span class="normal"> public void setZoom(int zoom) {</span>
+<span class="normal"> this.zoom = zoom;</span>
+<span class="normal"> }</span>
+<span class="normal"> public String getPic() {</span>
+<span class="normal"> return pic;</span>
+<span class="normal"> }</span>
+<span class="normal"> public void setPic(String pic) {</span>
+<span class="normal"> this.pic = pic;</span>
+<span class="normal"> }</span>
+<span class="normal">}</span>
+
+</tt></pre>
+</body>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/gmap/source/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/gmap/source/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/gmap/source/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,225 @@
+<h:panelGrid columns="2">
+ <rich:gmap gmapVar="map" zoom="#{gmBean.zoom}" style="width:400px;height:400px" gmapKey="#{gmBean.gmapkey}" />
+
+ <h:panelGroup>
+ <rich:tabPanel switchType="ajax" width="350" height="400">
+ <rich:tab label="Using Google Map API">
+ <h:panelGrid columns="2" columnClasses="optionList">
+ <h:outputText value="Controls:" />
+ <h:panelGroup>
+ <a href="javascript: void 0" onclick="map.hideControls()">Hide</a>
+ <a href="javascript: void 0" onclick="map.showControls()">Show</a><br/>
+ </h:panelGroup>
+
+ <h:outputText value="Zoom:" />
+ <rich:inputNumberSlider id="zoom" showInput="false" minValue="1" maxValue="18"
+ value="#{gmBean.zoom}" onchange="map.setZoom(this.value)"/>
+
+
+ <h:outputText value="Map Type:" />
+ <h:panelGroup>
+ <a href="javascript: void 0" onclick="map.setMapType(G_NORMAL_MAP)">Normal</a>
+ <a href="javascript: void 0" onclick="map.setMapType(G_SATELLITE_MAP)">Satellite</a>
+ <a href="javascript: void 0" onclick="map.setMapType(G_HYBRID_MAP)">Hybrid</a><br/>
+ </h:panelGroup>
+
+ </h:panelGrid>
+ </rich:tab>
+
+ <rich:tab label="Using Ajax with JSON">
+ <rich:dataGrid var="place" value="#{gmBean.point}" columns="2" >
+ <h:graphicImage onclick="showPlace('#{place.id}')" style="cursor:pointer" value="resource://#{place.pic}" />
+ </rich:dataGrid>
+
+ </rich:tab>
+
+
+ </rich:tabPanel>
+ </h:panelGroup>
+</h:panelGrid>
+<h:form>
+ <a4j:jsFunction name="showPlace" data="#{gmBean.currentPlace}" reRender=":zoom"
+ oncomplete="map.setCenter(new GLatLng(data.lat, data.lng),data.zoom)">
+ <a4j:actionparam name="id" assignTo="#{gmBean.currentId}"></a4j:actionparam>
+ </a4j:jsFunction>
+</h:form>
+
+....
+gmBean context:
+
+package org.richfaces.demo.gmap;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Iterator;
+
+import javax.faces.context.ExternalContext;
+import javax.faces.context.FacesContext;
+
+
+public class Bean {
+
+ private ArrayList point;
+ private String currentId;
+ private int zoom;
+ private String gmapkey;
+
+
+ public String getCurrentId() {
+ return currentId;
+ }
+
+
+
+ public void setCurrentId(String currentId) {
+ this.currentId = currentId;
+ }
+
+
+
+ public ArrayList getPoint() {
+ if (point == null)
+ initData();
+ return point;
+ }
+
+
+
+ public void setPoint(ArrayList point) {
+ this.point = point;
+ }
+
+
+ public Place getCurrentPlace() {
+ Iterator it = point.iterator();
+ while (it.hasNext()) {
+ Place pl = (Place)it.next();
+ if (currentId.equals(pl.getId())) {
+ zoom = pl.getZoom(); //sync with zoom of new place
+ return pl;
+ }
+ }
+ return (Place)point.get(0);
+ }
+
+ private void initData() {
+ point = new ArrayList();
+ point.add(new Place ("goldengate", "/org/richfaces/demo/gmap/images/gold.gif", "37.81765", "-122.477603" , 14,
+ "Golden Gate Bridge, San Francisco"));
+ point.add(new Place ("eiffeltower", "/org/richfaces/demo/gmap/images//tower.gif", "48.858489", "2.295295" , 17,
+ "Eiffel Tower, Paris"));
+ point.add(new Place ("pyramids", "/org/richfaces/demo/gmap/images/pyramids.gif", "29.977785", "31.132915" , 15,
+ "Pyramids of Egypt, Giza"));
+ point.add(new Place ("exadel", "/org/richfaces/demo/gmap/images/exadel.gif", "37.971796", "-122.042334" , 18,
+ "Headquarter of Exadel, Inc , Concord"));
+ currentId = "eiffeltower";
+ }
+
+
+
+ public int getZoom() {
+ return zoom;
+ }
+
+
+
+ public void setZoom(int zoom) {
+ this.zoom = zoom;
+ }
+
+
+
+ public String getGmapkey() {
+ if (gmapkey == null) {
+ gmapkey = createKey();
+ }
+ return gmapkey;
+ }
+
+ private String createKey() {
+
+ HashMap hosts = new HashMap();
+ hosts.put("localhost", "ABQIAAAAxU6W9QEhFLMNdc3ATIu-VxT2yXp_ZAY8_ufC3CFXhHIE1NvwkxRkrpOGzxH8_ud3inE9pG1845-FCA");
+ hosts.put("localhost:8080", "ABQIAAAAxU6W9QEhFLMNdc3ATIu-VxTwM0brOpm-All5BF6PoaKBxRWWERTHxF5cK19oAMu3MP89kWdchuCH6w");
+ hosts.put("livedemo.exadel.com", "ABQIAAAAxU6W9QEhFLMNdc3ATIu-VxRl-RYVoXwacweAQq3rWvtlmS78MhRst9EH2cahrIp0_HHi_U1Zn7o1Fg");
+
+ ExternalContext ec = FacesContext.getCurrentInstance().getExternalContext();
+ String host = (String)ec.getRequestHeaderMap().get("host");
+ String key = (String)hosts.get(host);
+ if (key != null)
+ return key;
+ else
+ return "get the key for your domain at http://www.google.com/apis/maps/signup.html";
+
+ }
+
+
+ public void setGmapkey(String gmapkey) {
+ this.gmapkey = gmapkey;
+ }
+
+}
+
+.....
+
+Place.java:
+
+
+package org.richfaces.demo.gmap;
+
+public class Place {
+ private String pic;
+ private String id;
+ private String lat;
+ private String lng;
+ private int zoom;
+ private String desc;
+
+
+ public String getDesc() {
+ return desc;
+ }
+ public void setDesc(String desc) {
+ this.desc = desc;
+ }
+ public Place(String id, String pic, String lat, String lng, int zoom, String desc) {
+ super();
+ this.id = id;
+ this.pic = pic;
+ this.lat = lat;
+ this.lng = lng;
+ this.zoom = zoom;
+ this.desc = desc;
+ }
+ public String getId() {
+ return id;
+ }
+ public void setId(String id) {
+ this.id = id;
+ }
+ public String getLat() {
+ return lat;
+ }
+ public void setLat(String lat) {
+ this.lat = lat;
+ }
+ public String getLng() {
+ return lng;
+ }
+ public void setLng(String lng) {
+ this.lng = lng;
+ }
+ public int getZoom() {
+ return zoom;
+ }
+ public void setZoom(int zoom) {
+ this.zoom = zoom;
+ }
+ public String getPic() {
+ return pic;
+ }
+ public void setPic(String pic) {
+ this.pic = pic;
+ }
+}
+
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/gmap/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/gmap/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/gmap/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -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:ui="http://java.sun.com/jsf/facelets"
+ 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:rich="http://richfaces.ajax4jsf.org/rich">
+ <ui:composition template="/templates/component-sample.xhtml">
+ <ui:define name="sample">
+
+ <style>
+ .optionList {
+ height:30px;
+ }
+ </style>
+
+ <p>The
+ Richfaces Gmap component is a wrapper for standard Google Map widgets. You can use the whole set of
+ functionality Google Map API provides for you.
+ See <a target="_blank" href="http://www.google.com/apis/maps/documentation/">
+ Google Maps API Version 2 Documentation</a> for Google Map API fetures.
+ </p>
+ <p>
+ Gmap has built-in Ajax capability. You do not need to uptade the component using reRender to see
+ the changes. RichFaces Gmap component is good together with Ajax4jsf jsFunction
+ component that allows to invoke the server side data and return it in a JSON format.
+
+ </p>
+
+ <h:panelGrid columns="2">
+ <rich:gmap gmapVar="map" zoom="#{gmBean.zoom}" style="width:400px;height:400px" gmapKey="#{gmBean.gmapkey}" />
+
+ <h:panelGroup>
+ <rich:tabPanel switchType="ajax" width="350" height="400">
+ <rich:tab label="Using Google Map API">
+ <h:panelGrid columns="2" columnClasses="optionList">
+ <h:outputText value="Controls:" />
+ <h:panelGroup>
+ <a href="javascript: void 0" onclick="map.hideControls()">Hide</a>
+ <a href="javascript: void 0" onclick="map.showControls()">Show</a><br/>
+ </h:panelGroup>
+
+ <h:outputText value="Zoom:" />
+ <rich:inputNumberSlider id="zoom" showInput="false" minValue="1" maxValue="18"
+ value="#{gmBean.zoom}" onchange="map.setZoom(this.value)"/>
+
+
+ <h:outputText value="Map Type:" />
+ <h:panelGroup>
+ <a href="javascript: void 0" onclick="map.setMapType(G_NORMAL_MAP)">Normal</a>
+ <a href="javascript: void 0" onclick="map.setMapType(G_SATELLITE_MAP)">Satellite</a>
+ <a href="javascript: void 0" onclick="map.setMapType(G_HYBRID_MAP)">Hybrid</a><br/>
+ </h:panelGroup>
+
+ </h:panelGrid>
+ </rich:tab>
+
+ <rich:tab label="Using Ajax with JSON">
+ <rich:dataGrid var="place" value="#{gmBean.point}" columns="2" >
+ <h:graphicImage onclick="showPlace('#{place.id}')" style="cursor:pointer" value="resource://#{place.pic}" />
+ </rich:dataGrid>
+
+ </rich:tab>
+
+
+ </rich:tabPanel>
+ </h:panelGroup>
+ </h:panelGrid>
+ <h:form>
+ <a4j:jsFunction name="showPlace" data="#{gmBean.currentPlace}" reRender=":zoom"
+ oncomplete="map.setCenter(new GLatLng(data.lat, data.lng),data.zoom)">
+ <a4j:actionparam name="id" assignTo="#{gmBean.currentId}"></a4j:actionparam>
+ </a4j:jsFunction>
+ </h:form>
+ </ui:define>
+ <ui:define name="sources">
+ Here is a fragment of page sources for the given example:
+ <iframe src="${facesContext.externalContext.requestContextPath}/richfaces/gmap/source/usage.html" class="source_frame"/>
+ </ui:define>
+ </ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/gmap.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/gmap.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/gmap.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,17 @@
+<!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">
+<ui:composition template="/templates/main.xhtml">
+ <ui:define name="title">RichFaces - Open Source Rich JSF Components - Google Map Component</ui:define>
+ <ui:define name="body">
+ <rich:tabPanel switchType="server" styleClass="top_tab" contentClass="content_tab" inactiveTabClass="inactive_tab" activeTabClass="active_tab">
+ <rich:tab label="Usage">
+ <ui:include src="/richfaces/gmap/usage.xhtml"/>
+ </rich:tab>
+ </rich:tabPanel>
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSlider/source/usage.html
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSlider/source/usage.html (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSlider/source/usage.html 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,25 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
+ "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type"
+content="text/html; charset=iso-8859-1">
+<meta name="GENERATOR" content="GNU source-highlight 2.1.2
+by Lorenzo Bettini
+http://www.lorenzobettini.it
+http://www.gnu.org/software/src-highlite">
+<title>usage.xhtml</title>
+<link rel="stylesheet" href="../../../css/xhtml-source.css" type="text/css">
+</head>
+<body>
+<pre><tt><span class="normal">Here is an example of default inputNumberSlider:</span>
+<span class="keyword"><rich:inputNumberSlider</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">50</span><span class="string">"</span><span class="keyword">/></span>
+
+<span class="normal">Here is "minimalistic" input:</span>
+<span class="keyword"><rich:inputNumberSlider</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">50</span><span class="string">"</span><span class="normal"> </span><span class="type">showInput</span><span class="symbol">=</span><span class="string">"</span><span class="string">false</span><span class="string">"</span><span class="normal"> </span><span class="type">enableManualInput</span><span class="symbol">=</span><span class="string">"</span><span class="string">false</span><span class="string">"</span><span class="normal"> </span><span class="type">showBoundaryValues</span><span class="symbol">=</span><span class="string">"</span><span class="string">false</span><span class="string">"</span><span class="normal"> </span><span class="type">showToolTip</span><span class="symbol">=</span><span class="string">"</span><span class="string">false</span><span class="string">"</span><!
span class="keyword">/></span>
+
+<span class="normal">Another variation of input:</span>
+<span class="keyword"><rich:inputNumberSlider</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">500</span><span class="string">"</span><span class="normal"> </span><span class="type">width</span><span class="symbol">=</span><span class="string">"</span><span class="string">500</span><span class="string">"</span><span class="normal"> </span><span class="type">maxValue</span><span class="symbol">=</span><span class="string">"</span><span class="string">1000</span><span class="string">"</span><span class="normal"> </span><span class="type">step</span><span class="symbol">=</span><span class="string">"</span><span class="string">50</span><span class="string">"</span><span class="normal"> </span><span class="type">showToolTip</span><span class="symbol">=</span><span class="string">"</span><span class="string">false</span><span class="string">"</span><span class="normal"> </span><spa!
n class="keyword">/></span>
+</tt></pre>
+</body>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSlider/source/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSlider/source/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSlider/source/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,8 @@
+Here is an example of default inputNumberSlider:
+<rich:inputNumberSlider value="50"/>
+
+Here is "minimalistic" input:
+<rich:inputNumberSlider value="50" showInput="false" enableManualInput="false" showBoundaryValues="false" showToolTip="false"/>
+
+Another variation of input:
+<rich:inputNumberSlider value="500" width="500" maxValue="1000" step="50" showToolTip="false" />
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSlider/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSlider/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSlider/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,31 @@
+<!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:a4j="https://ajax4jsf.dev.java.net/ajax"
+ xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+<ui:composition template="/templates/component-sample.xhtml">
+ <ui:define name="sample">
+ <p>
+ InputNumberSlider is highly customizable components used to define numeric input in a given range. User can use slider or just type in input field.
+ </p>
+ <p>
+ Here is an example of default inputNumberSlider:
+ <rich:inputNumberSlider value="50"/>
+ </p>
+ <p>
+ Here is "minimalistic" input:
+ <rich:inputNumberSlider value="50" showInput="false" enableManualInput="false" showBoundaryValues="false" showToolTip="false"/>
+ </p>
+ <p>
+ Another variation of input:
+ <rich:inputNumberSlider value="500" width="500" maxValue="1000" step="50" showToolTip="false" />
+ </p>
+ </ui:define>
+ <ui:define name="sources">
+ Here is fragment of page sources for given example:
+ <iframe src="${facesContext.externalContext.requestContextPath}/richfaces/inputNumberSlider/source/usage.html" class="source_frame"/>
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSlider.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSlider.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSlider.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,18 @@
+<!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">
+
+<ui:composition template="/templates/main.xhtml">
+ <ui:define name="title">RichFaces - Open Source Rich JSF Components - InputNumberSlider</ui:define>
+ <ui:define name="body">
+ <rich:tabPanel switchType="server" styleClass="top_tab" contentClass="content_tab" inactiveTabClass="inactive_tab" activeTabClass="active_tab">
+ <rich:tab label="Usage">
+ <ui:include src="/richfaces/inputNumberSlider/usage.xhtml"/>
+ </rich:tab>
+ </rich:tabPanel>
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSpinner/source/usage.html
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSpinner/source/usage.html (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSpinner/source/usage.html 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,21 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
+ "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type"
+content="text/html; charset=iso-8859-1">
+<meta name="GENERATOR" content="GNU source-highlight 2.1.2
+by Lorenzo Bettini
+http://www.lorenzobettini.it
+http://www.gnu.org/software/src-highlite">
+<title>usage.xhtml</title>
+<link rel="stylesheet" href="../../../css/xhtml-source.css" type="text/css">
+</head>
+<body>
+<pre><tt><span class="normal">Here is an example of default inputNumberSpinner:</span>
+<span class="keyword"><rich:inputNumberSpinner</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">50</span><span class="string">"</span><span class="keyword">/></span>
+
+<span class="normal">Here is one more inputNumberSpinner:</span>
+<span class="keyword"><rich:inputNumberSpinner</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">50</span><span class="string">"</span><span class="normal"> </span><span class="type">step</span><span class="symbol">=</span><span class="string">"</span><span class="string">10</span><span class="string">"</span><span class="keyword">/></span></tt></pre>
+</body>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSpinner/source/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSpinner/source/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSpinner/source/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,5 @@
+Here is an example of default inputNumberSpinner:
+<rich:inputNumberSpinner value="50"/>
+
+Here is one more inputNumberSpinner:
+<rich:inputNumberSpinner value="50" step="10"/>
\ No newline at end of file
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSpinner/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSpinner/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSpinner/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,27 @@
+<!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:a4j="https://ajax4jsf.dev.java.net/ajax"
+ xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+<ui:composition template="/templates/component-sample.xhtml">
+ <ui:define name="sample">
+ <p>
+ InputNumberSpinner is a highly customizable component used to define numeric input in a given range. A user can use a spinner control or just type in an input field.
+ </p>
+ <p>
+ Here is an example of default inputNumberSpinner:
+ <rich:inputNumberSpinner value="50"/>
+ </p>
+ <p>
+ Here is one more inputNumberSpinner:
+ <rich:inputNumberSpinner value="50" step="10"/>
+ </p>
+ </ui:define>
+ <ui:define name="sources">
+ Here is a fragment of page sources for a given example:
+ <iframe src="${facesContext.externalContext.requestContextPath}/richfaces/inputNumberSpinner/source/usage.html" class="source_frame"/>
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSpinner.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSpinner.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/inputNumberSpinner.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,18 @@
+<!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">
+
+<ui:composition template="/templates/main.xhtml">
+ <ui:define name="title">RichFaces - Open Source Rich JSF Components - InputNumberSpinner</ui:define>
+ <ui:define name="body">
+ <rich:tabPanel switchType="ajax" styleClass="top_tab" contentClass="content_tab" inactiveTabClass="inactive_tab" activeTabClass="active_tab">
+ <rich:tab label="Usage">
+ <ui:include src="/richfaces/inputNumberSpinner/usage.xhtml"/>
+ </rich:tab>
+ </rich:tabPanel>
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/modalPanel/source/usage.html
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/modalPanel/source/usage.html (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/modalPanel/source/usage.html 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,47 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
+ "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type"
+content="text/html; charset=iso-8859-1">
+<meta name="GENERATOR" content="GNU source-highlight 2.1.2
+by Lorenzo Bettini
+http://www.lorenzobettini.it
+http://www.gnu.org/software/src-highlite">
+<title>usage.xhtml</title>
+<link rel="stylesheet" href="../../../css/xhtml-source.css" type="text/css">
+</head>
+<body>
+<pre><tt>
+<span class="keyword"><p></span><span class="normal">RichFaces Modal Panel is a container that blocks the operation on the base page when the modal </span>
+<span class="normal">panel is shown.</span><span class="keyword"></p></span>
+<span class="keyword"><p></span><span class="normal">You can show the modal panel using the folowing javascript function: Richfaces.hideModalPanel(id, params). </span>
+<span class="normal">For example, </span><span class="keyword"><a</span><span class="normal"> </span><span class="type">href</span><span class="symbol">=</span><span class="string">"</span><span class="string">javascript:Richfaces.showModalPanel('mp',{width:450, top:200})</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal">Richfaces.showModalPanel('mp',{width:450, top:200})</span><span class="keyword"></a></span><span class="keyword"></p></span>
+<span class="keyword"><div</span><span class="normal"> </span><span class="type">class</span><span class="symbol">=</span><span class="string">"</span><span class="string">sample-container</span><span class="string">"</span><span class="keyword">></span>
+
+
+
+<span class="keyword"><rich:modalPanel</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">mp</span><span class="string">"</span><span class="normal"> </span><span class="type">minHeight</span><span class="symbol">=</span><span class="string">"</span><span class="string">200</span><span class="string">"</span><span class="normal"> </span><span class="type">minWidth</span><span class="symbol">=</span><span class="string">"</span><span class="string">450</span><span class="string">"</span><span class="normal"> </span>
+<span class="normal"> </span><span class="type">height</span><span class="symbol">=</span><span class="string">"</span><span class="string">200</span><span class="string">"</span><span class="normal"> </span><span class="type">width</span><span class="symbol">=</span><span class="string">"</span><span class="string">500</span><span class="string">"</span><span class="normal"> </span><span class="type">zindex</span><span class="symbol">=</span><span class="string">"</span><span class="string">2000</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">header</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Modal Panel Title</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">controls</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:graphicImage</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">/images/modal/close.png</span><span class="string">"</span><span class="normal"> </span><span class="type">style</span><span class="symbol">=</span><span class="string">"</span><span class="string">cursor:pointer</span><span class="string">"</span><span class="normal"> </span><span class="type">onclick</span><span class="symbol">=</span><span class="string">"</span><span class="string">Richfaces.hideModalPanel('mp')</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+<span class="normal"> </span><span class="keyword"><p></span><span class="normal">Any JSF content might be inside the panel. In case of using </span>
+<span class="normal"> Facelets or JSF 1.2, it might be any mixed content.</span><span class="keyword"></p></span>
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"><p></span><span class="normal">The RichFaces modal panel is good with </span><span class="preproc">&lt;</span><span class="normal">a4j:include</span><span class="preproc">&gt;</span><span class="normal"> to create</span>
+<span class="normal"> a wizard like behavior.</span><span class="keyword"></p></span>
+<span class="normal"> </span><span class="keyword"><p></span><span class="normal">The model panel is open and closed from the javascript function</span>
+<span class="normal"> on </span><span class="keyword"><i></span><span class="normal">Richfaces</span><span class="keyword"></i></span><span class="normal"> object. The following code </span>
+<span class="normal"> </span><span class="keyword"><a</span><span class="normal"> </span><span class="type">href</span><span class="symbol">=</span><span class="string">"</span><span class="string">javascript:Richfaces.hideModalPanel('mp')</span><span class="string">"</span><span class="keyword">></span><span class="normal">hide this panel</span><span class="keyword"></a></span><span class="normal">:</span>
+<span class="normal"> Richfaces.hideModalPanel('mp')</span><span class="keyword"></p></span>
+<span class="normal"> </span>
+<span class="keyword"></rich:modalPanel></span>
+
+</tt></pre>
+</body>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/modalPanel/source/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/modalPanel/source/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/modalPanel/source/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,30 @@
+
+<p>RichFaces Modal Panel is a container that blocks the operation on the base page when the modal
+panel is shown.</p>
+<p>You can show the modal panel using the folowing javascript function: Richfaces.hideModalPanel(id, params).
+For example, <a href="javascript:Richfaces.showModalPanel('mp',{width:450, top:200})">
+Richfaces.showModalPanel('mp',{width:450, top:200})</a></p>
+<div class="sample-container">
+
+
+
+<rich:modalPanel id="mp" minHeight="200" minWidth="450"
+ height="200" width="500" zindex="2000">
+ <f:facet name="header">
+ <h:outputText value="Modal Panel Title" />
+ </f:facet>
+ <f:facet name="controls">
+ <h:graphicImage value="/images/modal/close.png" style="cursor:pointer" onclick="Richfaces.hideModalPanel('mp')" />
+ </f:facet>
+ <p>Any JSF content might be inside the panel. In case of using
+ Facelets or JSF 1.2, it might be any mixed content.</p>
+
+ <p>The RichFaces modal panel is good with <a4j:include> to create
+ a wizard like behavior.</p>
+ <p>The model panel is open and closed from the javascript function
+ on <i>Richfaces</i> object. The following code
+ <a href="javascript:Richfaces.hideModalPanel('mp')">hide this panel</a>:
+ Richfaces.hideModalPanel('mp')</p>
+
+</rich:modalPanel>
+
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/modalPanel/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/modalPanel/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/modalPanel/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,53 @@
+<!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:a4j="https://ajax4jsf.dev.java.net/ajax"
+ xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+<ui:composition template="/templates/component-sample.xhtml">
+ <ui:define name="sample">
+
+
+ <p>RichFaces Modal Panel is a container that blocks the operation on the base page when the modal
+ panel is shown.</p>
+ <p>You can show the modal panel using the folowing javascript function: Richfaces.hideModalPanel(id, params).
+ For example, <a href="javascript:Richfaces.showModalPanel('mp',{width:450, top:200})">
+ Richfaces.showModalPanel('mp',{width:450, top:200})</a></p>
+ <div class="sample-container">
+
+
+
+ <rich:modalPanel id="mp" minHeight="200" minWidth="450"
+ height="200" width="500" zindex="2000">
+ <f:facet name="header">
+ <h:outputText value="Modal Panel Title" />
+ </f:facet>
+ <f:facet name="controls">
+ <h:graphicImage value="/images/modal/close.png" style="cursor:pointer" onclick="Richfaces.hideModalPanel('mp')" />
+ </f:facet>
+ <p>Any JSF content might be inside the panel. In case of using
+ Facelets or JSF 1.2, it might be any mixed content.</p>
+
+ <p>The RichFaces modal panel is good with <a4j:include> to create
+ a wizard like behavior.</p>
+ <p>The model panel is open and closed from the javascript function
+ on <i>Richfaces</i> object. The following code
+ <a href="javascript:Richfaces.hideModalPanel('mp')">hide this panel</a>:
+ Richfaces.hideModalPanel('mp')</p>
+
+ </rich:modalPanel>
+
+
+
+ </div>
+
+ </ui:define>
+ <ui:define name="sources">
+ Here is a fragment of page sources for the given example:
+ <iframe
+ src="${facesContext.externalContext.requestContextPath}/richfaces/modalPanel/source/usage.html"
+ class="source_frame" />
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/modalPanel.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/modalPanel.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/modalPanel.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,17 @@
+<!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">
+<ui:composition template="/templates/main.xhtml">
+ <ui:define name="title">RichFaces - Open Source Rich JSF Components - Modal Panel</ui:define>
+ <ui:define name="body">
+ <rich:tabPanel switchType="server" styleClass="top_tab" contentClass="content_tab" inactiveTabClass="inactive_tab" activeTabClass="active_tab">
+ <rich:tab label="Usage">
+ <ui:include src="/richfaces/modalPanel/usage.xhtml"/>
+ </rich:tab>
+ </rich:tabPanel>
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/paint2D/source/usage.html
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/paint2D/source/usage.html (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/paint2D/source/usage.html 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,133 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
+ "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type"
+content="text/html; charset=iso-8859-1">
+<meta name="GENERATOR" content="GNU source-highlight 2.1.2
+by Lorenzo Bettini
+http://www.lorenzobettini.it
+http://www.gnu.org/software/src-highlite">
+<title>usage.xhtml</title>
+<link rel="stylesheet" href="../../../css/xhtml-source.css" type="text/css">
+</head>
+<body>
+<pre><tt><span class="keyword"><h:form></span>
+
+<span class="normal"> </span><span class="keyword"><h:panelGrid</span><span class="normal"> </span><span class="type">columns</span><span class="symbol">=</span><span class="string">"</span><span class="string">3</span><span class="string">"</span><span class="normal"> </span><span class="type">width</span><span class="symbol">=</span><span class="string">"</span><span class="string">100%</span><span class="string">"</span><span class="keyword">></span>
+
+<span class="normal"> </span><span class="keyword"><h:inputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{paintData.text}</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><a4j:support</span><span class="normal"> </span><span class="type">event</span><span class="symbol">=</span><span class="string">"</span><span class="string">onkeyup</span><span class="string">"</span><span class="normal"> </span><span class="type">reRender</span><span class="symbol">=</span><span class="string">"</span><span class="string">:painter</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></h:inputText></span>
+
+<span class="normal"> </span><span class="keyword"><h:panelGroup></span>
+<span class="normal"> Color:</span>
+<span class="normal"> </span><span class="keyword"><rich:inputNumberSlider</span><span class="normal"> </span><span class="type">showInput</span><span class="symbol">=</span><span class="string">"</span><span class="string">false</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">showBoundaryValues</span><span class="symbol">=</span><span class="string">"</span><span class="string">false</span><span class="string">"</span><span class="normal"> </span><span class="type">showToolTip</span><span class="symbol">=</span><span class="string">"</span><span class="string">false</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{paintData.color}</span><span class="string">"</span><span class="normal"> </span><span class="type">step</span><span class="symbol">=</span><span class="string">"</span><span class="string">255</span><span class="string">"</span><span class="normal"> </span><span class="type">minValue</span><span class="symbol">=</span><span class="string">"</span><span class="string">0</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">maxValue</span><span class="symbol">=</span><span class="string">"</span><span class="string">16000000</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><a4j:support</span><span class="normal"> </span><span class="type">event</span><span class="symbol">=</span><span class="string">"</span><span class="string">onchange</span><span class="string">"</span><span class="normal"> </span><span class="type">reRender</span><span class="symbol">=</span><span class="string">"</span><span class="string">:painter</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"><f:convertNumber</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:inputNumberSlider></span>
+
+<span class="normal"> </span><span class="keyword"></h:panelGroup></span>
+
+
+<span class="normal"> </span><span class="keyword"><h:panelGroup></span>
+<span class="normal"> Shadow:</span>
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"><rich:inputNumberSlider</span><span class="normal"> </span><span class="type">showInput</span><span class="symbol">=</span><span class="string">"</span><span class="string">false</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">showBoundaryValues</span><span class="symbol">=</span><span class="string">"</span><span class="string">false</span><span class="string">"</span><span class="normal"> </span><span class="type">showToolTip</span><span class="symbol">=</span><span class="string">"</span><span class="string">false</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{paintData.scale}</span><span class="string">"</span><span class="normal"> </span><span class="type">step</span><span class="symbol">=</span><span class="string">"</span><span class="string">0.5</span><span class="string">"</span><span class="normal"> </span><span class="type">minValue</span><span class="symbol">=</span><span class="string">"</span><span class="string">0</span><span class="string">"</span><span class="normal"> </span><span class="type">maxValue</span><span class="symbol">=</span><span class="string">"</span><span class="string">3</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><a4j:support</span><span class="normal"> </span><span class="type">event</span><span class="symbol">=</span><span class="string">"</span><span class="string">onchange</span><span class="string">"</span><span class="normal"> </span><span class="type">reRender</span><span class="symbol">=</span><span class="string">"</span><span class="string">:painter</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"><f:convertNumber</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:inputNumberSlider></span>
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"></h:panelGroup></span>
+
+
+<span class="normal"> </span><span class="keyword"></h:panelGrid></span>
+<span class="keyword"></h:form></span><span class="normal"> </span>
+<span class="keyword"><rich:paint2D</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">painter</span><span class="string">"</span><span class="normal"> </span><span class="type">width</span><span class="symbol">=</span><span class="string">"</span><span class="string">300</span><span class="string">"</span><span class="normal"> </span><span class="type">height</span><span class="symbol">=</span><span class="string">"</span><span class="string">120</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">data</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{paintData}</span><span class="string">"</span><span class="normal"> </span><span class="type">format</span><span class="symbol">=</span><span class="string">"</span><span class="string">png</span><span class="string">"</span><span class="normal"> </span><span class="type">paint</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{paintBean.paint}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span>
+<span class="normal">.....</span>
+<span class="normal">paintBean content:</span>
+
+<span class="normal">package org.richfaces.demo.paint2d;</span>
+
+
+<span class="normal">import java.awt.Color;</span>
+<span class="normal">import java.awt.Font;</span>
+<span class="normal">import java.awt.Graphics2D;</span>
+<span class="normal">import java.awt.geom.AffineTransform;</span>
+
+<span class="normal">public class PaintBean {</span>
+
+<span class="normal"> private int fontSize;</span>
+
+<span class="normal"> public void paint(Graphics2D g2d, Object obj) {</span>
+<span class="normal"> </span>
+<span class="normal"> PaintData data = (PaintData) obj;</span>
+<span class="normal"> </span>
+<span class="normal"> int testLenght = data.text.length();</span>
+<span class="normal"> fontSize = testLenght < 8? 40 : 40 - (testLenght - 8);</span>
+<span class="normal"> if (fontSize < 12)fontSize = 12;</span>
+<span class="normal"> Font font = new Font("Serif", Font.HANGING_BASELINE, fontSize);</span>
+<span class="normal"> g2d.setFont(font);</span>
+<span class="normal"> </span>
+<span class="normal"> int x = 10;</span>
+<span class="normal"> int y = fontSize*5/2;</span>
+<span class="normal"> g2d.translate(x, y);</span>
+<span class="normal"> Color color = new Color(data.color );</span>
+<span class="normal"> </span>
+<span class="normal"> g2d.setPaint(new Color(color.getRed(),color.getGreen(), color.getBlue(), 30));</span>
+<span class="normal"> AffineTransform origTransform = g2d.getTransform();</span>
+<span class="normal"> g2d.shear(-0.5*data.scale, 0);</span>
+<span class="normal"> g2d.scale(1, data.scale);</span>
+<span class="normal"> g2d.drawString(data.text, 0, 0);</span>
+<span class="normal"> </span>
+<span class="normal"> g2d.setTransform(origTransform);</span>
+<span class="normal"> g2d.setPaint(color);</span>
+<span class="normal"> g2d.drawString(data.text, 0, 0);</span>
+<span class="normal"> }</span>
+<span class="normal">}</span>
+
+<span class="normal">...</span>
+
+<span class="normal">paintData bean content:</span>
+
+<span class="normal">package org.richfaces.demo.paint2d;</span>
+
+<span class="normal">import java.io.Serializable;</span>
+
+<span class="normal">public class PaintData implements Serializable{</span>
+<span class="normal"> String text;</span>
+<span class="normal"> int color;</span>
+<span class="normal"> float scale;</span>
+<span class="normal"> public int getColor() {</span>
+<span class="normal"> return color;</span>
+<span class="normal"> }</span>
+<span class="normal"> public void setColor(int color) {</span>
+<span class="normal"> this.color = color;</span>
+<span class="normal"> }</span>
+<span class="normal"> public float getScale() {</span>
+<span class="normal"> return scale;</span>
+<span class="normal"> }</span>
+<span class="normal"> public void setScale(float scale) {</span>
+<span class="normal"> this.scale = scale;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public String getText() {</span>
+<span class="normal"> return text;</span>
+<span class="normal"> }</span>
+<span class="normal"> public void setText(String text) {</span>
+<span class="normal"> this.text = text;</span>
+<span class="normal"> }</span>
+<span class="normal">}</span>
+
+
+
+</tt></pre>
+</body>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/paint2D/source/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/paint2D/source/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/paint2D/source/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,116 @@
+<h:form>
+
+ <h:panelGrid columns="3" width="100%">
+
+ <h:inputText value="#{paintData.text}">
+ <a4j:support event="onkeyup" reRender=":painter" />
+ </h:inputText>
+
+ <h:panelGroup>
+ Color:
+ <rich:inputNumberSlider showInput="false"
+ showBoundaryValues="false" showToolTip="false"
+ value="#{paintData.color}" step="255" minValue="0"
+ maxValue="16000000">
+ <a4j:support event="onchange" reRender=":painter" />
+ <f:convertNumber />
+ </rich:inputNumberSlider>
+
+ </h:panelGroup>
+
+
+ <h:panelGroup>
+ Shadow:
+
+ <rich:inputNumberSlider showInput="false"
+ showBoundaryValues="false" showToolTip="false"
+ value="#{paintData.scale}" step="0.5" minValue="0" maxValue="3">
+ <a4j:support event="onchange" reRender=":painter" />
+ <f:convertNumber />
+ </rich:inputNumberSlider>
+
+ </h:panelGroup>
+
+
+ </h:panelGrid>
+</h:form>
+<rich:paint2D id="painter" width="300" height="120"
+ data="#{paintData}" format="png" paint="#{paintBean.paint}" />
+
+.....
+paintBean content:
+
+package org.richfaces.demo.paint2d;
+
+
+import java.awt.Color;
+import java.awt.Font;
+import java.awt.Graphics2D;
+import java.awt.geom.AffineTransform;
+
+public class PaintBean {
+
+ private int fontSize;
+
+ public void paint(Graphics2D g2d, Object obj) {
+
+ PaintData data = (PaintData) obj;
+
+ int testLenght = data.text.length();
+ fontSize = testLenght < 8? 40 : 40 - (testLenght - 8);
+ if (fontSize < 12)fontSize = 12;
+ Font font = new Font("Serif", Font.HANGING_BASELINE, fontSize);
+ g2d.setFont(font);
+
+ int x = 10;
+ int y = fontSize*5/2;
+ g2d.translate(x, y);
+ Color color = new Color(data.color );
+
+ g2d.setPaint(new Color(color.getRed(),color.getGreen(), color.getBlue(), 30));
+ AffineTransform origTransform = g2d.getTransform();
+ g2d.shear(-0.5*data.scale, 0);
+ g2d.scale(1, data.scale);
+ g2d.drawString(data.text, 0, 0);
+
+ g2d.setTransform(origTransform);
+ g2d.setPaint(color);
+ g2d.drawString(data.text, 0, 0);
+ }
+}
+
+...
+
+paintData bean content:
+
+package org.richfaces.demo.paint2d;
+
+import java.io.Serializable;
+
+public class PaintData implements Serializable{
+ String text;
+ int color;
+ float scale;
+ public int getColor() {
+ return color;
+ }
+ public void setColor(int color) {
+ this.color = color;
+ }
+ public float getScale() {
+ return scale;
+ }
+ public void setScale(float scale) {
+ this.scale = scale;
+ }
+
+ public String getText() {
+ return text;
+ }
+ public void setText(String text) {
+ this.text = text;
+ }
+}
+
+
+
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/paint2D/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/paint2D/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/paint2D/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -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:ui="http://java.sun.com/jsf/facelets"
+ 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:rich="http://richfaces.ajax4jsf.org/rich">
+<ui:composition template="/templates/component-sample.xhtml">
+ <ui:define name="sample">
+
+
+ <p>The Paint2D component allows to create a graphic image using the
+ graphic2D features of JDK. The attribute <i>paint</i> should point to
+ a method of the bean that accept to parameters.</p>
+ <p>The first parameter has a Graphic2D type. I.e, it is a graphic
+ canvas you can draw on.</p>
+ <p>The second parameter is your custom data you can pass to a paint method using a data attribute of the paint2D component. The
+ Object type is using. So, you can use the bean of any type. The bean
+ should be serializable.</p>
+ <p>To improve the performance and avoid the extra unnecessary
+ traffic over the net, a generated image will be cached if the data
+ is not changed. You can turn this feature of with a cacheable attribute.</p>
+ <div class="sample-container">
+ <h:form>
+
+ <h:panelGrid columns="3" width="100%">
+
+ <h:inputText value="#{paintData.text}">
+ <a4j:support event="onkeyup" reRender=":painter" />
+ </h:inputText>
+
+ <h:panelGroup>
+ Color:
+ <rich:inputNumberSlider showInput="false"
+ showBoundaryValues="false" showToolTip="false"
+ value="#{paintData.color}" step="255" minValue="0"
+ maxValue="16000000">
+ <a4j:support event="onchange" reRender=":painter" />
+ <f:convertNumber />
+ </rich:inputNumberSlider>
+
+ </h:panelGroup>
+
+
+ <h:panelGroup>
+ Shadow:
+
+ <rich:inputNumberSlider showInput="false"
+ showBoundaryValues="false" showToolTip="false"
+ value="#{paintData.scale}" step="0.5" minValue="0" maxValue="3">
+ <a4j:support event="onchange" reRender=":painter" />
+ <f:convertNumber />
+ </rich:inputNumberSlider>
+
+ </h:panelGroup>
+
+
+ </h:panelGrid>
+ </h:form>
+ <rich:paint2D id="painter" width="300" height="120"
+ data="#{paintData}" format="png" paint="#{paintBean.paint}" />
+ </div>
+
+ </ui:define>
+ <ui:define name="sources">
+ Here is fragment of page sources for given example:
+ <iframe
+ src="${facesContext.externalContext.requestContextPath}/richfaces/paint2D/source/usage.html"
+ class="source_frame" />
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/paint2D.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/paint2D.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/paint2D.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,17 @@
+<!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">
+<ui:composition template="/templates/main.xhtml">
+ <ui:define name="title">RichFaces - Open Source Rich JSF Components - Paint 2D Graphic</ui:define>
+ <ui:define name="body">
+ <rich:tabPanel switchType="server" styleClass="top_tab" contentClass="content_tab" inactiveTabClass="inactive_tab" activeTabClass="active_tab">
+ <rich:tab label="Usage">
+ <ui:include src="/richfaces/paint2D/usage.xhtml"/>
+ </rich:tab>
+ </rich:tabPanel>
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel/look-customization.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel/look-customization.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel/look-customization.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,107 @@
+<!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">
+ <ui:composition template="/templates/component-sample.xhtml">
+ <ui:define name="sample">
+ <p>
+ This is a demo of stylesheets usage and skinability features to adjust a panel look.
+ </p>
+<style>
+.rich-panel-header {
+ color:#0054BD;
+}
+.panel {
+ vertical-align:top;
+}
+.top {
+ width:200px;height:100px;
+}
+
+.head2 {
+ background-image : url();
+ background-color : #4C9600;
+ height:18px;
+ text-align:center;
+ vertical-align:middle;
+ color:#CFF;
+ padding:4px 0;
+}
+
+.body3 {
+ height:100px;
+ overflow:auto;
+}
+</style>
+<h:panelGrid columnClasses="panel" border="0" columns="2">
+ <rich:panel>
+ <f:facet name="header">
+ Panel #1. Changing Style Synchronously
+ </f:facet>
+ Each component in the RichFaces has a pre-defined set of classes you can manipulate with. If defined, those
+ classes overwrite the ones come from the skin.
+ </rich:panel>
+
+ <rich:panel>
+ <f:facet name="header">
+ Panel #2. Changing Style Synchronously
+ </f:facet>
+ In this example, we define header color using the .rich-panel-header class and all panels located on the same page
+ inherit this color
+ </rich:panel>
+
+</h:panelGrid>
+
+<h:panelGrid columnClasses="panel" border="0" columns="3">
+ <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="head2" bodyClass="body3">
+ <f:facet name="header">
+ Panel header
+ </f:facet>
+ Base on the previous layout, but some javascript behaviour added.
+ </rich:panel>
+
+ <rich:panel style="width:200px;" bodyClass="body3">
+ <f:facet name="header">
+ Scrolling Text Panel
+ </f:facet>
+ 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
+ </rich:panel>
+
+ <rich:panel styleClass="top">
+ This is a panel without the header
+ </rich:panel>
+
+ <rich:panel style="position: absolute; bottom: 300px; right: 100px; " styleClass="top">
+ <f:facet name="header">
+ Panel header
+ </f:facet>
+ This is a panel with absolute position on the screen.<br/>
+ Resize the browser's window to see the result.
+ </rich:panel>
+
+</h:panelGrid>
+
+ </ui:define>
+ <ui:define name="sources">
+ Here is a fragment of page sources for the given example:
+ <iframe src="${facesContext.externalContext.requestContextPath}/richfaces/panel/source/look-customization.html" class="source_frame"/>
+ </ui:define>
+ </ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel/source/look-customization.html
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel/source/look-customization.html (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel/source/look-customization.html 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,90 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
+ "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type"
+content="text/html; charset=iso-8859-1">
+<meta name="GENERATOR" content="GNU source-highlight 2.1.2
+by Lorenzo Bettini
+http://www.lorenzobettini.it
+http://www.gnu.org/software/src-highlite">
+<title>look-customization.xhtml</title>
+<link rel="stylesheet" href="../../../css/xhtml-source.css" type="text/css">
+</head>
+<body>
+<pre><tt><span class="keyword"><style></span>
+<span class="normal">.rich-panel-header {</span>
+<span class="normal"> color:#0054BD;</span>
+<span class="normal">}</span>
+<span class="normal">.panel {</span>
+<span class="normal"> vertical-align:top;</span>
+<span class="normal">}</span>
+<span class="normal">.top {</span>
+<span class="normal"> width:200px;height:100px;</span>
+<span class="normal">}</span>
+
+<span class="normal">.head2 {</span>
+<span class="normal"> background-image : url();</span>
+<span class="normal"> background-color : #4C9600;</span>
+<span class="normal"> height:18px;</span>
+<span class="normal"> text-align:center;</span>
+<span class="normal"> vertical-align:middle;</span>
+<span class="normal"> color:#CFF;</span>
+<span class="normal"> padding:4px 0;</span>
+<span class="normal">}</span>
+
+<span class="normal">.body3 {</span>
+<span class="normal"> height:100px;</span>
+<span class="normal"> overflow:auto;</span>
+<span class="normal">}</span>
+<span class="keyword"></style></span>
+<span class="keyword"><h:panelGrid</span><span class="normal"> </span><span class="type">columnClasses</span><span class="symbol">=</span><span class="string">"</span><span class="string">panel</span><span class="string">"</span><span class="normal"> </span><span class="type">border</span><span class="symbol">=</span><span class="string">"</span><span class="string">0</span><span class="string">"</span><span class="normal"> </span><span class="type">columns</span><span class="symbol">=</span><span class="string">"</span><span class="string">2</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:panel></span>
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">header</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> Panel #1. Changing Style Synchronously</span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+<span class="normal"> text....</span>
+<span class="normal"> </span><span class="keyword"></rich:panel></span>
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"><rich:panel></span>
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">header</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> Panel #2. Changing Style Synchronously</span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+<span class="normal"> text...</span>
+<span class="normal"> </span><span class="keyword"></rich:panel></span><span class="normal"> </span>
+
+<span class="keyword"></h:panelGrid></span>
+
+<span class="keyword"><h:panelGrid</span><span class="normal"> </span><span class="type">columnClasses</span><span class="symbol">=</span><span class="string">"</span><span class="string">panel</span><span class="string">"</span><span class="normal"> </span><span class="type">border</span><span class="symbol">=</span><span class="string">"</span><span class="string">0</span><span class="string">"</span><span class="normal"> </span><span class="type">columns</span><span class="symbol">=</span><span class="string">"</span><span class="string">3</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:panel</span>
+<span class="normal"> </span><span class="type">onmouseover</span><span class="symbol">=</span><span class="string">"</span><span class="string">document.getElementById(this.id+'_header').style.background='#60BA01';document.getElementById(this.id+'_body').style.background='#F4FFF8'</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">onmouseout</span><span class="symbol">=</span><span class="string">"</span><span class="string">document.getElementById(this.id+'_header').style.background='#4C9600';document.getElementById(this.id+'_body').style.background='#E4FFC8'</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">style</span><span class="symbol">=</span><span class="string">"</span><span class="string">width:200px;</span><span class="string">"</span><span class="normal"> </span><span class="type">headerClass</span><span class="symbol">=</span><span class="string">"</span><span class="string">head2</span><span class="string">"</span><span class="normal"> </span><span class="type">bodyClass</span><span class="symbol">=</span><span class="string">"</span><span class="string">body3</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">header</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> Panel header</span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+<span class="normal"> text...</span>
+<span class="normal"> </span><span class="keyword"></rich:panel></span>
+
+<span class="normal"> </span><span class="keyword"><rich:panel</span><span class="normal"> </span><span class="type">style</span><span class="symbol">=</span><span class="string">"</span><span class="string">width:200px;</span><span class="string">"</span><span class="normal"> </span><span class="type">bodyClass</span><span class="symbol">=</span><span class="string">"</span><span class="string">body3</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">header</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> Scrolling Text Panel</span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+<span class="normal"> text...</span>
+<span class="normal"> </span><span class="keyword"></rich:panel></span>
+
+<span class="normal"> </span><span class="keyword"><rich:panel</span><span class="normal"> </span><span class="type">styleClass</span><span class="symbol">=</span><span class="string">"</span><span class="string">top</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> This is a panel without the header </span>
+<span class="normal"> </span><span class="keyword"></rich:panel></span>
+
+<span class="normal"> </span><span class="keyword"><rich:panel</span><span class="normal"> </span><span class="type">style</span><span class="symbol">=</span><span class="string">"</span><span class="string">position: absolute; bottom: 300px; right: 100px; </span><span class="string">"</span><span class="normal"> </span><span class="type">styleClass</span><span class="symbol">=</span><span class="string">"</span><span class="string">top</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">header</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> Panel header</span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+<span class="normal"> text...</span>
+<span class="normal"> </span><span class="keyword"></rich:panel></span>
+
+<span class="keyword"></h:panelGrid></span>
+</tt></pre>
+</body>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel/source/look-customization.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel/source/look-customization.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel/source/look-customization.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,73 @@
+<style>
+.rich-panel-header {
+ color:#0054BD;
+}
+.panel {
+ vertical-align:top;
+}
+.top {
+ width:200px;height:100px;
+}
+
+.head2 {
+ background-image : url();
+ background-color : #4C9600;
+ height:18px;
+ text-align:center;
+ vertical-align:middle;
+ color:#CFF;
+ padding:4px 0;
+}
+
+.body3 {
+ height:100px;
+ overflow:auto;
+}
+</style>
+<h:panelGrid columnClasses="panel" border="0" columns="2">
+ <rich:panel>
+ <f:facet name="header">
+ Panel #1. Changing Style Synchronously
+ </f:facet>
+ text....
+ </rich:panel>
+
+ <rich:panel>
+ <f:facet name="header">
+ Panel #2. Changing Style Synchronously
+ </f:facet>
+ text...
+ </rich:panel>
+
+</h:panelGrid>
+
+<h:panelGrid columnClasses="panel" border="0" columns="3">
+ <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="head2" bodyClass="body3">
+ <f:facet name="header">
+ Panel header
+ </f:facet>
+ text...
+ </rich:panel>
+
+ <rich:panel style="width:200px;" bodyClass="body3">
+ <f:facet name="header">
+ Scrolling Text Panel
+ </f:facet>
+ text...
+ </rich:panel>
+
+ <rich:panel styleClass="top">
+ This is a panel without the header
+ </rich:panel>
+
+ <rich:panel style="position: absolute; bottom: 300px; right: 100px; " styleClass="top">
+ <f:facet name="header">
+ Panel header
+ </f:facet>
+ text...
+ </rich:panel>
+
+</h:panelGrid>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel/source/usage.html
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel/source/usage.html (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel/source/usage.html 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,86 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
+ "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type"
+content="text/html; charset=iso-8859-1">
+<meta name="GENERATOR" content="GNU source-highlight 2.1.2
+by Lorenzo Bettini
+http://www.lorenzobettini.it
+http://www.gnu.org/software/src-highlite">
+<title>usage.xhtml</title>
+<link rel="stylesheet" href="../../../css/xhtml-source.css" type="text/css">
+</head>
+<body>
+<pre><tt><span class="keyword"><style></span>
+<span class="normal"> .gridContent {</span>
+<span class="normal"> vertical-align:top;</span>
+<span class="normal"> }</span>
+<span class="normal"> </span>
+<span class="normal"> .outpanelHeader {</span>
+<span class="normal"> height:4px;</span>
+<span class="normal"> border-width: 0;</span>
+<span class="normal"> }</span>
+<span class="normal"> .inpanelBody {</span>
+<span class="normal"> height:180px;</span>
+<span class="normal"> overflow:auto;</span>
+<span class="normal"> }</span>
+<span class="normal"> </span>
+<span class="keyword"></style></span>
+<span class="normal"> </span><span class="keyword"><p></span>
+<span class="normal"> text....</span>
+<span class="normal"> </span><span class="keyword"></p></span>
+
+<span class="normal"> </span><span class="keyword"><p></span><span class="normal">This is a panel with default Look-n-feel:</span><span class="keyword"></p></span>
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"><div</span><span class="normal"> </span><span class="type">class</span><span class="symbol">=</span><span class="string">"</span><span class="string">sample-container</span><span class="string">"</span><span class="normal"> </span><span class="keyword">></span>
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"><rich:panel></span>
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">header</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> Write your own custom rich components with built-in AJAX support</span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+<span class="normal"> text....</span>
+<span class="normal"> </span><span class="keyword"></rich:panel></span>
+<span class="normal"> </span><span class="keyword"><br/></span>
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"></div></span>
+<span class="normal"> </span>
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"><p></span><span class="normal">This is a panel without header:</span><span class="keyword"></p></span>
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"><div</span><span class="normal"> </span><span class="type">class</span><span class="symbol">=</span><span class="string">"</span><span class="string">sample-container</span><span class="string">"</span><span class="normal"> </span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:panel></span>
+<span class="normal"> text....</span>
+<span class="normal"> </span><span class="keyword"></rich:panel></span>
+<span class="normal"> </span><span class="keyword"></div></span><span class="normal"> </span>
+
+<span class="normal"> </span><span class="keyword"><p></span><span class="normal">The panels can be nested: </span><span class="keyword"></p></span><span class="normal"> </span>
+
+<span class="normal"> </span><span class="keyword"><div</span><span class="normal"> </span><span class="type">class</span><span class="symbol">=</span><span class="string">"</span><span class="string">sample-container</span><span class="string">"</span><span class="normal"> </span><span class="keyword">></span>
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"><rich:panel</span><span class="normal"> </span><span class="type">style</span><span class="symbol">=</span><span class="string">"</span><span class="string">padding:0</span><span class="string">"</span><span class="normal"> </span><span class="type">headerClass</span><span class="symbol">=</span><span class="string">"</span><span class="string">outpanelHeader</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">header</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:spacer</span><span class="normal"> </span><span class="type">height</span><span class="symbol">=</span><span class="string">"</span><span class="string">4</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+<span class="normal"> </span><span class="keyword"><h2</span><span class="normal"> </span><span class="type">align</span><span class="symbol">=</span><span class="string">"</span><span class="string">center</span><span class="string">"</span><span class="keyword">></span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Benefits of Using Ajax4jsf</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span><span class="keyword"></h2></span>
+<span class="normal"> </span><span class="keyword"><h:panelGrid</span><span class="normal"> </span><span class="type">columns</span><span class="symbol">=</span><span class="string">"</span><span class="string">2</span><span class="string">"</span><span class="normal"> </span><span class="type">columnClasses</span><span class="symbol">=</span><span class="string">"</span><span class="string">gridContent</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:panel</span><span class="normal"> </span><span class="type">bodyClass</span><span class="symbol">=</span><span class="string">"</span><span class="string">inpanelBody</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">header</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> For Application Developers</span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+<span class="normal"> text...</span>
+<span class="normal"> </span><span class="keyword"></rich:panel></span>
+<span class="normal"> </span><span class="keyword"><rich:panel</span><span class="normal"> </span><span class="type">bodyClass</span><span class="symbol">=</span><span class="string">"</span><span class="string">inpanelBody</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">header</span><span class="string">"</span><span class="normal"> </span><span class="keyword">></span>
+<span class="normal"> For Component Developers</span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+<span class="normal"> text...</span>
+<span class="normal"> </span><span class="keyword"></rich:panel></span>
+<span class="normal"> </span><span class="keyword"></h:panelGrid></span>
+<span class="normal"> </span><span class="keyword"></rich:panel></span>
+
+<span class="normal"> </span><span class="keyword"></div></span><span class="normal"> </span>
+<span class="normal"> </span>
+</tt></pre>
+</body>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel/source/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel/source/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel/source/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,69 @@
+<style>
+ .gridContent {
+ vertical-align:top;
+ }
+
+ .outpanelHeader {
+ height:4px;
+ border-width: 0;
+ }
+ .inpanelBody {
+ height:180px;
+ overflow:auto;
+ }
+
+</style>
+ <p>
+ text....
+ </p>
+
+ <p>This is a panel with default Look-n-feel:</p>
+
+ <div class="sample-container" >
+
+ <rich:panel>
+ <f:facet name="header">
+ Write your own custom rich components with built-in AJAX support
+ </f:facet>
+ text....
+ </rich:panel>
+ <br/>
+
+ </div>
+
+
+ <p>This is a panel without header:</p>
+
+ <div class="sample-container" >
+ <rich:panel>
+ text....
+ </rich:panel>
+ </div>
+
+ <p>The panels can be nested: </p>
+
+ <div class="sample-container" >
+
+ <rich:panel style="padding:0" headerClass="outpanelHeader">
+ <f:facet name="header">
+ <rich:spacer height="4" />
+ </f:facet>
+ <h2 align="center"><h:outputText value="Benefits of Using Ajax4jsf" /></h2>
+ <h:panelGrid columns="2" columnClasses="gridContent">
+ <rich:panel bodyClass="inpanelBody">
+ <f:facet name="header">
+ For Application Developers
+ </f:facet>
+ text...
+ </rich:panel>
+ <rich:panel bodyClass="inpanelBody">
+ <f:facet name="header" >
+ For Component Developers
+ </f:facet>
+ text...
+ </rich:panel>
+ </h:panelGrid>
+ </rich:panel>
+
+ </div>
+
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -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: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">
+ <ui:composition template="/templates/component-sample.xhtml">
+ <ui:define name="sample">
+ <style>
+ .gridContent {
+ vertical-align:top;
+ }
+
+ .outpanelHeader {
+ height:4px;
+ border-width: 0;
+ }
+ .inpanelBody {
+ height:180px;
+ overflow:auto;
+ }
+
+ </style>
+ <p>
+ The panel is a rectangle area on a page that may contain any content including other panels.
+ Panel has a header (optionally) and a body. The default look-n-feel is based on the
+ current skin. Look-n-feel of any parts of the panel, including color scheme, borders and
+ paddings can be customizable using with pre-defined number of CSS classes.
+ </p>
+
+ <p>This is a panel with default Look-n-feel:</p>
+
+ <div class="sample-container" >
+
+ <rich:panel>
+ <f:facet name="header">
+ Write your own custom rich components with built-in AJAX support
+ </f:facet>
+ The CDK includes a code-generation facility and a
+ templating facility using a JSP-like syntax. These capabilities help
+ to avoid a routine process of a component creation. The component factory
+ works like a well-oiled machine allowing the creation of first-class
+ rich components with built-in Ajax functionality even more easily than
+ the creation of simpler components by means of the traditional coding
+ approach.
+ </rich:panel>
+ <br/>
+
+ </div>
+
+
+ <p>This is a panel without header:</p>
+
+ <div class="sample-container" >
+ <rich:panel>
+ RichFaces is a library for adding rich user interface features to JSF
+ applications. It extends the Ajax4jsf framework to include a large
+ (and growing) set of powerful rich AJAX-enabled components that come
+ with extensive skins support.
+ </rich:panel>
+ </div>
+
+ <p>The panels can be nested: </p>
+
+ <div class="sample-container" >
+
+ <rich:panel style="padding:0" headerClass="outpanelHeader">
+ <f:facet name="header">
+ <rich:spacer height="4" />
+ </f:facet>
+ <h2 align="center"><h:outputText value="Benefits of Using Ajax4jsf" /></h2>
+ <h:panelGrid columns="2" columnClasses="gridContent">
+ <rich:panel bodyClass="inpanelBody">
+ <f:facet name="header">
+ For Application Developers
+ </f:facet>
+ For Application Developers
+ <ul>
+ <li>Production quality Open Source</li>
+ <li>Does Open Source and has an Open Architecture</li>
+ <li>Compatible with any JSF Implementation - MyFaces, JSF1.1, JSF1.2</li>
+ <li>Allows to Ajaxify JSF application without writing Javascript</li>
+ <li>Works with standard and third party components</li>
+ <li>Adds the Ajax capability to existing non-Ajax components</li>
+ </ul>
+ </rich:panel>
+ <rich:panel bodyClass="inpanelBody">
+ <f:facet name="header" >
+ For Component Developers
+ </f:facet>
+ <ul>
+ <li>Ajax4jsf is Open Source and has an Open Architecture</li>
+ <li>Gives an API to create components with built-in Ajax support</li>
+ <li>Has a Component Development Kit for rapid development</li>
+ <li>Allows to skin the look-n-feel using both CSS and set of skin-parameters</li>
+ <li>Automatically generates the unit test-cases for developing components</li>
+ <li>Allows to pack javascript code, images, css inside the final jar</li>
+ </ul>
+ </rich:panel>
+ </h:panelGrid>
+ </rich:panel>
+
+ </div>
+
+
+ </ui:define>
+ <ui:define name="sources">
+ <p>
+ Here is fragment of page sources for given example:
+ </p>
+ <iframe src="${facesContext.externalContext.requestContextPath}/richfaces/panel/source/usage.html" class="source_frame"/>
+ </ui:define>
+ </ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panel.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,22 @@
+<!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">
+
+<ui:composition template="/templates/main.xhtml">
+ <ui:define name="title">RichFaces - Open Source Rich JSF Components - Panel</ui:define>
+ <ui:define name="current">panel</ui:define>
+ <ui:define name="body">
+ <rich:tabPanel switchType="server" styleClass="top_tab" contentClass="content_tab" inactiveTabClass="inactive_tab" activeTabClass="active_tab">
+ <rich:tab label="Usage">
+ <ui:include src="/richfaces/panel/usage.xhtml"/>
+ </rich:tab>
+ <rich:tab label="Look Customization">
+ <ui:include src="/richfaces/panel/look-customization.xhtml"/>
+ </rich:tab>
+ </rich:tabPanel>
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panelBar/source/usage.html
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panelBar/source/usage.html (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panelBar/source/usage.html 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,40 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
+ "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type"
+content="text/html; charset=iso-8859-1">
+<meta name="GENERATOR" content="GNU source-highlight 2.1.2
+by Lorenzo Bettini
+http://www.lorenzobettini.it
+http://www.gnu.org/software/src-highlite">
+<title>usage.xhtml</title>
+<link rel="stylesheet" href="../../../css/xhtml-source.css" type="text/css">
+</head>
+<body>
+<pre><tt><span class="keyword"><rich:panelBar</span><span class="normal"> </span><span class="type">height</span><span class="symbol">=</span><span class="string">"</span><span class="string">400</span><span class="string">"</span><span class="normal"> </span><span class="type">width</span><span class="symbol">=</span><span class="string">"</span><span class="string">500</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:panelBarItem</span><span class="normal"> </span><span class="type">label</span><span class="symbol">=</span><span class="string">"</span><span class="string">Leverage the whole set of JSF benefits while working with AJAX</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> text...</span>
+<span class="normal"> </span><span class="keyword"></rich:panelBarItem></span>
+<span class="normal"> </span><span class="keyword"><rich:panelBarItem</span><span class="normal"> </span><span class="type">label</span><span class="symbol">=</span><span class="string">"</span><span class="string">Add AJAX capability to existing JSF applications</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> text...</span>
+<span class="normal"> </span><span class="keyword"></rich:panelBarItem></span>
+<span class="normal"> </span><span class="keyword"><rich:panelBarItem</span><span class="normal"> </span><span class="type">label</span><span class="symbol">=</span><span class="string">"</span><span class="string">Write your own custom rich components with built-in AJAX support</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> text...</span>
+<span class="normal"> </span><span class="keyword"></rich:panelBarItem></span>
+<span class="normal"> </span><span class="keyword"><rich:panelBarItem</span><span class="normal"> </span><span class="type">label</span><span class="symbol">=</span><span class="string">"</span><span class="string">Package resources with the application's Java classes </span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> text...</span>
+<span class="normal"> </span><span class="keyword"></rich:panelBarItem></span>
+<span class="normal"> </span><span class="keyword"><rich:panelBarItem</span><span class="normal"> </span><span class="type">label</span><span class="symbol">=</span><span class="string">"</span><span class="string">Easily generate images on-the-fly</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> text...</span>
+<span class="normal"> </span><span class="keyword"></rich:panelBarItem></span>
+<span class="normal"> </span><span class="keyword"><rich:panelBarItem</span><span class="normal"> </span><span class="type">label</span><span class="symbol">=</span><span class="string">"</span><span class="string">Create a modern rich user interface look-and-feel with skins-based technology</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> text...</span>
+<span class="normal"> </span><span class="keyword"></rich:panelBarItem></span>
+<span class="normal"> </span><span class="keyword"><rich:panelBarItem</span><span class="normal"> </span><span class="type">label</span><span class="symbol">=</span><span class="string">"</span><span class="string">Test the components, actions, listeners, and pages as you are creating them</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> text...</span>
+<span class="normal"> </span><span class="keyword"></rich:panelBarItem></span>
+<span class="keyword"></rich:panelBar></span>
+</tt></pre>
+</body>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panelBar/source/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panelBar/source/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panelBar/source/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,23 @@
+<rich:panelBar height="400" width="500">
+ <rich:panelBarItem label="Leverage the whole set of JSF benefits while working with AJAX">
+ text...
+ </rich:panelBarItem>
+ <rich:panelBarItem label="Add AJAX capability to existing JSF applications">
+ text...
+ </rich:panelBarItem>
+ <rich:panelBarItem label="Write your own custom rich components with built-in AJAX support">
+ text...
+ </rich:panelBarItem>
+ <rich:panelBarItem label="Package resources with the application's Java classes ">
+ text...
+ </rich:panelBarItem>
+ <rich:panelBarItem label="Easily generate images on-the-fly">
+ text...
+ </rich:panelBarItem>
+ <rich:panelBarItem label="Create a modern rich user interface look-and-feel with skins-based technology">
+ text...
+ </rich:panelBarItem>
+ <rich:panelBarItem label="Test the components, actions, listeners, and pages as you are creating them">
+ text...
+ </rich:panelBarItem>
+</rich:panelBar>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panelBar/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panelBar/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panelBar/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,56 @@
+<!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">
+ <ui:composition template="/templates/component-sample.xhtml">
+ <ui:define name="sample">
+ <style>
+
+ </style>
+ <p>
+ The Richfaces Panel Bar is a set of panels when one panel is expanded,
+ but other ones are collapsed. The following demo shows the example
+ of usage for the Panel Bar
+ </p>
+
+
+ <div class="sample-container" >
+
+ <rich:panelBar height="400" width="500">
+ <rich:panelBarItem label="Leverage the whole set of JSF benefits while working with AJAX">
+ Ajax4jsf is fully integrated into the JSF lifecycle. While other frameworks only give you access to the managed bean facility, Ajax4jsf advantages the action and value change listeners as well as invokes server-side validators and converters during the AJAX request-response cycle.
+ </rich:panelBarItem>
+ <rich:panelBarItem label="Add AJAX capability to existing JSF applications">
+ The framework is implemented using a component library. The library set Ajax functionality into existing pages, so there is no need to write any JavaScript code or to replace existing components with new Ajax one. Ajax4jsf enables page-wide Ajax support instead of the traditional component-wide support and it gives the opportunity to define the event on the page. An event invokes an Ajax request and areas of the page which are synchronized with the JSF Component Tree after changing the data on the server by Ajax request in accordance with events fired on the client.
+ </rich:panelBarItem>
+ <rich:panelBarItem label="Write your own custom rich components with built-in AJAX support">
+ Component Development Kit (CDK) is a design-time extension for Ajax4jsf. The CDK includes a code-generation facility and a templating facility using a JSP-like syntax. These capabilities help to avoid a routine process of a component creation. The component factory works like a well-oiled machine allowing the creation of first-class rich components with built-in Ajax functionality even more easily than the creation of simpler components by means of the traditional coding approach.
+ </rich:panelBarItem>
+ <rich:panelBarItem label="Package resources with the application's Java classes ">
+ In addition to its core, Ajax functionality of Ajax4jsf provides an advanced support for the different resources management: pictures, JavaScript code, and CSS stylesheets. The resource framework makes possible to pack easily these resources into Jar files along with the code of your custom components.
+ </rich:panelBarItem>
+ <rich:panelBarItem label="Easily generate images on-the-fly">
+ Resource framework can generate images on-the-fly so that it becomes possible to create images using the familiar approach of the Java graphic2D library.
+ </rich:panelBarItem>
+ <rich:panelBarItem label="Create a modern rich user interface look-and-feel with skins-based technology">
+ Ajax4jsf provides a skinability feature that allows easily define and manage different color schemes and other parameters of the UI with the help of named skin parameters. Hence it is possible to access the skin parameters from JSP code and the Java code (e.g. to adjust generated on-the-fly images based on the text parts of the UI). Note: skinability is not an equivalent of traditional CSS, but a complement.
+ </rich:panelBarItem>
+ <rich:panelBarItem label="Test the components, actions, listeners, and pages as you are creating them">
+ An automated testing facility is in our roadmap for the near future. This facility will generate test cases for your component as soon as you develop it. The testing framework will not just test the components, but also any other server-side or client-side functionality including JavaScript code. What is more, it will do all of this without deploying the test application into the Servlet container.
+ </rich:panelBarItem>
+ </rich:panelBar>
+
+ </div>
+
+
+ </ui:define>
+ <ui:define name="sources">
+ <p>
+ Here is a fragment of page sources for the given example:
+ </p>
+ <iframe src="${facesContext.externalContext.requestContextPath}/richfaces/panelBar/source/usage.html" class="source_frame"/>
+ </ui:define>
+ </ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panelBar.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panelBar.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/panelBar.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,19 @@
+<!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">
+
+<ui:composition template="/templates/main.xhtml">
+ <ui:define name="title">RichFaces - Open Source Rich JSF Components - PanelBar</ui:define>
+ <ui:define name="current">panel</ui:define>
+ <ui:define name="body">
+ <rich:tabPanel switchType="server" styleClass="top_tab" contentClass="content_tab" inactiveTabClass="inactive_tab" activeTabClass="active_tab">
+ <rich:tab label="Usage">
+ <ui:include src="/richfaces/panelBar/usage.xhtml"/>
+ </rich:tab>
+ </rich:tabPanel>
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/separator/source/usage.html
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/separator/source/usage.html (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/separator/source/usage.html 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,28 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
+ "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type"
+content="text/html; charset=iso-8859-1">
+<meta name="GENERATOR" content="GNU source-highlight 2.1.2
+by Lorenzo Bettini
+http://www.lorenzobettini.it
+http://www.gnu.org/software/src-highlite">
+<title>usage.xhtml</title>
+<link rel="stylesheet" href="../../../css/xhtml-source.css" type="text/css">
+</head>
+<body>
+<pre><tt><span class="normal">This is default separator:</span>
+<span class="keyword"><rich:separator</span><span class="normal"> </span><span class="keyword">/></span>
+
+<span class="normal">This is tick 50% beveled separator aligned to the right:</span>
+<span class="keyword"><rich:separator</span><span class="normal"> </span><span class="type">lineType</span><span class="symbol">=</span><span class="string">"</span><span class="string">beveled</span><span class="string">"</span><span class="normal"> </span><span class="type">height</span><span class="symbol">=</span><span class="string">"</span><span class="string">20</span><span class="string">"</span><span class="normal"> </span><span class="type">width</span><span class="symbol">=</span><span class="string">"</span><span class="string">50%</span><span class="string">"</span><span class="normal"> </span><span class="type">align</span><span class="symbol">=</span><span class="string">"</span><span class="string">right</span><span class="string">"</span><span class="keyword">/></span>
+
+<span class="normal">Here is more examples of different line types:</span>
+<span class="keyword"><rich:separator</span><span class="normal"> </span><span class="type">height</span><span class="symbol">=</span><span class="string">"</span><span class="string">2</span><span class="string">"</span><span class="normal"> </span><span class="type">lineType</span><span class="symbol">=</span><span class="string">"</span><span class="string">dotted</span><span class="string">"</span><span class="keyword">/></span><span class="keyword"><br/></span>
+<span class="keyword"><rich:separator</span><span class="normal"> </span><span class="type">height</span><span class="symbol">=</span><span class="string">"</span><span class="string">2</span><span class="string">"</span><span class="normal"> </span><span class="type">lineType</span><span class="symbol">=</span><span class="string">"</span><span class="string">dashed</span><span class="string">"</span><span class="keyword">/></span><span class="keyword"><br/></span>
+<span class="keyword"><rich:separator</span><span class="normal"> </span><span class="type">height</span><span class="symbol">=</span><span class="string">"</span><span class="string">4</span><span class="string">"</span><span class="normal"> </span><span class="type">lineType</span><span class="symbol">=</span><span class="string">"</span><span class="string">double</span><span class="string">"</span><span class="keyword">/></span><span class="keyword"><br/></span>
+<span class="keyword"><rich:separator</span><span class="normal"> </span><span class="type">height</span><span class="symbol">=</span><span class="string">"</span><span class="string">2</span><span class="string">"</span><span class="normal"> </span><span class="type">lineType</span><span class="symbol">=</span><span class="string">"</span><span class="string">solid</span><span class="string">"</span><span class="keyword">/></span><span class="keyword"><br/></span>
+</tt></pre>
+</body>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/separator/source/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/separator/source/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/separator/source/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,11 @@
+This is default separator:
+<rich:separator />
+
+This is tick 50% beveled separator aligned to the right:
+<rich:separator lineType="beveled" height="20" width="50%" align="right"/>
+
+Here is more examples of different line types:
+<rich:separator height="2" lineType="dotted"/><br/>
+<rich:separator height="2" lineType="dashed"/><br/>
+<rich:separator height="4" lineType="double"/><br/>
+<rich:separator height="2" lineType="solid"/><br/>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/separator/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/separator/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/separator/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -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: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">
+ <ui:composition template="/templates/component-sample.xhtml">
+ <ui:define name="sample">
+ <p>
+ Separator is used to draw a horizontal line on a page. You may specify different types of a line, possible values are "beveled" (default), "dotted", "dashed", "double" and "solid".
+ You also may specify width, height and alignment for the separator.
+ </p>
+ <p>
+ This is default separator:
+ <rich:separator />
+ </p>
+ <p>
+ This is tick 75% beveled separator aligned to the center:
+ <rich:separator lineType="beveled" height="8" width="75%" align="center"/>
+ </p>
+ <p>
+ Here is more examples of different line types:
+ <rich:separator height="2" lineType="dotted"/><br/>
+ <rich:separator height="2" lineType="dashed"/><br/>
+ <rich:separator height="4" lineType="double"/><br/>
+ <rich:separator height="2" lineType="solid"/><br/>
+ </p>
+ </ui:define>
+ <ui:define name="sources">
+ Here is a fragment of page sources for the given example. Note how we use skin parameters to define a border color for span.
+ <iframe src="${facesContext.externalContext.requestContextPath}/richfaces/separator/source/usage.html" class="source_frame"/>
+ </ui:define>
+ </ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/separator.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/separator.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/separator.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,18 @@
+<!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">
+
+<ui:composition template="/templates/main.xhtml">
+ <ui:define name="title">RichFaces - Open Source Rich JSF Components - Separator</ui:define>
+ <ui:define name="body">
+ <rich:tabPanel switchType="ajax" styleClass="top_tab" contentClass="content_tab" inactiveTabClass="inactive_tab" activeTabClass="active_tab">
+ <rich:tab label="Usage">
+ <ui:include src="/richfaces/separator/usage.xhtml"/>
+ </rich:tab>
+ </rich:tabPanel>
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/simpleTogglePanel/source/usage.html
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/simpleTogglePanel/source/usage.html (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/simpleTogglePanel/source/usage.html 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,44 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
+ "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type"
+content="text/html; charset=iso-8859-1">
+<meta name="GENERATOR" content="GNU source-highlight 2.1.2
+by Lorenzo Bettini
+http://www.lorenzobettini.it
+http://www.gnu.org/software/src-highlite">
+<title>usage.xhtml</title>
+<link rel="stylesheet" href="../../../css/xhtml-source.css" type="text/css">
+</head>
+<body>
+<pre><tt><span class="keyword"><div</span><span class="normal"> </span><span class="type">class</span><span class="symbol">=</span><span class="string">"</span><span class="string">sample-container</span><span class="string">"</span><span class="normal"> </span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:simpleTogglePanel</span><span class="normal"> </span><span class="type">switchType</span><span class="symbol">=</span><span class="string">"</span><span class="string">client</span><span class="string">"</span><span class="normal"> </span><span class="type">label</span><span class="symbol">=</span><span class="string">"</span><span class="string">Add AJAX capability to existing JSF applications</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> context...</span>
+<span class="normal"> </span><span class="keyword"></rich:simpleTogglePanel></span><span class="normal"> </span>
+<span class="keyword"></div></span>
+
+<span class="normal">...</span>
+
+<span class="keyword"><div</span><span class="normal"> </span><span class="type">class</span><span class="symbol">=</span><span class="string">"</span><span class="string">sample-container</span><span class="string">"</span><span class="normal"> </span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:form></span>
+<span class="normal"> </span><span class="keyword"><h:panelGrid</span><span class="normal"> </span><span class="type">columns</span><span class="symbol">=</span><span class="string">"</span><span class="string">3</span><span class="string">"</span><span class="normal"> </span><span class="type">columnClasses</span><span class="symbol">=</span><span class="string">"</span><span class="string">tpanels</span><span class="string">"</span><span class="normal"> </span><span class="type">width</span><span class="symbol">=</span><span class="string">"</span><span class="string">100%</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"><rich:simpleTogglePanel</span><span class="normal"> </span><span class="type">switchType</span><span class="symbol">=</span><span class="string">"</span><span class="string">server</span><span class="string">"</span><span class="normal"> </span><span class="type">label</span><span class="symbol">=</span><span class="string">"</span><span class="string">Server Switch Type</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> context...</span>
+<span class="normal"> </span><span class="keyword"></rich:simpleTogglePanel></span>
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"><rich:simpleTogglePanel</span><span class="normal"> </span><span class="type">switchType</span><span class="symbol">=</span><span class="string">"</span><span class="string">ajax</span><span class="string">"</span><span class="normal"> </span><span class="type">label</span><span class="symbol">=</span><span class="string">"</span><span class="string">Ajax Switch Type</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> context...</span>
+<span class="normal"> </span><span class="keyword"></rich:simpleTogglePanel></span>
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"><rich:simpleTogglePanel</span><span class="normal"> </span><span class="type">switchType</span><span class="symbol">=</span><span class="string">"</span><span class="string">client</span><span class="string">"</span><span class="normal"> </span><span class="type">label</span><span class="symbol">=</span><span class="string">"</span><span class="string">Client Switch Type</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> context...</span>
+<span class="normal"> </span><span class="keyword"></rich:simpleTogglePanel></span>
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"></h:panelGrid></span><span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"></h:form></span>
+<span class="keyword"></div></span>
+</tt></pre>
+</body>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/simpleTogglePanel/source/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/simpleTogglePanel/source/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/simpleTogglePanel/source/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,27 @@
+<div class="sample-container" >
+ <rich:simpleTogglePanel switchType="client" label="Add AJAX capability to existing JSF applications">
+ context...
+ </rich:simpleTogglePanel>
+</div>
+
+...
+
+<div class="sample-container" >
+ <h:form>
+ <h:panelGrid columns="3" columnClasses="tpanels" width="100%">
+
+ <rich:simpleTogglePanel switchType="server" label="Server Switch Type">
+ context...
+ </rich:simpleTogglePanel>
+
+ <rich:simpleTogglePanel switchType="ajax" label="Ajax Switch Type">
+ context...
+ </rich:simpleTogglePanel>
+
+ <rich:simpleTogglePanel switchType="client" label="Client Switch Type">
+ context...
+ </rich:simpleTogglePanel>
+
+ </h:panelGrid>
+ </h:form>
+</div>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/simpleTogglePanel/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/simpleTogglePanel/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/simpleTogglePanel/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,73 @@
+<!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:a4j="https://ajax4jsf.dev.java.net/ajax"
+ xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+ <ui:composition template="/templates/component-sample.xhtml">
+ <ui:define name="sample">
+ <style>
+ .tpanels {
+ width:33%;
+ padding: 10px;
+ vertical-align:top;
+ height:140px;
+ }
+ </style>
+ <p>SimpleTogglePanel represents a panel with a base text label at the top and an additional
+ content that can be shown or hidden. The additional content is shown or hidden
+ using the simpleTogglePanel control located to the right of the base text label by default.<br />
+ This is an example of the component with default look-n-feel:
+ </p>
+ <div class="sample-container" >
+ <rich:simpleTogglePanel switchType="client" label="Add AJAX capability to existing JSF applications">
+ The framework is implemented by using a component library. The library
+ set Ajax functionality into existing pages, so there is no need to write
+ any JavaScript code or to replace existing components with new Ajax one.
+ Ajax4jsf enables page-wide Ajax support instead of the traditional
+ component-wide support and it gives the opportunity to define the event
+ on the page. An event invokes an Ajax request and areas of the page
+ which are synchronized with the JSF Component Tree after changing the
+ data on the server by Ajax request in accordance with events fired on
+ the client.
+ </rich:simpleTogglePanel>
+ </div>
+
+ <p>The switchType attribute allows to select a toggle approach that can be 'client',
+ 'server' or 'ajax'. The 'server' and 'ajax' types require to be surround with a form element such as <h:form> or <a4j:form>.
+ </p>
+ <div class="sample-container" >
+ <h:form>
+ <h:panelGrid columns="3" columnClasses="tpanels" width="100%">
+
+ <rich:simpleTogglePanel switchType="server" label="Server Switch Type">
+ The regular JSF form submission is processed during the changing mode between
+ showing and hidding the additional content.
+ </rich:simpleTogglePanel>
+
+ <rich:simpleTogglePanel switchType="ajax" label="Ajax Switch Type">
+ This type allows to perform the partual view update instead of the
+ whole page reloading. You also can point to other areas of the view
+ to be re-rendered while the panel content is toggled.
+ </rich:simpleTogglePanel>
+
+ <rich:simpleTogglePanel switchType="client" label="Client Switch Type">
+ The switching between showing and hiding the toggle panel content
+ performs on the client side.
+ </rich:simpleTogglePanel>
+
+ </h:panelGrid>
+ </h:form>
+ </div>
+
+
+ </ui:define>
+ <ui:define name="sources">
+ <p>
+ Here is fragment of page sources for given example:
+ </p>
+ <iframe src="${facesContext.externalContext.requestContextPath}/richfaces/simpleTogglePanel/source/usage.html" class="source_frame"/>
+ </ui:define>
+ </ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/simpleTogglePanel.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/simpleTogglePanel.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/simpleTogglePanel.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,17 @@
+<!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">
+<ui:composition template="/templates/main.xhtml">
+ <ui:define name="title">RichFaces - Open Source Rich JSF Components - Simple Toggle Panel</ui:define>
+ <ui:define name="body">
+ <rich:tabPanel switchType="server" styleClass="top_tab" contentClass="content_tab" inactiveTabClass="inactive_tab" activeTabClass="active_tab">
+ <rich:tab label="Usage">
+ <ui:include src="/richfaces/simpleTogglePanel/usage.xhtml"/>
+ </rich:tab>
+ </rich:tabPanel>
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/spacer/source/usage.html
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/spacer/source/usage.html (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/spacer/source/usage.html 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,23 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
+ "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type"
+content="text/html; charset=iso-8859-1">
+<meta name="GENERATOR" content="GNU source-highlight 2.1.2
+by Lorenzo Bettini
+http://www.lorenzobettini.it
+http://www.gnu.org/software/src-highlite">
+<title>usage.xhtml</title>
+<link rel="stylesheet" href="../../../css/xhtml-source.css" type="text/css">
+</head>
+<body>
+<pre><tt><span class="normal">There is a spacer 100x10</span><span class="keyword"><rich:spacer</span><span class="normal"> </span><span class="type">width</span><span class="symbol">=</span><span class="string">"</span><span class="string">100</span><span class="string">"</span><span class="normal"> </span><span class="type">height</span><span class="symbol">=</span><span class="string">"</span><span class="string">10</span><span class="string">"</span><span class="normal"> </span><span class="type">title</span><span class="symbol">=</span><span class="string">"</span><span class="string">Here is a spacer...</span><span class="string">"</span><span class="keyword">/></span><span class="normal">before this.</span>
+
+<span class="normal">There is 1x5 spacer between two lines below:</span>
+<span class="keyword"><div</span><span class="normal"> </span><span class="type">style</span><span class="symbol">=</span><span class="string">"</span><span class="string">height:0px; border:1px solid #{a4jSkin.panelBorderColor}</span><span class="string">"</span><span class="keyword">/></span>
+<span class="keyword"><rich:spacer</span><span class="normal"> </span><span class="type">width</span><span class="symbol">=</span><span class="string">"</span><span class="string">1</span><span class="string">"</span><span class="normal"> </span><span class="type">height</span><span class="symbol">=</span><span class="string">"</span><span class="string">5</span><span class="string">"</span><span class="normal"> </span><span class="type">title</span><span class="symbol">=</span><span class="string">"</span><span class="string">Here is a spacer...</span><span class="string">"</span><span class="keyword">/></span>
+<span class="keyword"><div</span><span class="normal"> </span><span class="type">style</span><span class="symbol">=</span><span class="string">"</span><span class="string">height:0px; border:1px solid #{a4jSkin.panelBorderColor}</span><span class="string">"</span><span class="keyword">/></span>
+</tt></pre>
+</body>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/spacer/source/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/spacer/source/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/spacer/source/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,6 @@
+There is a spacer 100x10<rich:spacer width="100" height="10" title="Here is a spacer..."/>before this.
+
+There is 1x5 spacer between two lines below:
+<div style="height:0px; border:1px solid #{a4jSkin.panelBorderColor}"/>
+<rich:spacer width="1" height="5" title="Here is a spacer..."/>
+<div style="height:0px; border:1px solid #{a4jSkin.panelBorderColor}"/>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/spacer/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/spacer/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/spacer/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,28 @@
+<!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">
+ <ui:composition template="/templates/component-sample.xhtml">
+ <ui:define name="sample">
+ <p>
+ Spacer is a simple component that render invisible image with given width, height. Usually it used to separate elements of page design.
+ </p>
+ <p>
+ There is a spacer 100x10<rich:spacer width="100" height="10" title="Here is a spacer..."/>before this.
+ </p>
+ <br/>
+ There is 1x5 spacer between two lines below:
+ <div style="height:0px; border:1px solid #{a4jSkin.panelBorderColor}"/>
+ <rich:spacer width="1" height="5" title="Here is a spacer..."/>
+ <div style="height:0px; border:1px solid #{a4jSkin.panelBorderColor}"/>
+ <br/>
+
+ </ui:define>
+ <ui:define name="sources">
+ Here is fragment of page sources for given example. Note how we used skin parameters to define border color for span.
+ <iframe src="${facesContext.externalContext.requestContextPath}/richfaces/spacer/source/usage.html" class="source_frame"/>
+ </ui:define>
+ </ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/spacer.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/spacer.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/spacer.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,18 @@
+<!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">
+
+<ui:composition template="/templates/main.xhtml">
+ <ui:define name="title">RichFaces - Open Source Rich JSF Components - Spacer</ui:define>
+ <ui:define name="body">
+ <rich:tabPanel switchType="ajax" styleClass="top_tab" contentClass="content_tab" inactiveTabClass="inactive_tab" activeTabClass="active_tab">
+ <rich:tab label="Usage">
+ <ui:include src="/richfaces/spacer/usage.xhtml"/>
+ </rich:tab>
+ </rich:tabPanel>
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/suggestionBox/source/usage.html
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/suggestionBox/source/usage.html (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/suggestionBox/source/usage.html 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,338 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
+ "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type"
+content="text/html; charset=iso-8859-1">
+<meta name="GENERATOR" content="GNU source-highlight 2.1.2
+by Lorenzo Bettini
+http://www.lorenzobettini.it
+http://www.gnu.org/software/src-highlite">
+<title>usage.xhtml</title>
+<link rel="stylesheet" href="../../../css/xhtml-source.css" type="text/css">
+</head>
+<body>
+<pre><tt><span class="keyword"><h:form</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">suggestionbox_form</span><span class="string">"</span><span class="keyword">></span>
+
+
+<span class="normal"> </span><span class="keyword"><h:outputText</span>
+<span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Simple richfaces Suggestion Box test web application.</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">style</span><span class="symbol">=</span><span class="string">"</span><span class="string">font: 18px;font-weight: bold;</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"><br</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"><br</span><span class="normal"> </span><span class="keyword">/></span>
+
+<span class="normal"> </span><span class="keyword"><h:panelGrid</span><span class="normal"> </span><span class="type">columns</span><span class="symbol">=</span><span class="string">"</span><span class="string">3</span><span class="string">"</span><span class="normal"> </span><span class="type">border</span><span class="symbol">=</span><span class="string">"</span><span class="string">0</span><span class="string">"</span><span class="normal"> </span><span class="type">style</span><span class="symbol">=</span><span class="string">"</span><span class="string">border: 1px solid black;</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><f:verbatim></span><span class="normal">Suggestion Box will suggest you town names if it's started with the "a" or</span>
+<span class="normal"> "A" letter</span><span class="keyword"></f:verbatim></span>
+
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">header</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><f:verbatim></span><span class="normal">Input With Suggestion Feature</span><span class="keyword"></f:verbatim></span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+
+
+<span class="normal"> </span><span class="keyword"><f:verbatim></span><span class="normal">&#160;</span><span class="keyword"></f:verbatim></span>
+
+<span class="normal"> </span><span class="keyword"><h:inputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{suggestionBox.property}</span><span class="string">"</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">text</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"><rich:suggestionbox</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">suggestionBoxId</span><span class="string">"</span><span class="normal"> </span><span class="type">for</span><span class="symbol">=</span><span class="string">"</span><span class="string">text</span><span class="string">"</span><span class="normal"> </span><span class="type">tokens</span><span class="symbol">=</span><span class="string">"</span><span class="string">,[</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">rules</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{suggestionBox.rules}</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">suggestionAction</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{suggestionBox.autocomplete}</span><span class="string">"</span><span class="normal"> </span><span class="type">var</span><span class="symbol">=</span><span class="string">"</span><span class="string">result</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">fetchValue</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{result.text}</span><span class="string">"</span><span class="normal"> </span><span class="type">rows</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{suggestionBox.intRows}</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">first</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{suggestionBox.intFirst}</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">minChars</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{suggestionBox.minchars}</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">shadowOpacity</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{suggestionBox.shadowOpacity}</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">border</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{suggestionBox.border}</span><span class="string">"</span><span class="normal"> </span><span class="type">width</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{suggestionBox.width}</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">height</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{suggestionBox.height}</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">shadowDepth</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{suggestionBox.shadowDepth}</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">cellpadding</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{suggestionBox.cellpadding}</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:column></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{result.text}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></h:column></span>
+<span class="normal"> </span><span class="keyword"></rich:suggestionbox></span>
+<span class="normal"> </span><span class="keyword"></h:panelGrid></span>
+
+<span class="normal"> </span><span class="keyword"><br</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"><br</span><span class="normal"> </span><span class="keyword">/></span>
+
+<span class="normal"> </span><span class="keyword"><h:panelGrid</span><span class="normal"> </span><span class="type">columns</span><span class="symbol">=</span><span class="string">"</span><span class="string">2</span><span class="string">"</span><span class="normal"> </span><span class="type">border</span><span class="symbol">=</span><span class="string">"</span><span class="string">0</span><span class="string">"</span><span class="normal"> </span><span class="type">style</span><span class="symbol">=</span><span class="string">"</span><span class="string">border: 1px solid black;</span><span class="string">"</span><span class="keyword">></span>
+
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Border</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+
+<span class="normal"> </span><span class="keyword"><rich:inputNumberSlider</span><span class="normal"> </span><span class="type">minValue</span><span class="symbol">=</span><span class="string">"</span><span class="string">1</span><span class="string">"</span><span class="normal"> </span><span class="type">maxValue</span><span class="symbol">=</span><span class="string">"</span><span class="string">5</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{suggestionBox.border}</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><a4j:support</span><span class="normal"> </span><span class="type">event</span><span class="symbol">=</span><span class="string">"</span><span class="string">onchange</span><span class="string">"</span><span class="normal"> </span><span class="type">reRender</span><span class="symbol">=</span><span class="string">"</span><span class="string">suggestionBoxId</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:inputNumberSlider></span>
+
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Width</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+
+<span class="normal"> </span><span class="keyword"><rich:inputNumberSlider</span><span class="normal"> </span><span class="type">minValue</span><span class="symbol">=</span><span class="string">"</span><span class="string">150</span><span class="string">"</span><span class="normal"> </span><span class="type">maxValue</span><span class="symbol">=</span><span class="string">"</span><span class="string">350</span><span class="string">"</span><span class="normal"> </span><span class="type">step</span><span class="symbol">=</span><span class="string">"</span><span class="string">50</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{suggestionBox.width}</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><a4j:support</span><span class="normal"> </span><span class="type">event</span><span class="symbol">=</span><span class="string">"</span><span class="string">onchange</span><span class="string">"</span><span class="normal"> </span><span class="type">reRender</span><span class="symbol">=</span><span class="string">"</span><span class="string">suggestionBoxId</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:inputNumberSlider></span>
+
+
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Height</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+
+<span class="normal"> </span><span class="keyword"><rich:inputNumberSlider</span><span class="normal"> </span><span class="type">minValue</span><span class="symbol">=</span><span class="string">"</span><span class="string">100</span><span class="string">"</span><span class="normal"> </span><span class="type">maxValue</span><span class="symbol">=</span><span class="string">"</span><span class="string">300</span><span class="string">"</span><span class="normal"> </span><span class="type">step</span><span class="symbol">=</span><span class="string">"</span><span class="string">50</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{suggestionBox.height}</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><a4j:support</span><span class="normal"> </span><span class="type">event</span><span class="symbol">=</span><span class="string">"</span><span class="string">onchange</span><span class="string">"</span><span class="normal"> </span><span class="type">reRender</span><span class="symbol">=</span><span class="string">"</span><span class="string">suggestionBoxId</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:inputNumberSlider></span>
+
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Shadow Depth</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+
+<span class="normal"> </span><span class="keyword"><rich:inputNumberSlider</span><span class="normal"> </span><span class="type">minValue</span><span class="symbol">=</span><span class="string">"</span><span class="string">3</span><span class="string">"</span><span class="normal"> </span><span class="type">maxValue</span><span class="symbol">=</span><span class="string">"</span><span class="string">6</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{suggestionBox.shadowDepth}</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><a4j:support</span><span class="normal"> </span><span class="type">event</span><span class="symbol">=</span><span class="string">"</span><span class="string">onchange</span><span class="string">"</span><span class="normal"> </span><span class="type">reRender</span><span class="symbol">=</span><span class="string">"</span><span class="string">suggestionBoxId</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:inputNumberSlider></span>
+
+
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Shadow Opacity</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+
+<span class="normal"> </span><span class="keyword"><rich:inputNumberSlider</span><span class="normal"> </span><span class="type">minValue</span><span class="symbol">=</span><span class="string">"</span><span class="string">1</span><span class="string">"</span><span class="normal"> </span><span class="type">maxValue</span><span class="symbol">=</span><span class="string">"</span><span class="string">9</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{suggestionBox.shadowOpacity}</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><a4j:support</span><span class="normal"> </span><span class="type">event</span><span class="symbol">=</span><span class="string">"</span><span class="string">onchange</span><span class="string">"</span><span class="normal"> </span><span class="type">reRender</span><span class="symbol">=</span><span class="string">"</span><span class="string">suggestionBoxId</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:inputNumberSlider></span>
+
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Cellpadding</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+
+<span class="normal"> </span><span class="keyword"><rich:inputNumberSlider</span><span class="normal"> </span><span class="type">minValue</span><span class="symbol">=</span><span class="string">"</span><span class="string">1</span><span class="string">"</span><span class="normal"> </span><span class="type">maxValue</span><span class="symbol">=</span><span class="string">"</span><span class="string">20</span><span class="string">"</span>
+<span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{suggestionBox.cellpadding}</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><a4j:support</span><span class="normal"> </span><span class="type">event</span><span class="symbol">=</span><span class="string">"</span><span class="string">onchange</span><span class="string">"</span><span class="normal"> </span><span class="type">reRender</span><span class="symbol">=</span><span class="string">"</span><span class="string">suggestionBoxId</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:inputNumberSlider></span>
+
+
+<span class="normal"> </span><span class="keyword"></h:panelGrid></span>
+<span class="keyword"></h:form></span>
+
+<span class="normal">....</span>
+
+<span class="normal">suggestionBox bean context:</span>
+<span class="normal">ackage org.richfaces.demo.sb;</span>
+
+<span class="normal">import org.richfaces.renderkit.html.SuggestionBoxRenderer;</span>
+
+<span class="normal">import java.util.ArrayList;</span>
+<span class="normal">import java.util.Iterator;</span>
+<span class="normal">import java.util.List;</span>
+<span class="normal">import java.io.Serializable;</span>
+
+<span class="normal">public class SuggestionBox implements Serializable {</span>
+<span class="normal"> /**</span>
+<span class="normal"> * </span>
+<span class="normal"> */</span>
+<span class="normal"> private static final long serialVersionUID = 1L;</span>
+
+<span class="normal"> private String property;</span>
+
+<span class="normal"> private ArrayList cities;</span>
+
+<span class="normal"> private ArrayList data;</span>
+<span class="normal"> private ArrayList tokens;</span>
+
+<span class="normal"> private String rows;</span>
+<span class="normal"> private String first;</span>
+<span class="normal"> private String cellspacing;</span>
+<span class="normal"> private String cellpadding;</span>
+<span class="normal"> private String minchars;</span>
+<span class="normal"> private String frequency;</span>
+<span class="normal"> private String rules;</span>
+<span class="normal"> private boolean check;</span>
+<span class="normal"> private String shadowDepth = Integer.toString(SuggestionBoxRenderer.SHADOW_DEPTH);</span>
+<span class="normal"> private String border = "1";</span>
+<span class="normal"> private String width = "200";</span>
+<span class="normal"> private String height = "150";</span>
+<span class="normal"> private String shadowOpacity = "4";</span>
+
+<span class="normal"> private static final String [] cit = {"Abba", "Abbeville", "Acworth", "Adairsville", "Adel", "Adrian", "Ailey", "Alamo", "Alapaha", "Albany", "Allenhurst", "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"};</span>
+
+<span class="normal"> public SuggestionBox() {</span>
+<span class="normal"> this.rows = "0";</span>
+<span class="normal"> this.first = "0";</span>
+<span class="normal"> this.cellspacing = "2";</span>
+<span class="normal"> this.cellpadding = "2";</span>
+<span class="normal"> this.minchars = "1";</span>
+<span class="normal"> this.frequency = "0";</span>
+<span class="normal"> this.rules = "none";</span>
+
+<span class="normal"> setCities(getAllData());</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public List autocomplete(Object suggest) {</span>
+<span class="normal"> String pref = (String)suggest;</span>
+<span class="normal"> ArrayList result = new ArrayList();</span>
+
+<span class="normal"> Iterator iterator = getAllData().iterator();</span>
+<span class="normal"> while (iterator.hasNext()) {</span>
+<span class="normal"> Data elem = (Data) iterator.next();</span>
+<span class="normal"> if ((elem != null && elem.getText().toLowerCase().indexOf(pref.toLowerCase()) == 0) || "".equals(pref))</span>
+<span class="normal"> {</span>
+<span class="normal"> result.add(elem);</span>
+<span class="normal"> }</span>
+<span class="normal"> }</span>
+<span class="normal"> return result;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public ArrayList getCities() {</span>
+<span class="normal"> return cities;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setCities(ArrayList cities) {</span>
+<span class="normal"> this.cities = cities;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public ArrayList getAllData() {</span>
+<span class="normal"> ArrayList result = new ArrayList();</span>
+<span class="normal"> for (int i = 0; i < cit.length; i++) {</span>
+<span class="normal"> Data data = new Data(cit[i], String.valueOf(i + 1));</span>
+<span class="normal"> result.add(data);</span>
+<span class="normal"> }</span>
+<span class="normal"> return result;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public ArrayList getData() {</span>
+<span class="normal"> return data;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setData(ArrayList data) {</span>
+<span class="normal"> this.data = data;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public String getProperty() {</span>
+<span class="normal"> return property;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setProperty(String property) {</span>
+<span class="normal"> this.property = property;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public String getCellpadding() {</span>
+<span class="normal"> return cellpadding;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setCellpadding(String cellpadding) {</span>
+<span class="normal"> this.cellpadding = cellpadding;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public String getCellspacing() {</span>
+<span class="normal"> return cellspacing;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setCellspacing(String cellspacing) {</span>
+<span class="normal"> this.cellspacing = cellspacing;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public boolean isCheck() {</span>
+<span class="normal"> return check;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setCheck(boolean check) {</span>
+<span class="normal"> this.check = check;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public String getFirst() {</span>
+<span class="normal"> return first;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public int getIntFirst() {</span>
+<span class="normal"> return Integer.parseInt(getFirst());</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setFirst(String first) {</span>
+<span class="normal"> this.first = first;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public String getFrequency() {</span>
+<span class="normal"> return frequency;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public double getDoubleFrequency() {</span>
+<span class="normal"> return Double.parseDouble(getFrequency());</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setFrequency(String frequency) {</span>
+<span class="normal"> this.frequency = frequency;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public String getMinchars() {</span>
+<span class="normal"> return minchars;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setMinchars(String minchars) {</span>
+<span class="normal"> this.minchars = minchars;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public String getRows() {</span>
+<span class="normal"> return rows;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public int getIntRows() {</span>
+<span class="normal"> return Integer.parseInt(getRows());</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setRows(String rows) {</span>
+<span class="normal"> this.rows = rows;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public String getRules() {</span>
+<span class="normal"> return rules;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setRules(String rules) {</span>
+<span class="normal"> this.rules = rules;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public ArrayList getTokens() {</span>
+<span class="normal"> return tokens;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setTokens(ArrayList tokens) {</span>
+<span class="normal"> this.tokens = tokens;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void OnSelect() {</span>
+<span class="normal"> System.out.print("Onselect works!!!");</span>
+
+<span class="normal"> }</span>
+
+<span class="normal"> public String getShadowDepth() {</span>
+<span class="normal"> return shadowDepth;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setShadowDepth(String shadowDepth) {</span>
+<span class="normal"> this.shadowDepth = shadowDepth;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public String getBorder() {</span>
+<span class="normal"> return border;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setBorder(String border) {</span>
+<span class="normal"> this.border = border;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public String getWidth() {</span>
+<span class="normal"> return width;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setWidth(String width) {</span>
+<span class="normal"> this.width = width;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public String getHeight() {</span>
+<span class="normal"> return height;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setHeight(String height) {</span>
+<span class="normal"> this.height = height;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public String getShadowOpacity() {</span>
+<span class="normal"> return shadowOpacity;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setShadowOpacity(String shadowOpacity) {</span>
+<span class="normal"> this.shadowOpacity = shadowOpacity;</span>
+<span class="normal"> }</span>
+<span class="normal">}</span>
+</tt></pre>
+</body>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/suggestionBox/source/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/suggestionBox/source/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/suggestionBox/source/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,321 @@
+<h:form id="suggestionbox_form">
+
+
+ <h:outputText
+ value="Simple richfaces Suggestion Box test web application."
+ style="font: 18px;font-weight: bold;" />
+ <br />
+ <br />
+
+ <h:panelGrid columns="3" border="0" style="border: 1px solid black;">
+ <f:verbatim>Suggestion Box will suggest you town names if it's started with the "a" or
+ "A" letter</f:verbatim>
+
+ <f:facet name="header">
+ <f:verbatim>Input With Suggestion Feature</f:verbatim>
+ </f:facet>
+
+
+ <f:verbatim> </f:verbatim>
+
+ <h:inputText value="#{suggestionBox.property}" id="text" />
+ <rich:suggestionbox id="suggestionBoxId" for="text" tokens=",["
+ rules="#{suggestionBox.rules}"
+ suggestionAction="#{suggestionBox.autocomplete}" var="result"
+ fetchValue="#{result.text}" rows="#{suggestionBox.intRows}"
+ first="#{suggestionBox.intFirst}"
+ minChars="#{suggestionBox.minchars}"
+ shadowOpacity="#{suggestionBox.shadowOpacity}"
+ border="#{suggestionBox.border}" width="#{suggestionBox.width}"
+ height="#{suggestionBox.height}"
+ shadowDepth="#{suggestionBox.shadowDepth}"
+ cellpadding="#{suggestionBox.cellpadding}">
+ <h:column>
+ <h:outputText value="#{result.text}" />
+ </h:column>
+ </rich:suggestionbox>
+ </h:panelGrid>
+
+ <br />
+ <br />
+
+ <h:panelGrid columns="2" border="0" style="border: 1px solid black;">
+
+ <h:outputText value="Border" />
+
+ <rich:inputNumberSlider minValue="1" maxValue="5"
+ value="#{suggestionBox.border}">
+ <a4j:support event="onchange" reRender="suggestionBoxId" />
+ </rich:inputNumberSlider>
+
+ <h:outputText value="Width" />
+
+ <rich:inputNumberSlider minValue="150" maxValue="350" step="50"
+ value="#{suggestionBox.width}">
+ <a4j:support event="onchange" reRender="suggestionBoxId" />
+ </rich:inputNumberSlider>
+
+
+ <h:outputText value="Height" />
+
+ <rich:inputNumberSlider minValue="100" maxValue="300" step="50"
+ value="#{suggestionBox.height}">
+ <a4j:support event="onchange" reRender="suggestionBoxId" />
+ </rich:inputNumberSlider>
+
+ <h:outputText value="Shadow Depth" />
+
+ <rich:inputNumberSlider minValue="3" maxValue="6"
+ value="#{suggestionBox.shadowDepth}">
+ <a4j:support event="onchange" reRender="suggestionBoxId" />
+ </rich:inputNumberSlider>
+
+
+ <h:outputText value="Shadow Opacity" />
+
+ <rich:inputNumberSlider minValue="1" maxValue="9"
+ value="#{suggestionBox.shadowOpacity}">
+ <a4j:support event="onchange" reRender="suggestionBoxId" />
+ </rich:inputNumberSlider>
+
+ <h:outputText value="Cellpadding" />
+
+ <rich:inputNumberSlider minValue="1" maxValue="20"
+ value="#{suggestionBox.cellpadding}">
+ <a4j:support event="onchange" reRender="suggestionBoxId" />
+ </rich:inputNumberSlider>
+
+
+ </h:panelGrid>
+</h:form>
+
+....
+
+suggestionBox bean context:
+ackage org.richfaces.demo.sb;
+
+import org.richfaces.renderkit.html.SuggestionBoxRenderer;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+import java.io.Serializable;
+
+public class SuggestionBox implements Serializable {
+ /**
+ *
+ */
+ private static final long serialVersionUID = 1L;
+
+ private String property;
+
+ private ArrayList cities;
+
+ private ArrayList data;
+ private ArrayList tokens;
+
+ private String rows;
+ private String first;
+ private String cellspacing;
+ private String cellpadding;
+ private String minchars;
+ private String frequency;
+ private String rules;
+ private boolean check;
+ private String shadowDepth = Integer.toString(SuggestionBoxRenderer.SHADOW_DEPTH);
+ private String border = "1";
+ private String width = "200";
+ private String height = "150";
+ private String shadowOpacity = "4";
+
+ private static final String [] cit = {"Abba", "Abbeville", "Acworth", "Adairsville", "Adel", "Adrian", "Ailey", "Alamo", "Alapaha", "Albany", "Allenhurst", "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 SuggestionBox() {
+ this.rows = "0";
+ this.first = "0";
+ this.cellspacing = "2";
+ this.cellpadding = "2";
+ this.minchars = "1";
+ this.frequency = "0";
+ this.rules = "none";
+
+ setCities(getAllData());
+ }
+
+ public List autocomplete(Object suggest) {
+ String pref = (String)suggest;
+ 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 String getFirst() {
+ return first;
+ }
+
+ public int getIntFirst() {
+ return Integer.parseInt(getFirst());
+ }
+
+ public void setFirst(String 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 getShadowDepth() {
+ return shadowDepth;
+ }
+
+ public void setShadowDepth(String shadowDepth) {
+ this.shadowDepth = shadowDepth;
+ }
+
+ public String getBorder() {
+ return border;
+ }
+
+ public void setBorder(String border) {
+ this.border = border;
+ }
+
+ public String getWidth() {
+ return width;
+ }
+
+ public void setWidth(String width) {
+ this.width = width;
+ }
+
+ 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;
+ }
+}
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/suggestionBox/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/suggestionBox/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/suggestionBox/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,125 @@
+<!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:a4j="https://ajax4jsf.dev.java.net/ajax"
+ xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+<ui:composition template="/templates/component-sample.xhtml">
+ <ui:define name="sample">
+
+
+
+ <p>RichFaces Suggestion Box component adds the autocomplete
+ capabity to the existing input component such as h:inputText or
+ t:inputText. Use the attribute 'for' to pint to the input component
+ you want to add the autocomplete capabity to.</p>
+ <p>Working with Suggestion Box is similar to the h:dataTable
+ component, but instead of the 'value' attribute it has a
+ suggestionAction attribute that points to the method that returns the
+ filtered collection. The 'fetch' attribute points to the data that
+ will be inserted to the input field if the particular row is selected
+ or clicked from the suggested list.</p>
+
+ <div class="sample-container">
+ <h:form id="suggestionbox_form">
+
+
+ <h:outputText
+ value="Simple richfaces Suggestion Box test web application."
+ style="font: 18px;font-weight: bold;" />
+ <br />
+ <br />
+
+ <h:panelGrid columns="3" border="0" style="border: 1px solid black;">
+ <f:verbatim>Suggestion Box will suggest you town names if it's started with the "a" or
+ "A" letter</f:verbatim>
+
+ <f:facet name="header">
+ <f:verbatim>Input With Suggestion Feature</f:verbatim>
+ </f:facet>
+
+
+ <f:verbatim> </f:verbatim>
+
+ <h:inputText value="#{suggestionBox.property}" id="text" />
+ <rich:suggestionbox id="suggestionBoxId" for="text" tokens=",["
+ rules="#{suggestionBox.rules}"
+ suggestionAction="#{suggestionBox.autocomplete}" var="result"
+ fetchValue="#{result.text}" rows="#{suggestionBox.intRows}"
+ first="#{suggestionBox.intFirst}"
+ minChars="#{suggestionBox.minchars}"
+ shadowOpacity="#{suggestionBox.shadowOpacity}"
+ border="#{suggestionBox.border}" width="#{suggestionBox.width}"
+ height="#{suggestionBox.height}"
+ shadowDepth="#{suggestionBox.shadowDepth}"
+ cellpadding="#{suggestionBox.cellpadding}">
+ <h:column>
+ <h:outputText value="#{result.text}" />
+ </h:column>
+ </rich:suggestionbox>
+ </h:panelGrid>
+
+ <br />
+ <br />
+
+ <h:panelGrid columns="2" border="0" style="border: 1px solid black;">
+
+ <h:outputText value="Border" />
+
+ <rich:inputNumberSlider minValue="1" maxValue="5"
+ value="#{suggestionBox.border}">
+ <a4j:support event="onchange" reRender="suggestionBoxId" />
+ </rich:inputNumberSlider>
+
+ <h:outputText value="Width" />
+
+ <rich:inputNumberSlider minValue="150" maxValue="350" step="50"
+ value="#{suggestionBox.width}">
+ <a4j:support event="onchange" reRender="suggestionBoxId" />
+ </rich:inputNumberSlider>
+
+
+ <h:outputText value="Height" />
+
+ <rich:inputNumberSlider minValue="100" maxValue="300" step="50"
+ value="#{suggestionBox.height}">
+ <a4j:support event="onchange" reRender="suggestionBoxId" />
+ </rich:inputNumberSlider>
+
+ <h:outputText value="Shadow Depth" />
+
+ <rich:inputNumberSlider minValue="3" maxValue="6"
+ value="#{suggestionBox.shadowDepth}">
+ <a4j:support event="onchange" reRender="suggestionBoxId" />
+ </rich:inputNumberSlider>
+
+
+ <h:outputText value="Shadow Opacity" />
+
+ <rich:inputNumberSlider minValue="1" maxValue="9"
+ value="#{suggestionBox.shadowOpacity}">
+ <a4j:support event="onchange" reRender="suggestionBoxId" />
+ </rich:inputNumberSlider>
+
+ <h:outputText value="Cellpadding" />
+
+ <rich:inputNumberSlider minValue="1" maxValue="20"
+ value="#{suggestionBox.cellpadding}">
+ <a4j:support event="onchange" reRender="suggestionBoxId" />
+ </rich:inputNumberSlider>
+
+
+ </h:panelGrid>
+ </h:form>
+ </div>
+
+ </ui:define>
+ <ui:define name="sources">
+ Here is fragment of page sources for given example:
+ <iframe
+ src="${facesContext.externalContext.requestContextPath}/richfaces/suggestionBox/source/usage.html"
+ class="source_frame" />
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/suggestionBox.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/suggestionBox.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/suggestionBox.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,17 @@
+<!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">
+<ui:composition template="/templates/main.xhtml">
+ <ui:define name="title">RichFaces - Open Source Rich JSF Components - Suggestion Box</ui:define>
+ <ui:define name="body">
+ <rich:tabPanel switchType="server" styleClass="top_tab" contentClass="content_tab" inactiveTabClass="inactive_tab" activeTabClass="active_tab">
+ <rich:tab label="Usage">
+ <ui:include src="/richfaces/suggestionBox/usage.xhtml"/>
+ </rich:tab>
+ </rich:tabPanel>
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel/look-customization.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel/look-customization.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel/look-customization.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,42 @@
+<!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">
+ <ui:composition template="/templates/component-sample.xhtml">
+ <ui:define name="sample">
+ <p>
+ This is a demo of use stylesheets and skinability features to adjust tab spanel look. Here we use pre-defined classes for tab panel
+ "rich-tab-inactive", "rich-tab-active" and "rich-tabpanel-content" to adjust tab panel look. Note how look of tabs above also affected.
+ </p>
+<style>
+.rich-tab-inactive {
+ cursor: pointer;
+}
+.rich-tabpanel-content {
+ border-width: 1px 0px 0px 0px;
+ background-color: transparent;
+}
+</style>
+<p>
+Here is an example of default tab panel with 3 tabs.
+<rich:tabPanel headerAlignment="right" switchType="client">
+ <rich:tab label="First">
+ Here is tab #1
+ </rich:tab>
+ <rich:tab label="Second">
+ Here is tab #2
+ </rich:tab>
+ <rich:tab label="Third">
+ Here is tab #3
+ </rich:tab>
+</rich:tabPanel>
+</p>
+ </ui:define>
+ <ui:define name="sources">
+ Here is fragment of page sources for given example:
+ <iframe src="${facesContext.externalContext.requestContextPath}/richfaces/tabPanel/source/look-customization.html" class="source_frame"/>
+ </ui:define>
+ </ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel/source/look-customization.html
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel/source/look-customization.html (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel/source/look-customization.html 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,43 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
+ "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type"
+content="text/html; charset=iso-8859-1">
+<meta name="GENERATOR" content="GNU source-highlight 2.1.2
+by Lorenzo Bettini
+http://www.lorenzobettini.it
+http://www.gnu.org/software/src-highlite">
+<title>look-customization.xhtml</title>
+<link rel="stylesheet" href="../../../css/xhtml-source.css" type="text/css">
+</head>
+<body>
+<pre><tt><span class="keyword"><style></span>
+<span class="normal">.rich-tab-inactive {</span>
+<span class="normal"> cursor: pointer;</span>
+<span class="normal"> background-image: none;</span>
+<span class="normal">}</span>
+<span class="normal">.rich-tab-active {</span>
+<span class="normal"> background-image: none;</span>
+<span class="normal">}</span>
+<span class="normal">.rich-tabpanel-content {</span>
+<span class="normal"> background-color: white;</span>
+<span class="normal">}</span>
+<span class="keyword"></style></span>
+<span class="keyword"><p></span>
+<span class="normal">Here is an example of default tab panel with 3 tabs.</span>
+<span class="keyword"><rich:tabPanel></span>
+<span class="normal"> </span><span class="keyword"><rich:tab</span><span class="normal"> </span><span class="type">label</span><span class="symbol">=</span><span class="string">"</span><span class="string">First</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> Here is tab #1</span>
+<span class="normal"> </span><span class="keyword"></rich:tab></span>
+<span class="normal"> </span><span class="keyword"><rich:tab</span><span class="normal"> </span><span class="type">label</span><span class="symbol">=</span><span class="string">"</span><span class="string">Second</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> Here is tab #2</span>
+<span class="normal"> </span><span class="keyword"></rich:tab></span>
+<span class="normal"> </span><span class="keyword"><rich:tab</span><span class="normal"> </span><span class="type">label</span><span class="symbol">=</span><span class="string">"</span><span class="string">Third</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> Here is tab #3</span>
+<span class="normal"> </span><span class="keyword"></rich:tab></span>
+<span class="keyword"></rich:tabPanel></span>
+<span class="keyword"></p></span>
+</tt></pre>
+</body>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel/source/look-customization.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel/source/look-customization.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel/source/look-customization.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,26 @@
+<style>
+.rich-tab-inactive {
+ cursor: pointer;
+ background-image: none;
+}
+.rich-tab-active {
+ background-image: none;
+}
+.rich-tabpanel-content {
+ background-color: white;
+}
+</style>
+<p>
+Here is an example of default tab panel with 3 tabs.
+<rich:tabPanel>
+ <rich:tab label="First">
+ Here is tab #1
+ </rich:tab>
+ <rich:tab label="Second">
+ Here is tab #2
+ </rich:tab>
+ <rich:tab label="Third">
+ Here is tab #3
+ </rich:tab>
+</rich:tabPanel>
+</p>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel/source/usage.html
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel/source/usage.html (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel/source/usage.html 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,55 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
+ "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type"
+content="text/html; charset=iso-8859-1">
+<meta name="GENERATOR" content="GNU source-highlight 2.1.2
+by Lorenzo Bettini
+http://www.lorenzobettini.it
+http://www.gnu.org/software/src-highlite">
+<title>usage.xhtml</title>
+<link rel="stylesheet" href="../../../css/xhtml-source.css" type="text/css">
+</head>
+<body>
+<pre><tt><span class="normal">Here is an example of default tab panel with 3 tabs.</span>
+<span class="keyword"><rich:tabPanel></span>
+<span class="normal"> </span><span class="keyword"><rich:tab</span><span class="normal"> </span><span class="type">label</span><span class="symbol">=</span><span class="string">"</span><span class="string">First</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> Here is tab #1</span>
+<span class="normal"> </span><span class="keyword"></rich:tab></span>
+<span class="normal"> </span><span class="keyword"><rich:tab</span><span class="normal"> </span><span class="type">label</span><span class="symbol">=</span><span class="string">"</span><span class="string">Second</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> Here is tab #2</span>
+<span class="normal"> </span><span class="keyword"></rich:tab></span>
+<span class="normal"> </span><span class="keyword"><rich:tab</span><span class="normal"> </span><span class="type">label</span><span class="symbol">=</span><span class="string">"</span><span class="string">Third</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> Here is tab #3</span>
+<span class="normal"> </span><span class="keyword"></rich:tab></span>
+<span class="keyword"></rich:tabPanel></span>
+
+<span class="normal">Here is an example of tab panel switched in "ajax" style. Second tab is disabled.</span>
+<span class="keyword"><rich:tabPanel</span><span class="normal"> </span><span class="type">switchType</span><span class="symbol">=</span><span class="string">"</span><span class="string">ajax</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:tab</span><span class="normal"> </span><span class="type">label</span><span class="symbol">=</span><span class="string">"</span><span class="string">First</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> Here is tab #1</span>
+<span class="normal"> </span><span class="keyword"></rich:tab></span>
+<span class="normal"> </span><span class="keyword"><rich:tab</span><span class="normal"> </span><span class="type">label</span><span class="symbol">=</span><span class="string">"</span><span class="string">Second</span><span class="string">"</span><span class="normal"> </span><span class="type">disabled</span><span class="symbol">=</span><span class="string">"</span><span class="string">true</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> Here is tab #2</span>
+<span class="normal"> </span><span class="keyword"></rich:tab></span>
+<span class="normal"> </span><span class="keyword"><rich:tab</span><span class="normal"> </span><span class="type">label</span><span class="symbol">=</span><span class="string">"</span><span class="string">Third</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> Here is tab #3</span>
+<span class="normal"> </span><span class="keyword"></rich:tab></span>
+<span class="keyword"></rich:tabPanel></span>
+
+<span class="normal">Here is an example of tab panel switched completely on client.</span>
+<span class="keyword"><rich:tabPanel</span><span class="normal"> </span><span class="type">switchType</span><span class="symbol">=</span><span class="string">"</span><span class="string">client</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:tab</span><span class="normal"> </span><span class="type">label</span><span class="symbol">=</span><span class="string">"</span><span class="string">First</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> Here is tab #1</span>
+<span class="normal"> </span><span class="keyword"></rich:tab></span>
+<span class="normal"> </span><span class="keyword"><rich:tab</span><span class="normal"> </span><span class="type">label</span><span class="symbol">=</span><span class="string">"</span><span class="string">Second</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> Here is tab #2</span>
+<span class="normal"> </span><span class="keyword"></rich:tab></span>
+<span class="normal"> </span><span class="keyword"><rich:tab</span><span class="normal"> </span><span class="type">label</span><span class="symbol">=</span><span class="string">"</span><span class="string">Third</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> Here is tab #3</span>
+<span class="normal"> </span><span class="keyword"></rich:tab></span>
+<span class="keyword"></rich:tabPanel></span>
+</tt></pre>
+</body>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel/source/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel/source/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel/source/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,38 @@
+Here is an example of default tab panel with 3 tabs.
+<rich:tabPanel>
+ <rich:tab label="First">
+ Here is tab #1
+ </rich:tab>
+ <rich:tab label="Second">
+ Here is tab #2
+ </rich:tab>
+ <rich:tab label="Third">
+ Here is tab #3
+ </rich:tab>
+</rich:tabPanel>
+
+Here is an example of tab panel switched in "ajax" style. Second tab is disabled.
+<rich:tabPanel switchType="ajax">
+ <rich:tab label="First">
+ Here is tab #1
+ </rich:tab>
+ <rich:tab label="Second" disabled="true">
+ Here is tab #2
+ </rich:tab>
+ <rich:tab label="Third">
+ Here is tab #3
+ </rich:tab>
+</rich:tabPanel>
+
+Here is an example of tab panel switched completely on client.
+<rich:tabPanel switchType="client">
+ <rich:tab label="First">
+ Here is tab #1
+ </rich:tab>
+ <rich:tab label="Second">
+ Here is tab #2
+ </rich:tab>
+ <rich:tab label="Third">
+ Here is tab #3
+ </rich:tab>
+</rich:tabPanel>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,61 @@
+<!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">
+ <ui:composition template="/templates/component-sample.xhtml">
+ <ui:define name="sample">
+ <p>
+ Tab panel use to create "tabbed" pages. RichFaces tab panel can be switched in 3 way - using "normal" server-side update, using "ajax" style update, when only tab panel area will be updated on the page, and using "client" type - without any interaction with server.
+ Note, that in case of "client" switch type all tabs will be rendered at the same time.
+ </p>
+ <p>
+ Here is an example of default tab panel with 3 tabs.
+ <rich:tabPanel>
+ <rich:tab label="First">
+ Here is tab #1
+ </rich:tab>
+ <rich:tab label="Second">
+ Here is tab #2
+ </rich:tab>
+ <rich:tab label="Third">
+ Here is tab #3
+ </rich:tab>
+ </rich:tabPanel>
+ </p>
+ <p>
+ Here is an example of tab panel switched in "ajax" style. Second tab is disabled.
+ <rich:tabPanel switchType="ajax">
+ <rich:tab label="First">
+ Here is tab #1
+ </rich:tab>
+ <rich:tab label="Second" disabled="true">
+ Here is tab #2
+ </rich:tab>
+ <rich:tab label="Third">
+ Here is tab #3
+ </rich:tab>
+ </rich:tabPanel>
+ </p>
+ <p>
+ Here is an example of tab panel switched completely on client.
+ <rich:tabPanel switchType="client">
+ <rich:tab label="First">
+ Here is tab #1
+ </rich:tab>
+ <rich:tab label="Second">
+ Here is tab #2
+ </rich:tab>
+ <rich:tab label="Third">
+ Here is tab #3
+ </rich:tab>
+ </rich:tabPanel>
+ </p>
+ </ui:define>
+ <ui:define name="sources">
+ Here is fragment of page sources for given example:
+ <iframe src="${facesContext.externalContext.requestContextPath}/richfaces/tabPanel/source/usage.html" class="source_frame"/>
+ </ui:define>
+ </ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tabPanel.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,20 @@
+<!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">
+<ui:composition template="/templates/main.xhtml">
+ <ui:define name="title">RichFaces - Open Source Rich JSF Components - TabPanel</ui:define>
+ <ui:define name="body">
+ <rich:tabPanel switchType="server" styleClass="top_tab" contentClass="content_tab" inactiveTabClass="inactive_tab" activeTabClass="active_tab">
+ <rich:tab label="Usage">
+ <ui:include src="/richfaces/tabPanel/usage.xhtml"/>
+ </rich:tab>
+ <rich:tab label="Look Customization">
+ <ui:include src="/richfaces/tabPanel/look-customization.xhtml"/>
+ </rich:tab>
+ </rich:tabPanel>
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/togglePanel/source/usage.html
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/togglePanel/source/usage.html (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/togglePanel/source/usage.html 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,39 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
+ "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type"
+content="text/html; charset=iso-8859-1">
+<meta name="GENERATOR" content="GNU source-highlight 2.1.2
+by Lorenzo Bettini
+http://www.lorenzobettini.it
+http://www.gnu.org/software/src-highlite">
+<title>usage.xhtml</title>
+<link rel="stylesheet" href="../../../css/xhtml-source.css" type="text/css">
+</head>
+<body>
+<pre><tt><span class="keyword"><rich:togglePanel</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">skin_chooser1</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{toggleBean.skinChooserState1}</span><span class="string">"</span><span class="normal"> </span><span class="type">switchType</span><span class="symbol">=</span><span class="string">"</span><span class="string">ajax</span><span class="string">"</span><span class="normal"> </span><span class="type">stateOrder</span><span class="symbol">=</span><span class="string">"</span><span class="string">s,b</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">s</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:panelGrid</span><span class="normal"> </span><span class="type">columns</span><span class="symbol">=</span><span class="string">"</span><span class="string">1</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">BlueSky</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Classic</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"><rich:toggleControl</span><span class="normal"> </span><span class="type">for</span><span class="symbol">=</span><span class="string">"</span><span class="string">skin_chooser1</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">more &#187;</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></h:panelGrid></span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+<span class="normal"> </span><span class="keyword"><f:facet</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">b</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:panelGrid</span><span class="normal"> </span><span class="type">columns</span><span class="symbol">=</span><span class="string">"</span><span class="string">1</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">BlueSky</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Classic</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Ruby</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Wine</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">DeepMarine</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">EmeraldTown</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Sakura</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Default</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"><rich:toggleControl</span><span class="normal"> </span><span class="type">for</span><span class="symbol">=</span><span class="string">"</span><span class="string">skin_chooser1</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">&#171; less</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></h:panelGrid></span>
+<span class="normal"> </span><span class="keyword"></f:facet></span>
+<span class="keyword"></rich:togglePanel></span>
+</tt></pre>
+</body>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/togglePanel/source/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/togglePanel/source/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/togglePanel/source/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,22 @@
+<rich:togglePanel id="skin_chooser1" value="#{toggleBean.skinChooserState1}" switchType="ajax" stateOrder="s,b">
+ <f:facet name="s">
+ <h:panelGrid columns="1">
+ <h:outputText value="BlueSky" />
+ <h:outputText value="Classic" />
+ <rich:toggleControl for="skin_chooser1" value="more »" />
+ </h:panelGrid>
+ </f:facet>
+ <f:facet name="b">
+ <h:panelGrid columns="1">
+ <h:outputText value="BlueSky" />
+ <h:outputText value="Classic" />
+ <h:outputText value="Ruby" />
+ <h:outputText value="Wine" />
+ <h:outputText value="DeepMarine" />
+ <h:outputText value="EmeraldTown" />
+ <h:outputText value="Sakura" />
+ <h:outputText value="Default" />
+ <rich:toggleControl for="skin_chooser1" value="« less" />
+ </h:panelGrid>
+ </f:facet>
+</rich:togglePanel>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/togglePanel/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/togglePanel/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/togglePanel/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,84 @@
+<!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:a4j="https://ajax4jsf.dev.java.net/ajax"
+ xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+ <ui:composition template="/templates/component-sample.xhtml">
+ <ui:define name="sample">
+ <p>
+ Toggle Panel renders sequence of contents, tha can be switchet (toggled) by component called Toggle Control.
+ </p>
+ <ul>
+ <li>Native support for Ajax operations</li>
+ <li>Support for "ajax", "client" and "server" switch types</li>
+ </ul>
+ <h:form>
+ <div class="sample-container" >
+ <p>
+ This is a simple example that contain two panels that can be switched. It is simplified version of elemet above on the screen that allows change of skin for this application.
+ </p>
+ <rich:togglePanel id="skin_chooser1" value="#{toggleBean.skinChooserState1}" switchType="ajax" stateOrder="s,b">
+ <f:facet name="s">
+ <h:panelGrid columns="1">
+ <h:outputText value="BlueSky" />
+ <h:outputText value="Classic" />
+ <rich:toggleControl for="skin_chooser1" value="more »" />
+ </h:panelGrid>
+ </f:facet>
+ <f:facet name="b">
+ <h:panelGrid columns="1">
+ <h:outputText value="BlueSky" />
+ <h:outputText value="Classic" />
+ <h:outputText value="Ruby" />
+ <h:outputText value="Wine" />
+ <h:outputText value="DeepMarine" />
+ <h:outputText value="EmeraldTown" />
+ <h:outputText value="Sakura" />
+ <h:outputText value="Default" />
+ <rich:toggleControl for="skin_chooser1" value="« less" />
+ </h:panelGrid>
+ </f:facet>
+ </rich:togglePanel>
+ </div>
+ <div class="sample-container" >
+ <p>
+ This is another example, now it uses "server" switch type.
+ </p>
+ <rich:togglePanel id="skin_chooser2" value="#{toggleBean.skinChooserState3}" switchType="server" stateOrder="s,b">
+ <f:facet name="s">
+ <h:panelGrid columns="1">
+ <h:outputText value="BlueSky" />
+ <h:outputText value="Classic" />
+ <rich:toggleControl for="skin_chooser2" value="more »" />
+ </h:panelGrid>
+ </f:facet>
+ <f:facet name="b">
+ <h:panelGrid columns="1">
+ <h:outputText value="BlueSky" />
+ <h:outputText value="Classic" />
+ <h:outputText value="Ruby" />
+ <h:outputText value="Wine" />
+ <h:outputText value="DeepMarine" />
+ <h:outputText value="EmeraldTown" />
+ <h:outputText value="Sakura" />
+ <h:outputText value="Default" />
+ <rich:toggleControl for="skin_chooser2" value="« less" />
+ </h:panelGrid>
+ </f:facet>
+ </rich:togglePanel>
+ </div>
+ </h:form>
+ <p>
+ Note how tree switched on "client" does not "remember" it state when whole page is reloaded. At the same time "ajax" tree remember it state without any additional code.
+ </p>
+ </ui:define>
+ <ui:define name="sources">
+ <p>
+ Here is fragment of page sources for given example:
+ </p>
+ <iframe src="${facesContext.externalContext.requestContextPath}/richfaces/togglePanel/source/usage.html" class="source_frame"/>
+ </ui:define>
+ </ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/togglePanel.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/togglePanel.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/togglePanel.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,19 @@
+<!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">
+
+<ui:composition template="/templates/main.xhtml">
+ <ui:define name="title">RichFaces - Open Source Rich JSF Components - Toggle Panel</ui:define>
+ <ui:define name="current">panel</ui:define>
+ <ui:define name="body">
+ <rich:tabPanel switchType="server" styleClass="top_tab" contentClass="content_tab" inactiveTabClass="inactive_tab" activeTabClass="active_tab">
+ <rich:tab label="Usage">
+ <ui:include src="/richfaces/togglePanel/usage.xhtml"/>
+ </rich:tab>
+ </rich:tabPanel>
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/new.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/new.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/palette_edit.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/palette_edit.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/print.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/print.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/print_edit.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/print_edit.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/print_preview.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/print_preview.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/search_item.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/search_item.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/timer_task.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/timer_task.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/webapp_session_config.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/webapp_session_config.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/webapp_welcome.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/webapp_welcome.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/yellow_lamp.gif
===================================================================
(Binary files differ)
Property changes on: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/images/yellow_lamp.gif
___________________________________________________________________
Name: svn:mime-type
+ application/octet-stream
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/source/usage.html
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/source/usage.html (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/source/usage.html 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,139 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
+ "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type"
+content="text/html; charset=iso-8859-1">
+<meta name="GENERATOR" content="GNU source-highlight 2.1.2
+by Lorenzo Bettini
+http://www.lorenzobettini.it
+http://www.gnu.org/software/src-highlite">
+<title>usage.xhtml</title>
+<link rel="stylesheet" href="../../../css/xhtml-source.css" type="text/css">
+</head>
+<body>
+<pre><tt><span class="keyword"><div</span><span class="normal"> </span><span class="type">class</span><span class="symbol">=</span><span class="string">"</span><span class="string">sample-container</span><span class="string">"</span><span class="normal"> </span><span class="keyword">></span>
+
+<span class="normal"> </span><span class="keyword"><rich:toolBar</span><span class="normal"> </span><span class="type">height</span><span class="symbol">=</span><span class="string">"</span><span class="string">26</span><span class="string">"</span><span class="normal"> </span><span class="type">itemSeparator</span><span class="symbol">=</span><span class="string">"</span><span class="string">grid</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:toolBarGroup></span>
+<span class="normal"> </span><span class="keyword"><h:graphicImage</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">/richfaces/toolBar/images/new.gif</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></h:graphicImage></span>
+<span class="normal"> </span><span class="keyword"><h:graphicImage</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">/richfaces/toolBar/images/webapp_welcome.gif</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></h:graphicImage></span>
+<span class="normal"> </span><span class="keyword"><h:graphicImage</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">/richfaces/toolBar/images/palette_edit.gif</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></h:graphicImage></span>
+<span class="normal"> </span><span class="keyword"></rich:toolBarGroup></span>
+<span class="normal"> </span><span class="keyword"><rich:toolBarGroup></span>
+<span class="normal"> </span><span class="keyword"><h:graphicImage</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">/richfaces/toolBar/images/print_edit.gif</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></h:graphicImage></span>
+<span class="normal"> </span><span class="keyword"><h:graphicImage</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">/richfaces/toolBar/images/print.gif</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></h:graphicImage></span>
+<span class="normal"> </span><span class="keyword"><h:graphicImage</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">/richfaces/toolBar/images/print_preview.gif</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></h:graphicImage></span>
+<span class="normal"> </span><span class="keyword"></rich:toolBarGroup></span>
+<span class="normal"> </span><span class="keyword"><rich:toolBarGroup</span><span class="normal"> </span><span class="type">location</span><span class="symbol">=</span><span class="string">"</span><span class="string">right</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:graphicImage</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">/richfaces/toolBar/images/yellow_lamp.gif</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></h:graphicImage></span>
+<span class="normal"> </span><span class="keyword"><h:graphicImage</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">/richfaces/toolBar/images/timer_task.gif</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></h:graphicImage></span>
+<span class="normal"> </span><span class="keyword"></rich:toolBarGroup></span>
+<span class="normal"> </span><span class="keyword"></rich:toolBar></span>
+
+<span class="keyword"></div></span>
+
+<span class="keyword"><div</span><span class="normal"> </span><span class="type">class</span><span class="symbol">=</span><span class="string">"</span><span class="string">sample-container</span><span class="string">"</span><span class="normal"> </span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:form></span>
+<span class="normal"> </span><span class="keyword"><rich:toolBar</span><span class="normal"> </span><span class="type">height</span><span class="symbol">=</span><span class="string">"</span><span class="string">34</span><span class="string">"</span><span class="normal"> </span><span class="type">itemSeparator</span><span class="symbol">=</span><span class="string">"</span><span class="string">line</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:toolBarGroup></span>
+<span class="normal"> </span><span class="keyword"><h:graphicImage</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">edit</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">/richfaces/toolBar/images/print_edit.gif</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></h:graphicImage></span>
+<span class="normal"> </span><span class="keyword"><h:outputLabel</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Edit</span><span class="string">"</span><span class="normal"> </span><span class="type">for</span><span class="symbol">=</span><span class="string">"</span><span class="string">edit</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></h:outputLabel></span>
+<span class="normal"> </span><span class="keyword"></rich:toolBarGroup></span>
+<span class="normal"> </span><span class="keyword"><rich:toolBarGroup></span><span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"><h:graphicImage</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">print</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">/richfaces/toolBar/images/print.gif</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></h:graphicImage></span>
+<span class="normal"> </span><span class="keyword"><h:outputLabel</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Print</span><span class="string">"</span><span class="normal"> </span><span class="type">for</span><span class="symbol">=</span><span class="string">"</span><span class="string">edit</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></h:outputLabel></span>
+<span class="normal"> </span><span class="keyword"></rich:toolBarGroup></span>
+<span class="normal"> </span><span class="keyword"><rich:toolBarGroup></span><span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"><h:graphicImage</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">preview</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">/richfaces/toolBar/images/print_preview.gif</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></h:graphicImage></span>
+<span class="normal"> </span><span class="keyword"><h:outputLabel</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Preview</span><span class="string">"</span><span class="normal"> </span><span class="type">for</span><span class="symbol">=</span><span class="string">"</span><span class="string">preview</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></h:outputLabel></span>
+<span class="normal"> </span><span class="keyword"></rich:toolBarGroup></span>
+<span class="normal"> </span><span class="keyword"><rich:toolBarGroup</span><span class="normal"> </span><span class="type">location</span><span class="symbol">=</span><span class="string">"</span><span class="string">right</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:inputText</span><span class="normal"> </span><span class="type">styleClass</span><span class="symbol">=</span><span class="string">"</span><span class="string">barsearch</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"><h:commandButton</span><span class="normal"> </span><span class="type">styleClass</span><span class="symbol">=</span><span class="string">"</span><span class="string">barsearchbutton</span><span class="string">"</span><span class="normal"> </span><span class="type">onclick</span><span class="symbol">=</span><span class="string">"</span><span class="string">return false;</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Search</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:toolBarGroup></span>
+<span class="normal"> </span><span class="keyword"></rich:toolBar></span>
+<span class="normal"> </span><span class="keyword"></h:form></span>
+<span class="normal"> </span><span class="keyword"></div></span>
+
+
+<span class="keyword"><p></span>
+<span class="normal"> The items on the toolBar can be grouped with ability to define the separator</span>
+<span class="normal"> between the different group and between the member of the same group. The </span>
+<span class="normal"> "location" attribute set to "right" put the group to the right side of the panel.</span>
+<span class="normal"> </span>
+<span class="keyword"></p></span>
+<span class="keyword"><div</span><span class="normal"> </span><span class="type">class</span><span class="symbol">=</span><span class="string">"</span><span class="string">sample-container</span><span class="string">"</span><span class="normal"> </span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:form></span>
+<span class="normal"> </span><span class="keyword"><h:panelGrid</span><span class="normal"> </span><span class="type">columns</span><span class="symbol">=</span><span class="string">"</span><span class="string">2</span><span class="string">"</span><span class="normal"> </span><span class="type">width</span><span class="symbol">=</span><span class="string">"</span><span class="string">100%</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:panel></span>
+<span class="normal"> </span><span class="keyword"><h:panelGrid</span><span class="normal"> </span><span class="type">columns</span><span class="symbol">=</span><span class="string">"</span><span class="string">8</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Group Separator:</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"><a4j:commandLink</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Line</span><span class="string">"</span><span class="normal"> </span><span class="type">reRender</span><span class="symbol">=</span><span class="string">"</span><span class="string">bar</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><a4j:actionparam</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">gs</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">line</span><span class="string">"</span><span class="normal"> </span><span class="type">assignTo</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{tbBean.groupSeparator}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></a4j:commandLink></span>
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"><a4j:commandLink</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Grid</span><span class="string">"</span><span class="normal"> </span><span class="type">reRender</span><span class="symbol">=</span><span class="string">"</span><span class="string">bar</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><a4j:actionparam</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">gs</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">grid</span><span class="string">"</span><span class="normal"> </span><span class="type">assignTo</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{tbBean.groupSeparator}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></a4j:commandLink></span>
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"><a4j:commandLink</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Disc</span><span class="string">"</span><span class="normal"> </span><span class="type">reRender</span><span class="symbol">=</span><span class="string">"</span><span class="string">bar</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><a4j:actionparam</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">gs</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">disc</span><span class="string">"</span><span class="normal"> </span><span class="type">assignTo</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{tbBean.groupSeparator}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></a4j:commandLink></span>
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"><a4j:commandLink</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Square</span><span class="string">"</span><span class="normal"> </span><span class="type">reRender</span><span class="symbol">=</span><span class="string">"</span><span class="string">bar</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><a4j:actionparam</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">gs</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">square</span><span class="string">"</span><span class="normal"> </span><span class="type">assignTo</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{tbBean.groupSeparator}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></a4j:commandLink></span>
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"><a4j:commandLink</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">None</span><span class="string">"</span><span class="normal"> </span><span class="type">reRender</span><span class="symbol">=</span><span class="string">"</span><span class="string">bar</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><a4j:actionparam</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">gs</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">none</span><span class="string">"</span><span class="normal"> </span><span class="type">assignTo</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{tbBean.groupSeparator}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></a4j:commandLink></span>
+<span class="normal"> </span><span class="keyword"></h:panelGrid></span>
+<span class="normal"> </span><span class="keyword"></rich:panel></span>
+<span class="normal"> </span><span class="keyword"><rich:panel></span>
+<span class="normal"> </span><span class="keyword"><h:panelGrid</span><span class="normal"> </span><span class="type">columns</span><span class="symbol">=</span><span class="string">"</span><span class="string">8</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Group Item Separator:</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"><a4j:commandLink</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Line</span><span class="string">"</span><span class="normal"> </span><span class="type">reRender</span><span class="symbol">=</span><span class="string">"</span><span class="string">bar</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><a4j:actionparam</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">gs</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">line</span><span class="string">"</span><span class="normal"> </span><span class="type">assignTo</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{tbBean.groupItemSeparator}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></a4j:commandLink></span>
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"><a4j:commandLink</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Grid</span><span class="string">"</span><span class="normal"> </span><span class="type">reRender</span><span class="symbol">=</span><span class="string">"</span><span class="string">bar</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><a4j:actionparam</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">gs</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">grid</span><span class="string">"</span><span class="normal"> </span><span class="type">assignTo</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{tbBean.groupItemSeparator}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></a4j:commandLink></span>
+
+<span class="normal"> </span><span class="keyword"><a4j:commandLink</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Disc</span><span class="string">"</span><span class="normal"> </span><span class="type">reRender</span><span class="symbol">=</span><span class="string">"</span><span class="string">bar</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><a4j:actionparam</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">gs</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">disc</span><span class="string">"</span><span class="normal"> </span><span class="type">assignTo</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{tbBean.groupItemSeparator}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></a4j:commandLink></span>
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"><a4j:commandLink</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Square</span><span class="string">"</span><span class="normal"> </span><span class="type">reRender</span><span class="symbol">=</span><span class="string">"</span><span class="string">bar</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><a4j:actionparam</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">gs</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">square</span><span class="string">"</span><span class="normal"> </span><span class="type">assignTo</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{tbBean.groupItemSeparator}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></a4j:commandLink></span>
+<span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"><a4j:commandLink</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">None</span><span class="string">"</span><span class="normal"> </span><span class="type">reRender</span><span class="symbol">=</span><span class="string">"</span><span class="string">bar</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><a4j:actionparam</span><span class="normal"> </span><span class="type">name</span><span class="symbol">=</span><span class="string">"</span><span class="string">gs</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">none</span><span class="string">"</span><span class="normal"> </span><span class="type">assignTo</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{tbBean.groupItemSeparator}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></a4j:commandLink></span>
+<span class="normal"> </span><span class="keyword"></h:panelGrid></span>
+<span class="normal"> </span><span class="keyword"></rich:panel></span>
+<span class="normal"> </span><span class="keyword"></h:panelGrid></span><span class="normal"> </span>
+<span class="normal"> </span><span class="keyword"></h:form></span><span class="normal"> </span>
+
+<span class="normal"> </span><span class="keyword"><rich:toolBar</span><span class="normal"> </span><span class="type">id</span><span class="symbol">=</span><span class="string">"</span><span class="string">bar</span><span class="string">"</span><span class="normal"> </span><span class="type">height</span><span class="symbol">=</span><span class="string">"</span><span class="string">30</span><span class="string">"</span><span class="normal"> </span><span class="type">itemSeparator</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{tbBean.groupSeparator}</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:toolBarGroup</span><span class="normal"> </span><span class="type">itemSeparator</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{tbBean.groupItemSeparator}</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Group1.1</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></h:outputText></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Group1.2</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></h:outputText></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Group1.3</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></h:outputText></span>
+<span class="normal"> </span><span class="keyword"></rich:toolBarGroup></span>
+<span class="normal"> </span><span class="keyword"><rich:toolBarGroup</span><span class="normal"> </span><span class="type">itemSeparator</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{tbBean.groupItemSeparator}</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Group2.1</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></h:outputText></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Group2.2</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></h:outputText></span>
+<span class="normal"> </span><span class="keyword"></rich:toolBarGroup></span>
+<span class="normal"> </span><span class="keyword"><rich:toolBarGroup</span><span class="normal"> </span><span class="type">location</span><span class="symbol">=</span><span class="string">"</span><span class="string">right</span><span class="string">"</span><span class="normal"> </span><span class="type">itemSeparator</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{tbBean.groupItemSeparator}</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Group3.1</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></h:outputText></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">Group3.2</span><span class="string">"</span><span class="keyword">></span><span class="keyword"></h:outputText></span>
+<span class="normal"> </span><span class="keyword"></rich:toolBarGroup></span>
+<span class="normal"> </span><span class="keyword"></rich:toolBar></span>
+<span class="normal"> </span>
+<span class="keyword"></div></span>
+</tt></pre>
+</body>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/source/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/source/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/source/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,122 @@
+<div class="sample-container" >
+
+ <rich:toolBar height="26" itemSeparator="grid">
+ <rich:toolBarGroup>
+ <h:graphicImage value="/richfaces/toolBar/images/new.gif"></h:graphicImage>
+ <h:graphicImage value="/richfaces/toolBar/images/webapp_welcome.gif"></h:graphicImage>
+ <h:graphicImage value="/richfaces/toolBar/images/palette_edit.gif"></h:graphicImage>
+ </rich:toolBarGroup>
+ <rich:toolBarGroup>
+ <h:graphicImage value="/richfaces/toolBar/images/print_edit.gif"></h:graphicImage>
+ <h:graphicImage value="/richfaces/toolBar/images/print.gif"></h:graphicImage>
+ <h:graphicImage value="/richfaces/toolBar/images/print_preview.gif"></h:graphicImage>
+ </rich:toolBarGroup>
+ <rich:toolBarGroup location="right">
+ <h:graphicImage value="/richfaces/toolBar/images/yellow_lamp.gif"></h:graphicImage>
+ <h:graphicImage value="/richfaces/toolBar/images/timer_task.gif"></h:graphicImage>
+ </rich:toolBarGroup>
+ </rich:toolBar>
+
+</div>
+
+<div class="sample-container" >
+ <h:form>
+ <rich:toolBar height="34" itemSeparator="line">
+ <rich:toolBarGroup>
+ <h:graphicImage id="edit" value="/richfaces/toolBar/images/print_edit.gif"></h:graphicImage>
+ <h:outputLabel value="Edit" for="edit"></h:outputLabel>
+ </rich:toolBarGroup>
+ <rich:toolBarGroup>
+ <h:graphicImage id="print" value="/richfaces/toolBar/images/print.gif"></h:graphicImage>
+ <h:outputLabel value="Print" for="edit"></h:outputLabel>
+ </rich:toolBarGroup>
+ <rich:toolBarGroup>
+ <h:graphicImage id="preview" value="/richfaces/toolBar/images/print_preview.gif"></h:graphicImage>
+ <h:outputLabel value="Preview" for="preview"></h:outputLabel>
+ </rich:toolBarGroup>
+ <rich:toolBarGroup location="right">
+ <h:inputText styleClass="barsearch" />
+ <h:commandButton styleClass="barsearchbutton" onclick="return false;" value="Search" />
+ </rich:toolBarGroup>
+ </rich:toolBar>
+ </h:form>
+ </div>
+
+
+<p>
+ The items on the toolBar can be grouped with ability to define the separator
+ between the different group and between the member of the same group. The
+ "location" attribute set to "right" put the group to the right side of the panel.
+
+</p>
+<div class="sample-container" >
+ <h:form>
+ <h:panelGrid columns="2" width="100%">
+ <rich:panel>
+ <h:panelGrid columns="8">
+ <h:outputText value="Group Separator:" />
+ <a4j:commandLink value="Line" reRender="bar">
+ <a4j:actionparam name="gs" value="line" assignTo="#{tbBean.groupSeparator}" />
+ </a4j:commandLink>
+
+ <a4j:commandLink value="Grid" reRender="bar">
+ <a4j:actionparam name="gs" value="grid" assignTo="#{tbBean.groupSeparator}" />
+ </a4j:commandLink>
+
+ <a4j:commandLink value="Disc" reRender="bar">
+ <a4j:actionparam name="gs" value="disc" assignTo="#{tbBean.groupSeparator}" />
+ </a4j:commandLink>
+
+ <a4j:commandLink value="Square" reRender="bar">
+ <a4j:actionparam name="gs" value="square" assignTo="#{tbBean.groupSeparator}" />
+ </a4j:commandLink>
+
+ <a4j:commandLink value="None" reRender="bar">
+ <a4j:actionparam name="gs" value="none" assignTo="#{tbBean.groupSeparator}" />
+ </a4j:commandLink>
+ </h:panelGrid>
+ </rich:panel>
+ <rich:panel>
+ <h:panelGrid columns="8">
+ <h:outputText value="Group Item Separator:" />
+ <a4j:commandLink value="Line" reRender="bar">
+ <a4j:actionparam name="gs" value="line" assignTo="#{tbBean.groupItemSeparator}" />
+ </a4j:commandLink>
+
+ <a4j:commandLink value="Grid" reRender="bar">
+ <a4j:actionparam name="gs" value="grid" assignTo="#{tbBean.groupItemSeparator}" />
+ </a4j:commandLink>
+
+ <a4j:commandLink value="Disc" reRender="bar">
+ <a4j:actionparam name="gs" value="disc" assignTo="#{tbBean.groupItemSeparator}" />
+ </a4j:commandLink>
+
+ <a4j:commandLink value="Square" reRender="bar">
+ <a4j:actionparam name="gs" value="square" assignTo="#{tbBean.groupItemSeparator}" />
+ </a4j:commandLink>
+
+ <a4j:commandLink value="None" reRender="bar">
+ <a4j:actionparam name="gs" value="none" assignTo="#{tbBean.groupItemSeparator}" />
+ </a4j:commandLink>
+ </h:panelGrid>
+ </rich:panel>
+ </h:panelGrid>
+ </h:form>
+
+ <rich:toolBar id="bar" height="30" itemSeparator="#{tbBean.groupSeparator}">
+ <rich:toolBarGroup itemSeparator="#{tbBean.groupItemSeparator}">
+ <h:outputText value="Group1.1"></h:outputText>
+ <h:outputText value="Group1.2"></h:outputText>
+ <h:outputText value="Group1.3"></h:outputText>
+ </rich:toolBarGroup>
+ <rich:toolBarGroup itemSeparator="#{tbBean.groupItemSeparator}">
+ <h:outputText value="Group2.1"></h:outputText>
+ <h:outputText value="Group2.2"></h:outputText>
+ </rich:toolBarGroup>
+ <rich:toolBarGroup location="right" itemSeparator="#{tbBean.groupItemSeparator}">
+ <h:outputText value="Group3.1"></h:outputText>
+ <h:outputText value="Group3.2"></h:outputText>
+ </rich:toolBarGroup>
+ </rich:toolBar>
+
+</div>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,157 @@
+<!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:a4j="https://ajax4jsf.dev.java.net/ajax"
+ xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+ <ui:composition template="/templates/component-sample.xhtml">
+ <ui:define name="sample">
+ <style>
+ .barsearch {
+ height:14px;
+ width:100px;
+ }
+ .barsearchbutton {
+ border-width:1px;
+ background-color:#{a4jSkin.generalBackgroundColor};
+ }
+ </style>
+ <p>
+ Toolbar is a horizontal-oriented panel that you can you for different
+ purpose such as top level menu, information panel, tools-like menu and so on.<br />
+ The following example shows how the panelBar might look like:
+ </p>
+
+ <div class="sample-container" >
+
+ <rich:toolBar height="26" itemSeparator="grid">
+ <rich:toolBarGroup>
+ <h:graphicImage value="/richfaces/toolBar/images/new.gif"></h:graphicImage>
+ <h:graphicImage value="/richfaces/toolBar/images/webapp_welcome.gif"></h:graphicImage>
+ <h:graphicImage value="/richfaces/toolBar/images/palette_edit.gif"></h:graphicImage>
+ </rich:toolBarGroup>
+ <rich:toolBarGroup>
+ <h:graphicImage value="/richfaces/toolBar/images/print_edit.gif"></h:graphicImage>
+ <h:graphicImage value="/richfaces/toolBar/images/print.gif"></h:graphicImage>
+ <h:graphicImage value="/richfaces/toolBar/images/print_preview.gif"></h:graphicImage>
+ </rich:toolBarGroup>
+ <rich:toolBarGroup location="right">
+ <h:graphicImage value="/richfaces/toolBar/images/yellow_lamp.gif"></h:graphicImage>
+ <h:graphicImage value="/richfaces/toolBar/images/timer_task.gif"></h:graphicImage>
+ </rich:toolBarGroup>
+ </rich:toolBar>
+
+ </div>
+
+ <div class="sample-container" >
+ <h:form>
+ <rich:toolBar height="34" itemSeparator="line">
+ <rich:toolBarGroup>
+ <h:graphicImage id="edit" value="/richfaces/toolBar/images/print_edit.gif"></h:graphicImage>
+ <h:outputLabel value="Edit" for="edit"></h:outputLabel>
+ </rich:toolBarGroup>
+ <rich:toolBarGroup>
+ <h:graphicImage id="print" value="/richfaces/toolBar/images/print.gif"></h:graphicImage>
+ <h:outputLabel value="Print" for="edit"></h:outputLabel>
+ </rich:toolBarGroup>
+ <rich:toolBarGroup>
+ <h:graphicImage id="preview" value="/richfaces/toolBar/images/print_preview.gif"></h:graphicImage>
+ <h:outputLabel value="Preview" for="preview"></h:outputLabel>
+ </rich:toolBarGroup>
+ <rich:toolBarGroup location="right">
+ <h:inputText styleClass="barsearch" />
+ <h:commandButton styleClass="barsearchbutton" onclick="return false;" value="Search" />
+ </rich:toolBarGroup>
+ </rich:toolBar>
+ </h:form>
+ </div>
+
+
+ <p>
+ The items on the toolBar can be grouped with ability to define the separator
+ between the different group and between the member of the same group. The
+ "location" attribute set to "right" put the group to the right side of the panel.
+
+ </p>
+ <div class="sample-container" >
+ <h:form>
+ <h:panelGrid columns="2" width="100%">
+ <rich:panel>
+ <h:panelGrid columns="8">
+ <h:outputText value="Group Separator:" />
+ <a4j:commandLink value="Line" reRender="bar">
+ <a4j:actionparam name="gs" value="line" assignTo="#{tbBean.groupSeparator}" />
+ </a4j:commandLink>
+
+ <a4j:commandLink value="Grid" reRender="bar">
+ <a4j:actionparam name="gs" value="grid" assignTo="#{tbBean.groupSeparator}" />
+ </a4j:commandLink>
+
+ <a4j:commandLink value="Disc" reRender="bar">
+ <a4j:actionparam name="gs" value="disc" assignTo="#{tbBean.groupSeparator}" />
+ </a4j:commandLink>
+
+ <a4j:commandLink value="Square" reRender="bar">
+ <a4j:actionparam name="gs" value="square" assignTo="#{tbBean.groupSeparator}" />
+ </a4j:commandLink>
+
+ <a4j:commandLink value="None" reRender="bar">
+ <a4j:actionparam name="gs" value="none" assignTo="#{tbBean.groupSeparator}" />
+ </a4j:commandLink>
+ </h:panelGrid>
+ </rich:panel>
+ <rich:panel>
+ <h:panelGrid columns="8">
+ <h:outputText value="Group Item Separator:" />
+ <a4j:commandLink value="Line" reRender="bar">
+ <a4j:actionparam name="gs" value="line" assignTo="#{tbBean.groupItemSeparator}" />
+ </a4j:commandLink>
+
+ <a4j:commandLink value="Grid" reRender="bar">
+ <a4j:actionparam name="gs" value="grid" assignTo="#{tbBean.groupItemSeparator}" />
+ </a4j:commandLink>
+
+ <a4j:commandLink value="Disc" reRender="bar">
+ <a4j:actionparam name="gs" value="disc" assignTo="#{tbBean.groupItemSeparator}" />
+ </a4j:commandLink>
+
+ <a4j:commandLink value="Square" reRender="bar">
+ <a4j:actionparam name="gs" value="square" assignTo="#{tbBean.groupItemSeparator}" />
+ </a4j:commandLink>
+
+ <a4j:commandLink value="None" reRender="bar">
+ <a4j:actionparam name="gs" value="none" assignTo="#{tbBean.groupItemSeparator}" />
+ </a4j:commandLink>
+ </h:panelGrid>
+ </rich:panel>
+ </h:panelGrid>
+ </h:form>
+
+ <rich:toolBar id="bar" height="30" itemSeparator="#{tbBean.groupSeparator}">
+ <rich:toolBarGroup itemSeparator="#{tbBean.groupItemSeparator}">
+ <h:outputText value="Group1.1"></h:outputText>
+ <h:outputText value="Group1.2"></h:outputText>
+ <h:outputText value="Group1.3"></h:outputText>
+ </rich:toolBarGroup>
+ <rich:toolBarGroup itemSeparator="#{tbBean.groupItemSeparator}">
+ <h:outputText value="Group2.1"></h:outputText>
+ <h:outputText value="Group2.2"></h:outputText>
+ </rich:toolBarGroup>
+ <rich:toolBarGroup location="right" itemSeparator="#{tbBean.groupItemSeparator}">
+ <h:outputText value="Group3.1"></h:outputText>
+ <h:outputText value="Group3.2"></h:outputText>
+ </rich:toolBarGroup>
+ </rich:toolBar>
+
+ </div>
+
+ </ui:define>
+ <ui:define name="sources">
+ <p>
+ Here is fragment of page sources for given example:
+ </p>
+ <iframe src="${facesContext.externalContext.requestContextPath}/richfaces/toolBar/source/usage.html" class="source_frame"/>
+ </ui:define>
+ </ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/toolBar.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,19 @@
+<!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">
+
+<ui:composition template="/templates/main.xhtml">
+ <ui:define name="title">RichFaces - Open Source Rich JSF Components - PanelBar</ui:define>
+ <ui:define name="current">panel</ui:define>
+ <ui:define name="body">
+ <rich:tabPanel switchType="server" styleClass="top_tab" contentClass="content_tab" inactiveTabClass="inactive_tab" activeTabClass="active_tab">
+ <rich:tab label="Usage">
+ <ui:include src="/richfaces/toolBar/usage.xhtml"/>
+ </rich:tab>
+ </rich:tabPanel>
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tree/source/usage.html
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tree/source/usage.html (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tree/source/usage.html 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,515 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
+ "http://www.w3.org/TR/REC-html40/strict.dtd">
+<html>
+<head>
+<meta http-equiv="Content-Type"
+content="text/html; charset=iso-8859-1">
+<meta name="GENERATOR" content="GNU source-highlight 2.1.2
+by Lorenzo Bettini
+http://www.lorenzobettini.it
+http://www.gnu.org/software/src-highlite">
+<title>usage.xhtml</title>
+<link rel="stylesheet" href="../../../css/xhtml-source.css" type="text/css">
+</head>
+<body>
+<pre><tt><span class="keyword"><h:form></span>
+<span class="keyword"><div</span><span class="normal"> </span><span class="type">class</span><span class="symbol">=</span><span class="string">"</span><span class="string">sample-container</span><span class="string">"</span><span class="normal"> </span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><p></span><span class="normal">This tree uses "ajax" switch type, note that for collapse/expand operations it will be Ajax request to the server. You may see short delay in this case.</span><span class="keyword"></p></span>
+<span class="normal"> </span><span class="keyword"><rich:tree</span><span class="normal"> </span><span class="type">style</span><span class="symbol">=</span><span class="string">"</span><span class="string">width:300px</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{library.data}</span><span class="string">"</span><span class="normal"> </span><span class="type">var</span><span class="symbol">=</span><span class="string">"</span><span class="string">item</span><span class="string">"</span><span class="normal"> </span><span class="type">nodeFace</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{item.type}</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:treeNode</span><span class="normal"> </span><span class="type">type</span><span class="symbol">=</span><span class="string">"</span><span class="string">library</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{item.type}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:treeNode></span>
+<span class="normal"> </span><span class="keyword"><rich:treeNode</span><span class="normal"> </span><span class="type">type</span><span class="symbol">=</span><span class="string">"</span><span class="string">artist</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{item.name}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:treeNode></span>
+<span class="normal"> </span><span class="keyword"><rich:treeNode</span><span class="normal"> </span><span class="type">type</span><span class="symbol">=</span><span class="string">"</span><span class="string">album</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{item.title}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:treeNode></span>
+<span class="normal"> </span><span class="keyword"><rich:treeNode</span><span class="normal"> </span><span class="type">type</span><span class="symbol">=</span><span class="string">"</span><span class="string">song</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{item.title}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:treeNode></span>
+<span class="normal"> </span><span class="keyword"></rich:tree></span>
+<span class="keyword"></div></span>
+<span class="keyword"><div</span><span class="normal"> </span><span class="type">class</span><span class="symbol">=</span><span class="string">"</span><span class="string">sample-container</span><span class="string">"</span><span class="normal"> </span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><p></span><span class="normal">This is exactly the same tree, but now it uses "client" switch type. Note, that all nodes actually rendered up-front and expand/collapse now do not requre server call</span><span class="keyword"></p></span>
+<span class="normal"> </span><span class="keyword"><rich:tree</span><span class="normal"> </span><span class="type">switchType</span><span class="symbol">=</span><span class="string">"</span><span class="string">client</span><span class="string">"</span><span class="normal"> </span><span class="type">style</span><span class="symbol">=</span><span class="string">"</span><span class="string">width:300px</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{library.data}</span><span class="string">"</span><span class="normal"> </span><span class="type">var</span><span class="symbol">=</span><span class="string">"</span><span class="string">item</span><span class="string">"</span><span class="normal"> </span><span class="type">nodeFace</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{item.type}</span><span class="stri!
ng">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:treeNode</span><span class="normal"> </span><span class="type">type</span><span class="symbol">=</span><span class="string">"</span><span class="string">library</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{item.type}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:treeNode></span>
+<span class="normal"> </span><span class="keyword"><rich:treeNode</span><span class="normal"> </span><span class="type">type</span><span class="symbol">=</span><span class="string">"</span><span class="string">artist</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{item.name}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:treeNode></span>
+<span class="normal"> </span><span class="keyword"><rich:treeNode</span><span class="normal"> </span><span class="type">type</span><span class="symbol">=</span><span class="string">"</span><span class="string">album</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{item.title}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:treeNode></span>
+<span class="normal"> </span><span class="keyword"><rich:treeNode</span><span class="normal"> </span><span class="type">type</span><span class="symbol">=</span><span class="string">"</span><span class="string">song</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{item.title}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:treeNode></span>
+<span class="normal"> </span><span class="keyword"></rich:tree></span>
+<span class="keyword"></div></span>
+<span class="keyword"><div</span><span class="normal"> </span><span class="type">class</span><span class="symbol">=</span><span class="string">"</span><span class="string">sample-container</span><span class="string">"</span><span class="normal"> </span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><p></span><span class="normal">This is again same tree, but now it uses "server" switch type. Full page content will be reloaded at every click.</span><span class="keyword"></p></span>
+<span class="normal"> </span><span class="keyword"><rich:tree</span><span class="normal"> </span><span class="type">switchType</span><span class="symbol">=</span><span class="string">"</span><span class="string">server</span><span class="string">"</span><span class="normal"> </span><span class="type">style</span><span class="symbol">=</span><span class="string">"</span><span class="string">width:300px</span><span class="string">"</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{library.data}</span><span class="string">"</span><span class="normal"> </span><span class="type">var</span><span class="symbol">=</span><span class="string">"</span><span class="string">item</span><span class="string">"</span><span class="normal"> </span><span class="type">nodeFace</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{item.type}</span><span class="stri!
ng">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><rich:treeNode</span><span class="normal"> </span><span class="type">type</span><span class="symbol">=</span><span class="string">"</span><span class="string">library</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{item.type}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:treeNode></span>
+<span class="normal"> </span><span class="keyword"><rich:treeNode</span><span class="normal"> </span><span class="type">type</span><span class="symbol">=</span><span class="string">"</span><span class="string">artist</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{item.name}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:treeNode></span>
+<span class="normal"> </span><span class="keyword"><rich:treeNode</span><span class="normal"> </span><span class="type">type</span><span class="symbol">=</span><span class="string">"</span><span class="string">album</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{item.title}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:treeNode></span>
+<span class="normal"> </span><span class="keyword"><rich:treeNode</span><span class="normal"> </span><span class="type">type</span><span class="symbol">=</span><span class="string">"</span><span class="string">song</span><span class="string">"</span><span class="keyword">></span>
+<span class="normal"> </span><span class="keyword"><h:outputText</span><span class="normal"> </span><span class="type">value</span><span class="symbol">=</span><span class="string">"</span><span class="string">#{item.title}</span><span class="string">"</span><span class="normal"> </span><span class="keyword">/></span>
+<span class="normal"> </span><span class="keyword"></rich:treeNode></span>
+<span class="normal"> </span><span class="keyword"></rich:tree></span>
+<span class="keyword"></div></span>
+<span class="keyword"></h:form></span>
+
+
+<span class="normal">....</span>
+<span class="normal">Library.java:</span>
+
+<span class="normal">ackage org.richfaces.demo.tree;</span>
+
+<span class="normal">import java.io.ByteArrayOutputStream;</span>
+<span class="normal">import java.io.IOException;</span>
+<span class="normal">import java.io.InputStream;</span>
+<span class="normal">import java.util.HashMap;</span>
+<span class="normal">import java.util.Iterator;</span>
+<span class="normal">import java.util.Map;</span>
+<span class="normal">import java.util.StringTokenizer;</span>
+
+<span class="normal">import org.richfaces.component.TreeNode;</span>
+
+<span class="normal">public class Library implements TreeNode {</span>
+<span class="normal"> /**</span>
+<span class="normal"> * </span>
+<span class="normal"> */</span>
+<span class="normal"> private static final long serialVersionUID = -3530085227471752526L;</span>
+<span class="normal"> private Map artists = null;</span>
+<span class="normal"> private Object state1;</span>
+<span class="normal"> private Object state2;</span>
+
+<span class="normal"> private Map getArtists() {</span>
+<span class="normal"> if (this.artists==null) {</span>
+<span class="normal"> initData();</span>
+<span class="normal"> }</span>
+<span class="normal"> return this.artists;</span>
+<span class="normal"> }</span>
+<span class="normal"> public void addArtist(Artist artist) {</span>
+<span class="normal"> addChild(Long.toString(artist.getId()), artist);</span>
+<span class="normal"> artist.setParent(this);</span>
+<span class="normal"> }</span>
+<span class="normal"> </span>
+<span class="normal"> public void addChild(Object identifier, TreeNode child) {</span>
+<span class="normal"> getArtists().put(identifier, child);</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public TreeNode getChild(Object id) {</span>
+<span class="normal"> return (TreeNode) getArtists().get(id);</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public Iterator getChildren() {</span>
+<span class="normal"> return getArtists().entrySet().iterator();</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public Object getData() {</span>
+<span class="normal"> return this;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public TreeNode getParent() {</span>
+<span class="normal"> return null;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public boolean isLeaf() {</span>
+<span class="normal"> return getArtists().isEmpty();</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void removeChild(Object id) {</span>
+<span class="normal"> getArtists().remove(id);</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setData(Object data) {</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setParent(TreeNode parent) {</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public String getType() {</span>
+<span class="normal"> return "library";</span>
+<span class="normal"> }</span>
+<span class="normal"> </span>
+<span class="normal"> </span>
+<span class="normal"> private long nextId = 0;</span>
+<span class="normal"> private long getNextId() {</span>
+<span class="normal"> return nextId++;</span>
+<span class="normal"> }</span>
+<span class="normal"> private Map albumCache = new HashMap();</span>
+<span class="normal"> private Map artistCache = new HashMap();</span>
+<span class="normal"> private Artist getArtistByName(String name, Library library) {</span>
+<span class="normal"> Artist artist = (Artist)artistCache.get(name);</span>
+<span class="normal"> if (artist==null) {</span>
+<span class="normal"> artist = new Artist(getNextId());</span>
+<span class="normal"> artist.setName(name);</span>
+<span class="normal"> artistCache.put(name, artist);</span>
+<span class="normal"> library.addArtist(artist);</span>
+<span class="normal"> }</span>
+<span class="normal"> return artist;</span>
+<span class="normal"> }</span>
+<span class="normal"> private Album getAlbumByTitle(String title, Artist artist) {</span>
+<span class="normal"> Album album = (Album)albumCache.get(title);</span>
+<span class="normal"> if (album==null) {</span>
+<span class="normal"> album = new Album(getNextId());</span>
+<span class="normal"> album.setTitle(title);</span>
+<span class="normal"> albumCache.put(title, album);</span>
+<span class="normal"> artist.addAlbum(album);</span>
+<span class="normal"> }</span>
+<span class="normal"> return album;</span>
+<span class="normal"> }</span>
+<span class="normal"> </span>
+<span class="normal"> private void initData() {</span>
+<span class="normal"> artists = new HashMap();</span>
+<span class="normal"> InputStream is = this.getClass().getClassLoader().getResourceAsStream("org/richfaces/demo/tree/data.txt");</span>
+<span class="normal"> ByteArrayOutputStream os = new ByteArrayOutputStream();</span>
+<span class="normal"> byte[] rb = new byte[1024];</span>
+<span class="normal"> int read;</span>
+<span class="normal"> try {</span>
+<span class="normal"> do {</span>
+<span class="normal"> read = is.read(rb);</span>
+<span class="normal"> if (read>0) {</span>
+<span class="normal"> os.write(rb, 0, read);</span>
+<span class="normal"> }</span>
+<span class="normal"> } while (read>0);</span>
+<span class="normal"> String buf = os.toString();</span>
+<span class="normal"> StringTokenizer toc1 = new StringTokenizer(buf,"\n");</span>
+<span class="normal"> while (toc1.hasMoreTokens()) {</span>
+<span class="normal"> String str = toc1.nextToken();</span>
+<span class="normal"> StringTokenizer toc2 = new StringTokenizer(str, "\t");</span>
+<span class="normal"> String songTitle = toc2.nextToken();</span>
+<span class="normal"> String artistName = toc2.nextToken();</span>
+<span class="normal"> String albumTitle = toc2.nextToken();</span>
+<span class="normal"> toc2.nextToken();</span>
+<span class="normal"> toc2.nextToken();</span>
+<span class="normal"> String albumYear = toc2.nextToken();</span>
+<span class="normal"> Artist artist = getArtistByName(artistName,this);</span>
+<span class="normal"> Album album = getAlbumByTitle(albumTitle, artist);</span>
+<span class="normal"> album.setYear(new Integer(albumYear));</span>
+<span class="normal"> Song song = new Song(getNextId());</span>
+<span class="normal"> song.setTitle(songTitle);</span>
+<span class="normal"> album.addSong(song);</span>
+<span class="normal"> }</span>
+<span class="normal"> } catch (IOException e) {</span>
+<span class="normal"> throw new RuntimeException(e);</span>
+<span class="normal"> }</span>
+<span class="normal"> }</span>
+<span class="normal"> public Object getState1() {</span>
+<span class="normal"> return state1;</span>
+<span class="normal"> }</span>
+<span class="normal"> public void setState1(Object state1) {</span>
+<span class="normal"> this.state1 = state1;</span>
+<span class="normal"> }</span>
+<span class="normal"> public Object getState2() {</span>
+<span class="normal"> return state2;</span>
+<span class="normal"> }</span>
+<span class="normal"> public void setState2(Object state2) {</span>
+<span class="normal"> this.state2 = state2;</span>
+<span class="normal"> }</span>
+<span class="normal">}</span>
+
+<span class="normal">...</span>
+
+<span class="normal">Album.java:</span>
+
+<span class="normal">package org.richfaces.demo.tree;</span>
+
+<span class="normal">import java.util.HashMap;</span>
+<span class="normal">import java.util.Iterator;</span>
+<span class="normal">import java.util.Map;</span>
+
+<span class="normal">import org.richfaces.component.TreeNode;</span>
+
+<span class="normal">public class Album implements TreeNode {</span>
+<span class="normal"> /**</span>
+<span class="normal"> * </span>
+<span class="normal"> */</span>
+<span class="normal"> private static final long serialVersionUID = 6514596192023597908L;</span>
+<span class="normal"> private long id;</span>
+<span class="normal"> private Map songs = new HashMap();</span>
+<span class="normal"> private String title;</span>
+<span class="normal"> private Integer year;</span>
+<span class="normal"> private Artist artist;</span>
+
+<span class="normal"> public Album(long id) {</span>
+<span class="normal"> this.id = id;</span>
+<span class="normal"> }</span>
+<span class="normal"> </span>
+<span class="normal"> public void addSong(Song song) {</span>
+<span class="normal"> addChild(Long.toString(song.getId()), song);</span>
+<span class="normal"> song.setParent(this);</span>
+<span class="normal"> }</span>
+<span class="normal"> public void addChild(Object identifier, TreeNode child) {</span>
+<span class="normal"> songs.put(identifier, child);</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public TreeNode getChild(Object id) {</span>
+<span class="normal"> return (TreeNode) songs.get(id);</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public Iterator getChildren() {</span>
+<span class="normal"> return songs.entrySet().iterator();</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public Object getData() {</span>
+<span class="normal"> return this;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public TreeNode getParent() {</span>
+<span class="normal"> return artist;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public boolean isLeaf() {</span>
+<span class="normal"> return songs.isEmpty();</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void removeChild(Object id) {</span>
+<span class="normal"> songs.remove(id);</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setData(Object data) {</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setParent(TreeNode parent) {</span>
+<span class="normal"> this.artist = (Artist) parent;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public String getTitle() {</span>
+<span class="normal"> return title;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setTitle(String title) {</span>
+<span class="normal"> this.title = title;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public Integer getYear() {</span>
+<span class="normal"> return year;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setYear(Integer year) {</span>
+<span class="normal"> this.year = year;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public long getId() {</span>
+<span class="normal"> return id;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public Artist getArtist() {</span>
+<span class="normal"> return artist;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setArtist(Artist artist) {</span>
+<span class="normal"> this.artist = artist;</span>
+<span class="normal"> }</span>
+<span class="normal"> </span>
+<span class="normal"> public String getType() {</span>
+<span class="normal"> return "album";</span>
+<span class="normal"> }</span>
+<span class="normal"> </span>
+
+<span class="normal">}</span>
+
+<span class="normal">.....</span>
+
+<span class="normal">Artist.java:</span>
+
+<span class="normal">package org.richfaces.demo.tree;</span>
+
+<span class="normal">import java.util.HashMap;</span>
+<span class="normal">import java.util.Iterator;</span>
+<span class="normal">import java.util.Map;</span>
+
+<span class="normal">import org.richfaces.component.TreeNode;</span>
+
+<span class="normal">public class Artist implements TreeNode {</span>
+<span class="normal"> private long id;</span>
+<span class="normal"> private Map albums = new HashMap();</span>
+<span class="normal"> private String name;</span>
+<span class="normal"> private Library library;</span>
+<span class="normal"> </span>
+
+<span class="normal"> /**</span>
+<span class="normal"> * </span>
+<span class="normal"> */</span>
+<span class="normal"> private static final long serialVersionUID = 6831863694596474846L;</span>
+
+<span class="normal"> public Artist(long id) {</span>
+<span class="normal"> this.id = id;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void addAlbum(Album album) {</span>
+<span class="normal"> addChild(Long.toString(album.getId()), album);</span>
+<span class="normal"> album.setParent(this);</span>
+<span class="normal"> }</span>
+<span class="normal"> </span>
+<span class="normal"> public void addChild(Object identifier, TreeNode child) {</span>
+<span class="normal"> albums.put(identifier, child);</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public TreeNode getChild(Object id) {</span>
+<span class="normal"> return (TreeNode) albums.get(id);</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public Iterator getChildren() {</span>
+<span class="normal"> return albums.entrySet().iterator();</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public Object getData() {</span>
+<span class="normal"> return this;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public TreeNode getParent() {</span>
+<span class="normal"> return library;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public boolean isLeaf() {</span>
+<span class="normal"> return albums.isEmpty();</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void removeChild(Object id) {</span>
+<span class="normal"> albums.remove(id);</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setData(Object data) {</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setParent(TreeNode parent) {</span>
+<span class="normal"> library = (Library) parent;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public long getId() {</span>
+<span class="normal"> return id;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public String getName() {</span>
+<span class="normal"> return name;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setName(String name) {</span>
+<span class="normal"> this.name = name;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public Library getLibrary() {</span>
+<span class="normal"> return library;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setLibrary(Library library) {</span>
+<span class="normal"> this.library = library;</span>
+<span class="normal"> }</span>
+<span class="normal"> public String getType() {</span>
+<span class="normal"> return "artist";</span>
+<span class="normal"> }</span>
+<span class="normal">}</span>
+
+<span class="normal">....</span>
+<span class="normal">Song.java:</span>
+
+<span class="normal">package org.richfaces.demo.tree;</span>
+
+<span class="normal">import java.util.ArrayList;</span>
+<span class="normal">import java.util.Iterator;</span>
+
+<span class="normal">import org.richfaces.component.TreeNode;</span>
+
+<span class="normal">public class Song implements TreeNode {</span>
+<span class="normal"> /**</span>
+<span class="normal"> * </span>
+<span class="normal"> */</span>
+<span class="normal"> private static final long serialVersionUID = 7155620465939481885L;</span>
+<span class="normal"> private long id;</span>
+<span class="normal"> private String title;</span>
+<span class="normal"> private String genre;</span>
+<span class="normal"> private int trackNumber;</span>
+<span class="normal"> private Album album;</span>
+
+<span class="normal"> public Song(long id) {</span>
+<span class="normal"> this.id = id;</span>
+<span class="normal"> }</span>
+<span class="normal"> </span>
+<span class="normal"> public void addChild(Object identifier, TreeNode child) {</span>
+<span class="normal"> throw new UnsupportedOperationException("Songs do not have children");</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public TreeNode getChild(Object id) {</span>
+<span class="normal"> throw new UnsupportedOperationException("Songs do not have children");</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public Iterator getChildren() {</span>
+<span class="normal"> // TODO: Fix me!</span>
+<span class="normal"> return new ArrayList().iterator(); // work around limitation for TreeNode</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public Object getData() {</span>
+<span class="normal"> return this;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public TreeNode getParent() {</span>
+<span class="normal"> return album;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public boolean isLeaf() {</span>
+<span class="normal"> return true;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void removeChild(Object id) {</span>
+<span class="normal"> throw new UnsupportedOperationException("Songs do not have children");</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setData(Object data) {</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setParent(TreeNode parent) {</span>
+<span class="normal"> this.album = (Album) parent;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public Album getAlbum() {</span>
+<span class="normal"> return album;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setAlbum(Album album) {</span>
+<span class="normal"> this.album = album;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public String getGenre() {</span>
+<span class="normal"> return genre;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setGenre(String genre) {</span>
+<span class="normal"> this.genre = genre;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public String getTitle() {</span>
+<span class="normal"> return title;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setTitle(String title) {</span>
+<span class="normal"> this.title = title;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public int getTrackNumber() {</span>
+<span class="normal"> return trackNumber;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public void setTrackNumber(int trackNumber) {</span>
+<span class="normal"> this.trackNumber = trackNumber;</span>
+<span class="normal"> }</span>
+
+<span class="normal"> public long getId() {</span>
+<span class="normal"> return id;</span>
+<span class="normal"> }</span>
+<span class="normal"> public String getType() {</span>
+<span class="normal"> return "song";</span>
+<span class="normal"> }</span>
+<span class="normal">}</span>
+</tt></pre>
+</body>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tree/source/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tree/source/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tree/source/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,498 @@
+<h:form>
+<div class="sample-container" >
+ <p>This tree uses "ajax" switch type, note that for collapse/expand operations it will be Ajax request to the server. You may see short delay in this case.</p>
+ <rich:tree style="width:300px" value="#{library.data}" var="item" nodeFace="#{item.type}">
+ <rich:treeNode type="library">
+ <h:outputText value="#{item.type}" />
+ </rich:treeNode>
+ <rich:treeNode type="artist">
+ <h:outputText value="#{item.name}" />
+ </rich:treeNode>
+ <rich:treeNode type="album">
+ <h:outputText value="#{item.title}" />
+ </rich:treeNode>
+ <rich:treeNode type="song">
+ <h:outputText value="#{item.title}" />
+ </rich:treeNode>
+ </rich:tree>
+</div>
+<div class="sample-container" >
+ <p>This is exactly the same tree, but now it uses "client" switch type. Note, that all nodes actually rendered up-front and expand/collapse now do not requre server call</p>
+ <rich:tree switchType="client" style="width:300px" value="#{library.data}" var="item" nodeFace="#{item.type}">
+ <rich:treeNode type="library">
+ <h:outputText value="#{item.type}" />
+ </rich:treeNode>
+ <rich:treeNode type="artist">
+ <h:outputText value="#{item.name}" />
+ </rich:treeNode>
+ <rich:treeNode type="album">
+ <h:outputText value="#{item.title}" />
+ </rich:treeNode>
+ <rich:treeNode type="song">
+ <h:outputText value="#{item.title}" />
+ </rich:treeNode>
+ </rich:tree>
+</div>
+<div class="sample-container" >
+ <p>This is again same tree, but now it uses "server" switch type. Full page content will be reloaded at every click.</p>
+ <rich:tree switchType="server" style="width:300px" value="#{library.data}" var="item" nodeFace="#{item.type}">
+ <rich:treeNode type="library">
+ <h:outputText value="#{item.type}" />
+ </rich:treeNode>
+ <rich:treeNode type="artist">
+ <h:outputText value="#{item.name}" />
+ </rich:treeNode>
+ <rich:treeNode type="album">
+ <h:outputText value="#{item.title}" />
+ </rich:treeNode>
+ <rich:treeNode type="song">
+ <h:outputText value="#{item.title}" />
+ </rich:treeNode>
+ </rich:tree>
+</div>
+</h:form>
+
+
+....
+Library.java:
+
+ackage org.richfaces.demo.tree;
+
+import java.io.ByteArrayOutputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+import java.util.StringTokenizer;
+
+import org.richfaces.component.TreeNode;
+
+public class Library implements TreeNode {
+ /**
+ *
+ */
+ private static final long serialVersionUID = -3530085227471752526L;
+ private Map artists = null;
+ private Object state1;
+ private Object state2;
+
+ private Map getArtists() {
+ if (this.artists==null) {
+ initData();
+ }
+ return this.artists;
+ }
+ public void addArtist(Artist artist) {
+ addChild(Long.toString(artist.getId()), artist);
+ artist.setParent(this);
+ }
+
+ public void addChild(Object identifier, TreeNode child) {
+ getArtists().put(identifier, child);
+ }
+
+ public TreeNode getChild(Object id) {
+ return (TreeNode) getArtists().get(id);
+ }
+
+ public Iterator getChildren() {
+ return getArtists().entrySet().iterator();
+ }
+
+ public Object getData() {
+ return this;
+ }
+
+ public TreeNode getParent() {
+ return null;
+ }
+
+ public boolean isLeaf() {
+ return getArtists().isEmpty();
+ }
+
+ public void removeChild(Object id) {
+ getArtists().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 albumCache = new HashMap();
+ private Map artistCache = new HashMap();
+ private Artist getArtistByName(String name, Library library) {
+ Artist artist = (Artist)artistCache.get(name);
+ if (artist==null) {
+ artist = new Artist(getNextId());
+ artist.setName(name);
+ artistCache.put(name, artist);
+ library.addArtist(artist);
+ }
+ return artist;
+ }
+ private Album getAlbumByTitle(String title, Artist artist) {
+ Album album = (Album)albumCache.get(title);
+ if (album==null) {
+ album = new Album(getNextId());
+ album.setTitle(title);
+ albumCache.put(title, album);
+ artist.addAlbum(album);
+ }
+ return album;
+ }
+
+ private void initData() {
+ artists = new HashMap();
+ InputStream is = this.getClass().getClassLoader().getResourceAsStream("org/richfaces/demo/tree/data.txt");
+ ByteArrayOutputStream os = new ByteArrayOutputStream();
+ byte[] rb = new byte[1024];
+ int read;
+ try {
+ do {
+ read = is.read(rb);
+ if (read>0) {
+ os.write(rb, 0, read);
+ }
+ } while (read>0);
+ String buf = os.toString();
+ StringTokenizer toc1 = new StringTokenizer(buf,"\n");
+ while (toc1.hasMoreTokens()) {
+ String str = toc1.nextToken();
+ StringTokenizer toc2 = new StringTokenizer(str, "\t");
+ String songTitle = toc2.nextToken();
+ String artistName = toc2.nextToken();
+ String albumTitle = toc2.nextToken();
+ toc2.nextToken();
+ toc2.nextToken();
+ String albumYear = toc2.nextToken();
+ Artist artist = getArtistByName(artistName,this);
+ Album album = getAlbumByTitle(albumTitle, artist);
+ album.setYear(new Integer(albumYear));
+ Song song = new Song(getNextId());
+ song.setTitle(songTitle);
+ album.addSong(song);
+ }
+ } catch (IOException e) {
+ throw new RuntimeException(e);
+ }
+ }
+ public Object getState1() {
+ return state1;
+ }
+ public void setState1(Object state1) {
+ this.state1 = state1;
+ }
+ public Object getState2() {
+ return state2;
+ }
+ public void setState2(Object state2) {
+ this.state2 = state2;
+ }
+}
+
+...
+
+Album.java:
+
+package org.richfaces.demo.tree;
+
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+
+import org.richfaces.component.TreeNode;
+
+public class Album implements TreeNode {
+ /**
+ *
+ */
+ private static final long serialVersionUID = 6514596192023597908L;
+ private long id;
+ private Map songs = new HashMap();
+ private String title;
+ private Integer year;
+ private Artist artist;
+
+ public Album(long id) {
+ this.id = id;
+ }
+
+ public void addSong(Song song) {
+ addChild(Long.toString(song.getId()), song);
+ song.setParent(this);
+ }
+ public void addChild(Object identifier, TreeNode child) {
+ songs.put(identifier, child);
+ }
+
+ public TreeNode getChild(Object id) {
+ return (TreeNode) songs.get(id);
+ }
+
+ public Iterator getChildren() {
+ return songs.entrySet().iterator();
+ }
+
+ public Object getData() {
+ return this;
+ }
+
+ public TreeNode getParent() {
+ return artist;
+ }
+
+ public boolean isLeaf() {
+ return songs.isEmpty();
+ }
+
+ public void removeChild(Object id) {
+ songs.remove(id);
+ }
+
+ public void setData(Object data) {
+ }
+
+ public void setParent(TreeNode parent) {
+ this.artist = (Artist) parent;
+ }
+
+ public String getTitle() {
+ return title;
+ }
+
+ public void setTitle(String title) {
+ this.title = title;
+ }
+
+ public Integer getYear() {
+ return year;
+ }
+
+ public void setYear(Integer year) {
+ this.year = year;
+ }
+
+ public long getId() {
+ return id;
+ }
+
+ public Artist getArtist() {
+ return artist;
+ }
+
+ public void setArtist(Artist artist) {
+ this.artist = artist;
+ }
+
+ public String getType() {
+ return "album";
+ }
+
+
+}
+
+.....
+
+Artist.java:
+
+package org.richfaces.demo.tree;
+
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.Map;
+
+import org.richfaces.component.TreeNode;
+
+public class Artist implements TreeNode {
+ private long id;
+ private Map albums = new HashMap();
+ private String name;
+ private Library library;
+
+
+ /**
+ *
+ */
+ private static final long serialVersionUID = 6831863694596474846L;
+
+ public Artist(long id) {
+ this.id = id;
+ }
+
+ public void addAlbum(Album album) {
+ addChild(Long.toString(album.getId()), album);
+ album.setParent(this);
+ }
+
+ public void addChild(Object identifier, TreeNode child) {
+ albums.put(identifier, child);
+ }
+
+ public TreeNode getChild(Object id) {
+ return (TreeNode) albums.get(id);
+ }
+
+ public Iterator getChildren() {
+ return albums.entrySet().iterator();
+ }
+
+ public Object getData() {
+ return this;
+ }
+
+ public TreeNode getParent() {
+ return library;
+ }
+
+ public boolean isLeaf() {
+ return albums.isEmpty();
+ }
+
+ public void removeChild(Object id) {
+ albums.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 "artist";
+ }
+}
+
+....
+Song.java:
+
+package org.richfaces.demo.tree;
+
+import java.util.ArrayList;
+import java.util.Iterator;
+
+import org.richfaces.component.TreeNode;
+
+public class Song implements TreeNode {
+ /**
+ *
+ */
+ private static final long serialVersionUID = 7155620465939481885L;
+ private long id;
+ private String title;
+ private String genre;
+ private int trackNumber;
+ private Album album;
+
+ public Song(long id) {
+ this.id = id;
+ }
+
+ public void addChild(Object identifier, TreeNode child) {
+ throw new UnsupportedOperationException("Songs do not have children");
+ }
+
+ public TreeNode getChild(Object id) {
+ throw new UnsupportedOperationException("Songs 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 album;
+ }
+
+ public boolean isLeaf() {
+ return true;
+ }
+
+ public void removeChild(Object id) {
+ throw new UnsupportedOperationException("Songs do not have children");
+ }
+
+ public void setData(Object data) {
+ }
+
+ public void setParent(TreeNode parent) {
+ this.album = (Album) parent;
+ }
+
+ public Album getAlbum() {
+ return album;
+ }
+
+ public void setAlbum(Album album) {
+ this.album = album;
+ }
+
+ public String getGenre() {
+ return genre;
+ }
+
+ public void setGenre(String genre) {
+ this.genre = genre;
+ }
+
+ public String getTitle() {
+ return title;
+ }
+
+ public void setTitle(String title) {
+ this.title = title;
+ }
+
+ public int getTrackNumber() {
+ return trackNumber;
+ }
+
+ public void setTrackNumber(int trackNumber) {
+ this.trackNumber = trackNumber;
+ }
+
+ public long getId() {
+ return id;
+ }
+ public String getType() {
+ return "song";
+ }
+}
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tree/usage.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tree/usage.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tree/usage.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,84 @@
+<!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:a4j="https://ajax4jsf.dev.java.net/ajax"
+ xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+ <ui:composition template="/templates/component-sample.xhtml">
+ <ui:define name="sample">
+ <p>
+ Tree is a component that renders tree control on the page.<br/>
+ The most important tree features are:
+ </p>
+ <ul>
+ <li>Native support for Ajax operations</li>
+ <li>Support for "ajax", "client" and "server" switch types</li>
+ <li>Built-in drag/drop capabilities</li>
+ <li>Flexible look</li>
+ </ul>
+ <h:form>
+ <div class="sample-container" >
+ <p>This tree uses "ajax" switch type, note that for collapse/expand operations it will be Ajax request to the server. You may see short delay in this case.</p>
+ <rich:tree style="width:300px" value="#{library.data}" var="item" nodeFace="#{item.type}">
+ <rich:treeNode type="library">
+ <h:outputText value="#{item.type}" />
+ </rich:treeNode>
+ <rich:treeNode type="artist">
+ <h:outputText value="#{item.name}" />
+ </rich:treeNode>
+ <rich:treeNode type="album">
+ <h:outputText value="#{item.title}" />
+ </rich:treeNode>
+ <rich:treeNode type="song">
+ <h:outputText value="#{item.title}" />
+ </rich:treeNode>
+ </rich:tree>
+ </div>
+ <div class="sample-container" >
+ <p>This is exactly the same tree, but now it uses "client" switch type. Note, that all nodes actually rendered up-front and expand/collapse now do not requre server call</p>
+ <rich:tree switchType="client" style="width:300px" value="#{library.data}" var="item" nodeFace="#{item.type}">
+ <rich:treeNode type="library">
+ <h:outputText value="#{item.type}" />
+ </rich:treeNode>
+ <rich:treeNode type="artist">
+ <h:outputText value="#{item.name}" />
+ </rich:treeNode>
+ <rich:treeNode type="album">
+ <h:outputText value="#{item.title}" />
+ </rich:treeNode>
+ <rich:treeNode type="song">
+ <h:outputText value="#{item.title}" />
+ </rich:treeNode>
+ </rich:tree>
+ </div>
+ <div class="sample-container" >
+ <p>This is again same tree, but now it uses "server" switch type. Full page content will be reloaded at every click.</p>
+ <rich:tree switchType="server" style="width:300px" value="#{library.data}" var="item" nodeFace="#{item.type}">
+ <rich:treeNode type="library">
+ <h:outputText value="#{item.type}" />
+ </rich:treeNode>
+ <rich:treeNode type="artist">
+ <h:outputText value="#{item.name}" />
+ </rich:treeNode>
+ <rich:treeNode type="album">
+ <h:outputText value="#{item.title}" />
+ </rich:treeNode>
+ <rich:treeNode type="song">
+ <h:outputText value="#{item.title}" />
+ </rich:treeNode>
+ </rich:tree>
+ </div>
+ </h:form>
+ <p>
+ Note how tree switched on "client" does not "remember" it state when whole page is reloaded. At the same time "ajax" tree remember it state without any additional code.
+ </p>
+ </ui:define>
+ <ui:define name="sources">
+ <p>
+ Here is fragment of page sources for given example:
+ </p>
+ <iframe src="${facesContext.externalContext.requestContextPath}/richfaces/tree/source/usage.html" class="source_frame"/>
+ </ui:define>
+ </ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tree.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tree.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/richfaces/tree.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,19 @@
+<!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">
+
+<ui:composition template="/templates/main.xhtml">
+ <ui:define name="title">RichFaces - Open Source Rich JSF Components - Tree</ui:define>
+ <ui:define name="current">panel</ui:define>
+ <ui:define name="body">
+ <rich:tabPanel switchType="server" styleClass="top_tab" contentClass="content_tab" inactiveTabClass="inactive_tab" activeTabClass="active_tab">
+ <rich:tab label="Usage">
+ <ui:include src="/richfaces/tree/usage.xhtml"/>
+ </rich:tab>
+ </rich:tabPanel>
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/component-sample.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/component-sample.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/component-sample.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,9 @@
+<!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">
+<ui:insert name="sample"/>
+<ui:insert name="sources"/>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/include/components-navigation.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/include/components-navigation.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/include/components-navigation.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,27 @@
+<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:a4j="https://ajax4jsf.dev.java.net/ajax"
+ xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+<rich:panel styleClass="panel_menu">
+ <table border="0" cellpadding="3" cellspacing="1">
+ <tbody>
+ <a4j:repeat var="component" value="#{componentNavigator.components}">
+ <tr class="#{component.current?'active':'unactive'}" onmouseover="this.className='active'" onmouseout="this.className='#{component.current?'active':'unactive'}'">
+ <td class="ico"><h:graphicImage value="#{component.iconImage}" width="16" height="16" alt="" border="0" /></td>
+ <td class="text" width="100%">
+ <h:outputLink value="#{component.contextRelativeDemoLocation}">
+ <span style="display:block;">
+ #{component.name}
+ </span>
+ <f:param value="#{component.id}" name="c"/>
+ </h:outputLink>
+ </td>
+ </tr>
+ </a4j:repeat>
+ </tbody>
+ </table>
+</rich:panel>
+</html>
+
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/include/dynamic-css.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/include/dynamic-css.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/include/dynamic-css.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,30 @@
+<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:a4j="https://ajax4jsf.dev.java.net/ajax">
+<style type="text/css">
+body{
+ background-image : url(${facesContext.externalContext.requestContextPath}/images/page_bg.gif);
+}
+li{
+ list-style : outside url(${facesContext.externalContext.requestContextPath}/images/bullet_arrow.gif);
+}
+.top_navbar td{
+ background-image : url(${facesContext.externalContext.requestContextPath}/images/top_nav_bg.gif);
+}
+.panel_menu{
+ background-image : url(${facesContext.externalContext.requestContextPath}/images/menu_bg.gif);
+}
+.content_tab {
+ background-image : url(${facesContext.externalContext.requestContextPath}/images/tabpanel_custom/tabpanel_bg.jpg);
+}
+.active_tab {
+ background-image : url(${facesContext.externalContext.requestContextPath}/images/tabpanel_custom/tab_unactive_bg.gif);
+}
+.inactive_tab {
+ background-image : url(${facesContext.externalContext.requestContextPath}/images/tabpanel_custom/tab_active_bg.gif);
+}
+</style>
+</html>
+
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/include/footer.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/include/footer.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/include/footer.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,8 @@
+<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:a4j="https://ajax4jsf.dev.java.net/ajax">
+Footer will be here
+</html>
+
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/include/header.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/include/header.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/include/header.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,124 @@
+<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:a4j="https://ajax4jsf.dev.java.net/ajax"
+ xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+<div class="page_brick"></div>
+<table class="top_navbar" cellpadding="0" cellspacing="0" border="0">
+<tbody>
+ <tr>
+ <td>
+ <h:outputLink value="http://www.jboss.org/projects/jbossrichfaces/">Download</h:outputLink>
+ </td>
+ <td>
+ <h:outputLink value="http://www.jboss.org/projects/jbossrichfaces/">Support</h:outputLink>
+ </td>
+ <td>
+ <h:outputLink value="http://www.jboss.org/projects/jbossrichfaces/">Community</h:outputLink>
+ </td>
+ </tr>
+</tbody>
+</table>
+<h:form>
+<table class="skin_chooser" cellpadding="0" cellspacing="0" border="0">
+<tbody>
+ <tr>
+ <td>
+ <strong>Skins:</strong>
+ </td>
+ <td>
+ <rich:togglePanel id="skin_chooser" value="#{skinBean.skinChooserState}" switchType="ajax" stateOrder="s,b">
+ <f:facet name="s">
+ <h:panelGroup>
+ <table class="skin_line" cellpadding="0" cellspacing="0" border="0">
+ <tbody>
+ <tr>
+ <td>
+ <h:outputLink value="#{componentNavigator.currentComponent.contextRelativeDemoLocation}">
+ BlueSky
+ <f:param value="blueSky" name="s"/>
+ </h:outputLink>
+ </td>
+ <td>
+ <h:outputLink value="#{componentNavigator.currentComponent.contextRelativeDemoLocation}">
+ Classic
+ <f:param value="classic" name="s"/>
+ </h:outputLink>
+ </td>
+ <td class="control">
+ <rich:toggleControl for="skin_chooser" value="more »" />
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </h:panelGroup>
+ </f:facet>
+ <f:facet name="b">
+ <h:panelGroup>
+ <table class="skin_line" cellpadding="0" cellspacing="0" border="0">
+ <tbody>
+ <tr>
+ <td>
+ <h:outputLink value="#{componentNavigator.currentComponent.contextRelativeDemoLocation}">
+ BlueSky
+ <f:param value="blueSky" name="s"/>
+ </h:outputLink>
+ </td>
+ <td>
+ <h:outputLink value="#{componentNavigator.currentComponent.contextRelativeDemoLocation}">
+ Classic
+ <f:param value="classic" name="s"/>
+ </h:outputLink>
+ </td>
+ <td>
+ <h:outputLink value="#{componentNavigator.currentComponent.contextRelativeDemoLocation}">
+ Ruby
+ <f:param value="ruby" name="s"/>
+ </h:outputLink>
+ </td>
+ <td>
+ <h:outputLink value="#{componentNavigator.currentComponent.contextRelativeDemoLocation}">
+ Wine
+ <f:param value="wine" name="s"/>
+ </h:outputLink>
+ </td>
+ <td>
+ <h:outputLink value="#{componentNavigator.currentComponent.contextRelativeDemoLocation}">
+ DeepMarine
+ <f:param value="deepMarine" name="s"/>
+ </h:outputLink>
+ </td>
+ <td>
+ <h:outputLink value="#{componentNavigator.currentComponent.contextRelativeDemoLocation}">
+ EmeraldTown
+ <f:param value="emeraldTown" name="s"/>
+ </h:outputLink>
+ </td>
+ <td>
+ <h:outputLink value="#{componentNavigator.currentComponent.contextRelativeDemoLocation}">
+ Sakura
+ <f:param value="japanCherry" name="s"/>
+ </h:outputLink>
+ </td>
+ <td>
+ <h:outputLink value="#{componentNavigator.currentComponent.contextRelativeDemoLocation}">
+ Default
+ <f:param value="DEFAULT" name="s"/>
+ </h:outputLink>
+ </td>
+ <td class="control">
+ <rich:toggleControl for="skin_chooser" value="« less" />
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </h:panelGroup>
+ </f:facet>
+ </rich:togglePanel>
+ </td>
+ </tr>
+</tbody>
+</table>
+</h:form>
+</html>
\ No newline at end of file
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/include/references.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/include/references.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/include/references.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,16 @@
+<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:a4j="https://ajax4jsf.dev.java.net/ajax"
+ xmlns:rich="http://richfaces.ajax4jsf.org/rich">
+<rich:panel styleClass="panel_documents">
+ <strong>#{componentNavigator.currentComponent.name}</strong>
+ <ul>
+ <li><h:outputLink value="#{componentNavigator.currentComponent.devGuideLocation}">Developers Guide</h:outputLink></li>
+ <li><h:outputLink value="#{componentNavigator.currentComponent.tldDocLocation}">Tld Documentation</h:outputLink></li>
+ <li><h:outputLink value="#{componentNavigator.currentComponent.javaDocLocation}">Component Class Documentation</h:outputLink></li>
+ </ul>
+</rich:panel>
+</html>
+
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/main.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/main.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/templates/main.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -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:ui="http://java.sun.com/jsf/facelets"
+ 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:rich="http://richfaces.ajax4jsf.org/rich">
+
+<head>
+<meta http-equiv="Content-Type" content="text/xhtml; charset=UTF-8"/>
+<title>
+ <ui:insert name="title"/>
+</title>
+<link rel="STYLESHEET" type="text/css" href="${facesContext.externalContext.requestContextPath}/css/common.css"/>
+<ui:include src="/templates/include/dynamic-css.xhtml" />
+</head>
+
+<body>
+<ui:include src="/templates/include/header.xhtml" />
+<table class="left_menu" cellpadding="0" cellspacing="0" border="0">
+<tbody>
+ <tr>
+ <td>
+ <ui:include src="/templates/include/references.xhtml" />
+ <div class="menu_separator">
+
+ </div>
+ <ui:include src="/templates/include/components-navigation.xhtml" />
+ </td>
+ </tr>
+</tbody>
+</table>
+
+<h:graphicImage value="#{componentNavigator.currentComponent.captionImage}" height="40" alt="" border="0" styleClass="component_name"/>
+
+<table cellpadding="0" cellspacing="0" border="0" class="content_container" width="100%">
+<tbody>
+ <tr>
+ <td>
+ <div class="content_container_left_brick"></div>
+ </td>
+ <td width="100%" class="content_container_pdddings">
+<!-- tabpanel begin -->
+ <ui:insert name="body">Body</ui:insert>
+<!-- tabpanel end -->
+ </td>
+ </tr>
+</tbody>
+</table>
+
+
+</body>
+</html>
+<!--
+<table style="height: 100%; width: 100%">
+ <tr>
+ <td colspan="2" style="height: 50px">
+ </td>
+ </tr>
+ <tr>
+ <td style="width: 200px; padding:2px; vertical-align:top">
+ <rich:panel style="height:95%;">
+ <ui:include src="/templates/include/components-navigation.xhtml" />
+ </rich:panel>
+ </td>
+ <td style="padding:2px; vertical-align:top">
+ </td>
+ </tr>
+ <tr>
+ <td colspan="2" style="height:50px">
+ <ui:include src="/templates/include/footer.xhtml" />
+ </td>
+ </tr>
+</table>
+</body>
+</html>
+-->
\ No newline at end of file
Added: trunk/richfaces-samples/richfaces-demo/src/main/webapp/welcome.xhtml
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/main/webapp/welcome.xhtml (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/main/webapp/welcome.xhtml 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,30 @@
+<!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">
+<ui:composition template="/templates/main.xhtml">
+ <ui:define name="title">RichFaces - Open Source Rich JSF Components</ui:define>
+ <ui:define name="body">
+ <p>Welcome to the <h:outputLink value="#" target="_blank">
+ <strong>Rich Faces 3.0</strong>
+ </h:outputLink> demo!</p>
+ <h4>About RichFaces</h4>
+ <p>RichFaces is a rich component library for JavaServer Faces
+ built on an advanced open source framework (Ajax4jsf). It allows easy integration of AJAX capabilities into enterprise-level business
+ application development.</p>
+ <p>RichFaces enriches the Ajax4jsf framework in two important
+ ways. First, it expands the number of visual ready-to-use components.
+ Secondly, it fully implements the skinability feature of the Ajax4jsf
+ framework including a large number of predefined skins. Using
+ skinability, it is much easier to manage the look-and-feel of an
+ application.</p>
+ <h4>About This Demo"</h4>
+ <p>This demo Web application showcases the most important
+ functionality available in RichFaces components. For each component
+ or component set selected in the left-hand sidebar, you can see it in action. Also, you can instantly see the effect of predefined
+ skins on the application whole look-and-feel.
+ </p>
+ </ui:define>
+</ui:composition>
+</html>
Added: trunk/richfaces-samples/richfaces-demo/src/test/java/org/richfaces/demo/tree/test/LibraryTest.java
===================================================================
--- trunk/richfaces-samples/richfaces-demo/src/test/java/org/richfaces/demo/tree/test/LibraryTest.java (rev 0)
+++ trunk/richfaces-samples/richfaces-demo/src/test/java/org/richfaces/demo/tree/test/LibraryTest.java 2007-03-05 19:16:29 UTC (rev 11)
@@ -0,0 +1,17 @@
+package org.richfaces.demo.tree.test;
+
+import java.util.Iterator;
+
+import org.richfaces.demo.tree.Library;
+
+import junit.framework.TestCase;
+
+public class LibraryTest extends TestCase {
+
+ public void testLibrary() {
+ Library library = new Library();
+ Iterator it = library.getChildren();
+ assertTrue(it.hasNext());
+ }
+
+}
[View Less]
18 years, 1 month