[richfaces-svn-commits] JBoss Rich Faces SVN: r11865 - in trunk/samples/richfaces-demo/src/main: webapp/richfaces/extendedDataTable/examples and 1 other directory.
richfaces-svn-commits at lists.jboss.org
richfaces-svn-commits at lists.jboss.org
Thu Dec 18 06:38:05 EST 2008
Author: ilya_shaikovsky
Date: 2008-12-18 06:38:04 -0500 (Thu, 18 Dec 2008)
New Revision: 11865
Modified:
trunk/samples/richfaces-demo/src/main/java/org/richfaces/demo/extendedDataTable/ExtendedTableBean.java
trunk/samples/richfaces-demo/src/main/webapp/richfaces/extendedDataTable/examples/simple.xhtml
Log:
Modified: trunk/samples/richfaces-demo/src/main/java/org/richfaces/demo/extendedDataTable/ExtendedTableBean.java
===================================================================
--- trunk/samples/richfaces-demo/src/main/java/org/richfaces/demo/extendedDataTable/ExtendedTableBean.java 2008-12-18 11:21:47 UTC (rev 11864)
+++ trunk/samples/richfaces-demo/src/main/java/org/richfaces/demo/extendedDataTable/ExtendedTableBean.java 2008-12-18 11:38:04 UTC (rev 11865)
@@ -3,14 +3,43 @@
*/
package org.richfaces.demo.extendedDataTable;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+
+import org.richfaces.component.html.HtmlExtendedDataTable;
+import org.richfaces.demo.capitals.Capital;
+import org.richfaces.model.selection.SimpleSelection;
+
/**
* @author Ilya Shaikovsky
- *
+ *
*/
public class ExtendedTableBean {
private String sortMode="single";
private String selectionMode="multi";
+ private HtmlExtendedDataTable table;
+ private SimpleSelection selection;
+ private List<Capital> selectedCapitals = new ArrayList<Capital>();
+
+ public void takeSelection() {
+ getSelectedCapitals().clear();
+ Iterator<Object> iterator = getSelection().getKeys();
+ while (iterator.hasNext()){
+ Object key = iterator.next();
+ table.setRowKey(key);
+ if (table.isRowAvailable()) {
+ getSelectedCapitals().add((Capital) table.getRowData());
+ }
+ }
+ System.out.println(getSelectedCapitals().size());
+ }
+
+ public void resetSelection() {
+ getSelectedCapitals().clear();
+ }
+
public String getSortMode() {
return sortMode;
}
@@ -29,4 +58,29 @@
public ExtendedTableBean() {
}
+
+ public HtmlExtendedDataTable getTable() {
+ return table;
+ }
+
+ public void setTable(HtmlExtendedDataTable table) {
+ this.table = table;
+ }
+
+ public SimpleSelection getSelection() {
+ return selection;
+ }
+
+ public void setSelection(SimpleSelection selection) {
+ this.selection = selection;
+ }
+
+ public List<Capital> getSelectedCapitals() {
+ return selectedCapitals;
+ }
+
+ public void setSelectedCapitals(List<Capital> selectedCapitals) {
+ this.selectedCapitals = selectedCapitals;
+ }
+
}
Modified: trunk/samples/richfaces-demo/src/main/webapp/richfaces/extendedDataTable/examples/simple.xhtml
===================================================================
--- trunk/samples/richfaces-demo/src/main/webapp/richfaces/extendedDataTable/examples/simple.xhtml 2008-12-18 11:21:47 UTC (rev 11864)
+++ trunk/samples/richfaces-demo/src/main/webapp/richfaces/extendedDataTable/examples/simple.xhtml 2008-12-18 11:38:04 UTC (rev 11865)
@@ -1,64 +1,88 @@
<!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="http://richfaces.org/a4j"
- xmlns:rich="http://richfaces.org/rich">
+ 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="http://richfaces.org/a4j"
+ xmlns:rich="http://richfaces.org/rich">
- <ui:composition>
- <h:form>
+<ui:composition>
+ <h:form>
<h:panelGrid columns="2" columnClasses="top,top">
- <rich:extendedDataTable value="#{capitalsBean.capitals}" var="cap" id="table"
- width="580px" height="400px" sortMode="#{extendedTableBean.sortMode}"
- selectionMode="#{extendedTableBean.selectionMode}">
- <rich:column sortable="false" label="Flag">
- <f:facet name="header">
- <h:outputText value="Flag"/>
- </f:facet>
- <h:graphicImage value="#{cap.stateFlag}"/>
- </rich:column>
- <rich:column sortable="true" sortBy="#{cap.state}" filterBy="#{cap.state}" filterEvent="onkeyup" width="170px" label="State Name">
- <f:facet name="header">
- <h:outputText value="State Name"/>
- </f:facet>
- <h:outputText value="#{cap.state}"/>
- </rich:column>
- <rich:column sortable="true" sortBy="#{cap.name}" filterBy="#{cap.name}" filterEvent="onkeyup" width="170px" label="State Capital">
- <f:facet name="header">
- <h:outputText value="State Capital"/>
- </f:facet>
- <h:outputText value="#{cap.name}"/>
- </rich:column>
- <rich:column sortable="false" label="Time Zone">
- <f:facet name="header">
- <h:outputText value="Time Zone"/>
- </f:facet>
- <h:outputText value="#{cap.timeZone}"/>
- </rich:column>
- </rich:extendedDataTable>
- <rich:panel>
- <f:facet name="header">
- <h:outputText value="Sort/Selection modes changing"/>
- </f:facet>
- <h:panelGrid columns="2">
- <h:outputText value="Sort Mode:"/>
- <h:selectOneMenu value="#{extendedTableBean.sortMode}">
- <f:selectItem itemLabel="Single" itemValue="single"/>
- <f:selectItem itemLabel="Multi" itemValue="multi"/>
- <a4j:support event="onchange" ajaxSingle="true" reRender="table"/>
- </h:selectOneMenu>
- <h:outputText value="Selection Mode:"/>
- <h:selectOneMenu value="#{extendedTableBean.selectionMode}">
- <a4j:support ajaxSingle="true" event="onchange" reRender="table"/>
- <f:selectItem itemLabel="Single" itemValue="single"/>
- <f:selectItem itemLabel="Multi" itemValue="multi"/>
- <f:selectItem itemLabel="None" itemValue="none"/>
- </h:selectOneMenu>
+ <rich:extendedDataTable value="#{capitalsBean.capitals}" var="cap"
+ id="table" width="580px" height="400px"
+ sortMode="#{extendedTableBean.sortMode}"
+ selectionMode="#{extendedTableBean.selectionMode}"
+ selection="#{extendedTableBean.selection}"
+ binding="#{extendedTableBean.table}">
+ <rich:column sortable="false" label="Flag">
+ <f:facet name="header">
+ <h:outputText value="Flag" />
+ </f:facet>
+ <h:graphicImage value="#{cap.stateFlag}" />
+ </rich:column>
+ <rich:column sortable="true" sortBy="#{cap.state}"
+ filterBy="#{cap.state}" filterEvent="onkeyup" width="170px"
+ label="State Name">
+ <f:facet name="header">
+ <h:outputText value="State Name" />
+ </f:facet>
+ <h:outputText value="#{cap.state}" />
+ </rich:column>
+ <rich:column sortable="true" sortBy="#{cap.name}"
+ filterBy="#{cap.name}" filterEvent="onkeyup" width="170px"
+ label="State Capital">
+ <f:facet name="header">
+ <h:outputText value="State Capital" />
+ </f:facet>
+ <h:outputText value="#{cap.name}" />
+ </rich:column>
+ <rich:column sortable="false" label="Time Zone">
+ <f:facet name="header">
+ <h:outputText value="Time Zone" />
+ </f:facet>
+ <h:outputText value="#{cap.timeZone}" />
+ </rich:column>
+ <a4j:support event="onselectionchange" reRender="restable"
+ ajaxSingle="true" action="#{extendedTableBean.takeSelection}"></a4j:support>
+ </rich:extendedDataTable>
+ <h:panelGrid columns="1">
+ <rich:panel>
+ <f:facet name="header">
+ <h:outputText value="Sort/Selection modes changing" />
+ </f:facet>
+ <h:panelGrid columns="2">
+ <h:outputText value="Sort Mode:" />
+ <h:selectOneMenu value="#{extendedTableBean.sortMode}">
+ <f:selectItem itemLabel="Single" itemValue="single" />
+ <f:selectItem itemLabel="Multi" itemValue="multi" />
+ <a4j:support event="onchange" ajaxSingle="true" reRender="table" />
+ </h:selectOneMenu>
+ <h:outputText value="Selection Mode:" />
+ <h:selectOneMenu value="#{extendedTableBean.selectionMode}">
+ <a4j:support ajaxSingle="true" event="onchange" reRender="table" />
+ <f:selectItem itemLabel="Single" itemValue="single" />
+ <f:selectItem itemLabel="Multi" itemValue="multi" />
+ <f:selectItem itemLabel="None" itemValue="none" />
+ </h:selectOneMenu>
+ </h:panelGrid>
+ </rich:panel>
+ <rich:panel id="restable">
+ <f:facet name="header">
+ <h:outputText value="Selected rows(capital names)" />
+ </f:facet>
+ <rich:dataList value="#{extendedTableBean.selectedCapitals}"
+ var="cap" rendered="#{not empty extendedTableBean.selectedCapitals}">
+ <h:outputText value="#{cap.name}" />
+ </rich:dataList>
+ <h:outputText value="Nothing selected"
+ rendered="#{empty extendedTableBean.selectedCapitals}" />
+ </rich:panel>
</h:panelGrid>
- </rich:panel>
+
</h:panelGrid>
- </h:form>
- </ui:composition>
+ </h:form>
+ <rich:messages></rich:messages>
+</ui:composition>
</html>
\ No newline at end of file
More information about the richfaces-svn-commits
mailing list