You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@myfaces.apache.org by lo...@apache.org on 2016/03/11 16:34:45 UTC

svn commit: r1734579 - in /myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content: 04-tab/ 20-component/060-popup/ 20-component/070-tab/ 20-component/080-sheet/ 20-component/080-sheet/00/ 20-component/080-sheet/...

Author: lofwyr
Date: Fri Mar 11 15:34:45 2016
New Revision: 1734579

URL: http://svn.apache.org/viewvc?rev=1734579&view=rev
Log:
TOBAGO-1544: Revise Demo Application for Tobago 3.0
* developed with hnoeth

Added:
    myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/060-popup/
      - copied from r1734511, myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-popup/
    myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/070-tab/
      - copied from r1734511, myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/04-tab/
    myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/
    myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/00/
    myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/00/sheet-master-detail.xhtml
    myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/01/
    myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/01/sheet-multi-header.xhtml
    myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/02/
    myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/02/sheet-tree.xhtml
    myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/03/
    myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/03/sheet-filter.xhtml
    myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/sheet.xhtml
    myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/x-sheet-nested.xhtml
Removed:
    myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/04-tab/
    myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-popup/

Added: myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/00/sheet-master-detail.xhtml
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/00/sheet-master-detail.xhtml?rev=1734579&view=auto
==============================================================================
--- myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/00/sheet-master-detail.xhtml (added)
+++ myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/00/sheet-master-detail.xhtml Fri Mar 11 15:34:45 2016
@@ -0,0 +1,86 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+-->
+
+<ui:composition template="/main.xhtml"
+                xmlns:tc="http://myfaces.apache.org/tobago/component"
+                xmlns:ui="http://java.sun.com/jsf/facelets"
+                xmlns:f="http://java.sun.com/jsf/core">
+  <ui:param name="title" value="Sheet as Master-Details example"/>
+
+  <tc:panel id="panel">
+
+    <tc:out escape="false" value="Klick on a row">
+      <tc:gridLayoutConstraint columnSpan="2"/>
+    </tc:out>
+
+    <tc:segmentLayout medium="6;6">
+
+      <tc:box label="List of Objects">
+        <f:facet name="toolBar">
+          <tc:toolBar>
+            <tc:toolBarCommand label="Deselect" actionListener="#{demo.selectLuminary}"
+                               renderedPartially=":page:detail" immediate="true">
+              <tc:resetInputActionListener/>
+            </tc:toolBarCommand>
+          </tc:toolBar>
+        </f:facet>
+
+        <tc:sheet value="#{demo.solarList}" id="sheet"
+                  columns="*" var="luminary" selectable="single">
+          <tc:column label="#{overviewBundle.solarArrayName}" id="name">
+            <tc:out value="#{luminary.name}" id="t_name"/>
+          </tc:column>
+          <tc:columnEvent event="click">
+            <tc:command actionListener="#{demo.selectLuminary}" immediate="true">
+              <tc:resetInputActionListener/>
+              <f:ajax render=":page:detail"/>
+            </tc:command>
+          </tc:columnEvent>
+        </tc:sheet>
+      </tc:box>
+
+      <tc:box id="detail" label="Details">
+
+        <tc:panel rendered="#{demo.currentSolarObject != null}">
+          <tc:in label="Name" value="#{demo.currentSolarObject.name}" required="true"/>
+          <tc:in label="Number" value="#{demo.currentSolarObject.number}"/>
+          <tc:in label="Orbit" value="#{demo.currentSolarObject.orbit}"/>
+          <tc:in label="Distance" value="#{demo.currentSolarObject.distance}"/>
+          <tc:in label="Period" value="#{demo.currentSolarObject.period}"/>
+          <tc:in label="Obliquity" value="#{demo.currentSolarObject.incl}"/>
+          <tc:in label="Eccentricity" value="#{demo.currentSolarObject.eccen}"/>
+          <tc:in label="Discoverer" value="#{demo.currentSolarObject.discoverer}"/>
+          <tc:in label="Discover Year" value="#{demo.currentSolarObject.discoverYear}"/>
+          <tc:flowLayout>
+            <tc:style textAlign="right"/>
+            <tc:button label="OK"/>
+            <tc:button label="Cancel" immediate="true" action="#{demo.resetLuminary}"/>
+          </tc:flowLayout>
+        </tc:panel>
+
+        <tc:panel rendered="#{demo.currentSolarObject == null}">
+          <tc:out value="Please select a solar object on the left side to show its details."/>
+        </tc:panel>
+
+      </tc:box>
+
+    </tc:segmentLayout>
+
+  </tc:panel>
+</ui:composition>

Added: myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/01/sheet-multi-header.xhtml
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/01/sheet-multi-header.xhtml?rev=1734579&view=auto
==============================================================================
--- myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/01/sheet-multi-header.xhtml (added)
+++ myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/01/sheet-multi-header.xhtml Fri Mar 11 15:34:45 2016
@@ -0,0 +1,109 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+-->
+
+<ui:composition template="/main.xhtml"
+                xmlns:tc="http://myfaces.apache.org/tobago/component"
+                xmlns:ui="http://java.sun.com/jsf/facelets"
+                xmlns:f="http://java.sun.com/jsf/core">
+  <ui:param name="title" value="#{overviewBundle.sheet}"/>
+
+  <tc:panel>
+    <f:facet name="layout">
+      <tc:gridLayout rows="1*;5*"/>
+    </f:facet>
+
+    <tc:out value="For simple column headers, use the lable attribute of the tc:column.
+    For more complex headers, which can span over columns and/or rows use a &lt;f:facet name='header'&gt; in the sheet." />
+
+    <tc:sheet value="#{demo.solarList}" id="sheet"
+              columns="3*;2*;30px;2*;2*;2*;2*;2*;2*" var="luminary"
+              state="#{demo.sheetState}"
+              showRowRange="left"
+              showPageRange="right"
+              showDirectLinks="center">
+
+      <f:facet name="header">
+        <tc:panel>
+          <tc:out value="#{overviewBundle.solarArrayName}">
+            <tc:gridLayoutConstraint rowSpan="3"/>
+          </tc:out>
+          <tc:out value="Information">
+            <tc:gridLayoutConstraint columnSpan="2"/>
+          </tc:out>
+          <tc:out value="Data">
+            <tc:gridLayoutConstraint columnSpan="4"/>
+          </tc:out>
+          <tc:out value="Discovery">
+            <tc:gridLayoutConstraint columnSpan="2"/>
+          </tc:out>
+
+          <tc:out value="Orbit">
+            <tc:gridLayoutConstraint columnSpan="3"/>
+          </tc:out>
+          <tc:out value="Orb">
+            <tc:gridLayoutConstraint columnSpan="3"/>
+          </tc:out>
+          <tc:out value="Name">
+            <tc:gridLayoutConstraint rowSpan="2"/>
+          </tc:out>
+          <tc:out value="Year">
+            <tc:gridLayoutConstraint rowSpan="2"/>
+          </tc:out>
+
+          <tc:out value="of"/>
+          <tc:out value="#{overviewBundle.solarArrayNumber}"/>
+          <tc:out value="#{overviewBundle.solarArrayDistance} [1000 km]"/>
+          <tc:out value="Period [days]"/>
+          <tc:out value="Inclination [°]"/>
+          <tc:out value="Eccentricity"/>
+
+        </tc:panel>
+      </f:facet>
+
+      <tc:column id="name">
+        <tc:out value="#{luminary.name}" id="t_name"/>
+      </tc:column>
+      <tc:column  id="orbit" label="#{overviewBundle.solarArrayOrbit}" sortable="true">
+          <tc:out value="#{luminary.orbit}" id="t_orbit"/>
+      </tc:column>
+      <tc:column id="number" sortable="false" resizable="false"
+                 tip="#{overviewBundle.solarArrayNumberTip}" align="center">
+        <tc:out value="#{luminary.number}" id="t_number"/>
+      </tc:column>
+      <tc:column sortable="true" align="right" id="distance">
+        <tc:out value="#{luminary.distance}" id="t_distance"/>
+      </tc:column>
+      <tc:column label="#{overviewBundle.solarArrayPeriod}" sortable="true" align="right" id="period">
+        <tc:out value="#{luminary.period}" id="t_period"/>
+      </tc:column>
+      <tc:column sortable="true" align="right" id="incl">
+        <tc:out value="#{luminary.incl}" id="t_incl"/>
+      </tc:column>
+      <tc:column sortable="true" align="right" id="eccen">
+        <tc:out value="#{luminary.eccen}" id="t_eccen"/>
+      </tc:column>
+      <tc:column sortable="true" id="discoverer">
+        <tc:out value="#{luminary.discoverer}" id="t_discoverer"/>
+      </tc:column>
+      <tc:column sortable="true" align="center" id="discoverYear">
+        <tc:out value="#{luminary.discoverYear}" id="t_discoverYear"/>
+      </tc:column>
+    </tc:sheet>
+  </tc:panel>
+</ui:composition>

Added: myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/02/sheet-tree.xhtml
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/02/sheet-tree.xhtml?rev=1734579&view=auto
==============================================================================
--- myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/02/sheet-tree.xhtml (added)
+++ myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/02/sheet-tree.xhtml Fri Mar 11 15:34:45 2016
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+-->
+
+<ui:composition template="/main.xhtml"
+                xmlns:tc="http://myfaces.apache.org/tobago/component"
+                xmlns:ui="http://java.sun.com/jsf/facelets"
+                xmlns:f="http://java.sun.com/jsf/core">
+  <ui:param name="title" value="#{overviewBundle.sheet}"/>
+
+  <tc:panel>
+    <f:facet name="layout">
+      <tc:gridLayout rows="1*;5*"/>
+    </f:facet>
+
+    <tc:out value="Tree Table"/>
+
+    <tc:sheet value="#{demo.solarTree}" id="sheet"
+              columns="3*;2*;30px;2*;2*;2*;2*;2*;2*" var="luminary"
+              state="#{demo.sheetTreeState}"
+              showRoot="true"
+              showRootJunction="true"
+              showRowRange="left"
+              showPageRange="right"
+              showDirectLinks="center">
+
+      <tc:columnNode id="name">
+        <tc:treeIndent/>
+        <tc:out value="#{luminary.userObject.name}" id="t_name"/>
+      </tc:columnNode>
+      <tc:column id="orbit" label="#{overviewBundle.solarArrayOrbit}">
+        <tc:out value="#{luminary.userObject.orbit}" id="t_orbit"/>
+      </tc:column>
+      <tc:column id="number" resizable="false"
+                 tip="#{overviewBundle.solarArrayNumberTip}" align="center">
+        <tc:out value="#{luminary.userObject.number}" id="t_number"/>
+      </tc:column>
+      <tc:column align="right" id="distance">
+        <tc:out value="#{luminary.userObject.distance}" id="t_distance"/>
+      </tc:column>
+      <tc:column label="#{overviewBundle.solarArrayPeriod}" align="right" id="period">
+        <tc:out value="#{luminary.userObject.period}" id="t_period"/>
+      </tc:column>
+      <tc:column align="right" id="incl">
+        <tc:out value="#{luminary.userObject.incl}" id="t_incl"/>
+      </tc:column>
+      <tc:column align="right" id="eccen">
+        <tc:out value="#{luminary.userObject.eccen}" id="t_eccen"/>
+      </tc:column>
+      <tc:column id="discoverer">
+        <tc:out value="#{luminary.userObject.discoverer}" id="t_discoverer"/>
+      </tc:column>
+      <tc:column align="center" id="discoverYear">
+        <tc:out value="#{luminary.userObject.discoverYear}" id="t_discoverYear"/>
+      </tc:column>
+    </tc:sheet>
+  </tc:panel>
+</ui:composition>

Added: myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/03/sheet-filter.xhtml
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/03/sheet-filter.xhtml?rev=1734579&view=auto
==============================================================================
--- myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/03/sheet-filter.xhtml (added)
+++ myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/03/sheet-filter.xhtml Fri Mar 11 15:34:45 2016
@@ -0,0 +1,90 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+-->
+
+<ui:composition template="/main.xhtml"
+                xmlns:tc="http://myfaces.apache.org/tobago/component"
+                xmlns:ui="http://java.sun.com/jsf/facelets"
+                xmlns:f="http://java.sun.com/jsf/core"
+                xmlns="http://www.w3.org/1999/xhtml">
+  <ui:param name="title" value="#{overviewBundle.sheet}"/>
+
+  <tc:panel>
+    <f:facet name="layout">
+      <tc:gridLayout rows="1*;5*"/>
+    </f:facet>
+
+    <tc:panel>
+      Filter demo.
+      <br/>
+      <b>Warning:</b> paging currently doesn't work with filters
+    </tc:panel>
+
+    <tc:sheet value="#{sheetFilter.filtered}" id="sheet" rows="20"
+              columns="3*;2*;2*;2*" var="luminary"
+              state="#{sheetFilter.state}"
+              showRowRange="none"
+              showPageRange="none"
+              showDirectLinks="none">
+<!-- XXX paging currently doesn't work with filters -->
+
+      <f:facet name="header">
+        <tc:form>
+
+          <tc:out value="Name"/>
+          <tc:out value="Orbit of"/>
+          <tc:out value="#{overviewBundle.solarArrayDistance} [1000 km]"/>
+          <tc:out value="Discoverer"/>
+
+          <tc:in value="#{sheetFilter.name}">
+            <!-- a change facet works, but is not nice to use in most cases -->
+<!--
+                        <f:facet name="change">
+                          <tc:command action="#{sheetFilter.filter}" renderedPartially="sheet"/>
+                        </f:facet>
+-->
+          </tc:in>
+          <tc:in value="#{sheetFilter.orbit}"/>
+          <tc:selectOneChoice value="#{sheetFilter.distance}" converter="#{sheetFilter.converter}">
+            <tc:selectItems value="#{sheetFilter.distanceItems}"/>
+          </tc:selectOneChoice>
+
+          <!-- XXX workaround -->
+          <tc:panel>
+            <tc:in value="#{sheetFilter.discoverer}"/>
+            <tc:button action="#{sheetFilter.filter}" label="Filter" renderedPartially="sheet" defaultCommand="true"/>
+          </tc:panel>
+
+        </tc:form>
+      </f:facet>
+
+      <tc:column id="name">
+        <tc:out value="#{luminary.name}" id="t_name"/>
+      </tc:column>
+      <tc:column id="orbit" label="#{overviewBundle.solarArrayOrbit}" sortable="true">
+        <tc:out value="#{luminary.orbit}" id="t_orbit"/>
+      </tc:column>
+      <tc:column sortable="true" align="right" id="distance">
+        <tc:out value="#{luminary.distance}" id="t_distance"/>
+      </tc:column>
+      <tc:column label="#{overviewBundle.solarArrayPeriod}" sortable="true" align="right" id="discoverer">
+        <tc:out value="#{luminary.discoverer}" id="t_discoverer"/>
+      </tc:column>
+    </tc:sheet>
+  </tc:panel>
+</ui:composition>

Added: myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/sheet.xhtml
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/sheet.xhtml?rev=1734579&view=auto
==============================================================================
--- myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/sheet.xhtml (added)
+++ myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/sheet.xhtml Fri Mar 11 15:34:45 2016
@@ -0,0 +1,190 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+-->
+
+<ui:composition template="/main.xhtml"
+                xmlns:tc="http://myfaces.apache.org/tobago/component"
+                xmlns:ui="http://java.sun.com/jsf/facelets"
+                xmlns:f="http://java.sun.com/jsf/core">
+  <ui:param name="title" value="#{overviewBundle.sheet}"/>
+
+  <f:facet name="toolBar">
+<!-- fixme toolBar-->
+    <tc:toolBar>
+      <tc:toolBarCommand
+          label="#{overviewBundle.sheet_resetLabel}" tip="#{overviewBundle.sheet_resetTip}"
+          actionListener="#{overviewController.resetColumnWidths}" />
+      <tc:toolBarCommand label="#" tip="#{overviewBundle.sheet_configTip}" renderedPartially="sheetConfigPopup" >
+        <f:facet name="popup">
+          <tc:popup width="300px" height="325px" id="sheetConfigPopup">
+            <tc:box label="#{overviewBundle.sheet_configTitle}">
+              <f:facet name="layout">
+                <tc:gridLayout rows="auto;auto;auto;auto;auto;auto;auto;auto;auto;auto;auto;1*;auto"/>
+              </f:facet>
+              <tc:selectOneChoice label="showHeader"
+                                  value="#{overviewController.sheetConfig.sheetShowHeader}"
+                                  tip="TODO: show Header Text">
+                <f:selectItem itemValue="#{true}" itemLabel="True"/>
+                <f:selectItem itemValue="#{false}" itemLabel="False"/>
+              </tc:selectOneChoice>
+              <tc:selectBooleanCheckbox
+                  label="showPagingAlways" value="#{overviewController.sheetConfig.showPagingAlways}"/>
+              <tc:in label="first"
+                     value="#{overviewController.sheetConfig.sheetFirst}"
+                     tip="TODO: paging Start Text">
+                <f:validateLongRange minimum="0"/>
+              </tc:in>
+              <tc:in label="rows"
+                     value="#{overviewController.sheetConfig.sheetRows}"
+                     tip="TODO: paging Lenght Text">
+                <f:validateLongRange minimum="0"/>
+              </tc:in>
+
+              <tc:selectOneChoice label="showRowRange"
+                                  value="#{overviewController.sheetConfig.sheetRowPagingPosition}"
+                                  tip="TODO: paging DirectLinkCount Text">
+                <f:selectItems value="#{overviewController.sheetConfig.sheetPagingPositionItems}"/>
+              </tc:selectOneChoice>
+
+              <tc:selectOneChoice label="showPageRange"
+                                  value="#{overviewController.sheetConfig.sheetPagePagingPosition}"
+                                  tip="TODO: paging DirectLinkCount Text">
+                <f:selectItems value="#{overviewController.sheetConfig.sheetPagingPositionItems}"/>
+              </tc:selectOneChoice>
+              <tc:selectBooleanCheckbox label="with arrows"
+                                        value="#{overviewController.sheetConfig.showPageRangeArrows}"
+                                        tip="TODO: showPageRangeArrows Text"/>
+
+              <tc:selectOneChoice label="showDirectLinks"
+                                  value="#{overviewController.sheetConfig.sheetDirectPagingPosition}"
+                                  tip="TODO: paging DirectLinkCount Text">
+                <f:selectItems value="#{overviewController.sheetConfig.sheetPagingPositionItems}"/>
+              </tc:selectOneChoice>
+              <tc:selectBooleanCheckbox label="with arrows"
+                                        value="#{overviewController.sheetConfig.showDirectLinksArrows}"
+                                        tip="TODO: showDirectLinksArrows Text"/>
+
+              <tc:selectOneChoice label="directLinkCount"
+                                  value="#{overviewController.sheetConfig.sheetDirectLinkCount}"
+                                  tip="TODO: paging DirectLinkCount Text">
+                <f:selectItems value="#{overviewController.sheetConfig.sheetDirectLinkCountItems}"/>
+              </tc:selectOneChoice>
+
+              <tc:selectOneChoice label="selectable"
+                                  value="#{overviewController.sheetConfig.selectable}"
+                                  tip="TODO: selectable Text">
+                <f:selectItems value="#{overviewController.sheetConfig.sheetSelectableItems}"/>
+              </tc:selectOneChoice>
+
+              <tc:panel/>
+
+              <tc:flowLayout>
+                <tc:style textAlign="right"/>
+                <tc:button label="Cancel">
+                  <tc:attribute name="popupClose" value="immediate"/>
+                </tc:button>
+                <tc:button label="Ok" renderedPartially=":page:content" defaultCommand="true">
+                  <tc:attribute name="popupClose" value="afterSubmit"/>
+                </tc:button>
+              </tc:flowLayout>
+            </tc:box>
+          </tc:popup>
+        </f:facet>
+      </tc:toolBarCommand>
+    </tc:toolBar>
+  </f:facet>
+
+  <tc:panel>
+
+    <tc:out id="text" escape="false" value="#{overviewBundle.sheet_text}"/>
+
+    <tc:flowLayout>
+      <tc:style textAlign="right"/>
+      <tc:button label="#{overviewBundle.sheet_resetLabel}" tip="#{overviewBundle.sheet_resetTip}"
+                 actionListener="#{overviewController.resetColumnWidths}" />
+      <tc:button label="Sheet Configuration" renderedPartially="sheetConfigPopup">
+        <tc:popupReference for="sheetConfigPopup"/>
+      </tc:button>
+    </tc:flowLayout>
+
+    <tc:sheet value="#{demo.solarList}" id="sheet"
+              columns="3*;1*;3*;3*;3*;3*" var="luminary"
+              state="#{demo.sheetState}"
+              showHeader="#{overviewController.sheetConfig.sheetShowHeader}"
+              showPagingAlways="#{overviewController.sheetConfig.showPagingAlways}"
+              showRowRange="#{overviewController.sheetConfig.sheetRowPagingPosition}"
+              showPageRange="#{overviewController.sheetConfig.sheetPagePagingPosition}"
+              showDirectLinks="#{overviewController.sheetConfig.sheetDirectPagingPosition}"
+              first="#{overviewController.sheetConfig.sheetFirst}"
+              rows="#{overviewController.sheetConfig.sheetRows}"
+              directLinkCount="#{overviewController.sheetConfig.sheetDirectLinkCount}"
+              stateChangeListener="#{demo.stateChangeListener}"
+              sortActionListener="#{demo.sheetSorter}"
+              selectable="#{overviewController.sheetConfig.selectable}"
+              showDirectLinksArrows="#{overviewController.sheetConfig.showDirectLinksArrows}"
+              showPageRangeArrows="#{overviewController.sheetConfig.showPageRangeArrows}"
+              renderedPartially="@this :page:header:headerInfo">
+      <tc:style maxHeight="500px"/>
+<!--
+      <f:facet name="reload">
+        <tc:reload frequency="2000" />
+      </f:facet>
+-->
+      <tc:columnSelector/>
+      <tc:column label="#{overviewBundle.solarArrayName}" id="name" sortable="true" markup="#{luminary.markup}">
+        <tc:out value="#{luminary.name}" id="t_name"/>
+      </tc:column>
+      <tc:column label="#{overviewBundle.solarArrayNumber}" id="number" sortable="false" resizable="false"
+                 tip="#{overviewBundle.solarArrayNumberTip}" align="center">
+        <tc:out value="#{luminary.number}" id="t_number"/>
+      </tc:column>
+      <tc:column label="#{overviewBundle.solarArrayOrbit}" sortable="true" id="orbit">
+<!--
+        <f:facet name="dropDownMenu">
+          <tc:menu>
+            &lt;!&ndash; TODO: example or remove &ndash;&gt;
+            <tc:menuCommand omit="true" label="todo">
+              <tc:dataAttribute name="alert-text" value="Not implemented yet"/>
+            </tc:menuCommand>
+          </tc:menu>
+        </f:facet>
+        <tc:panel>
+          <f:facet name="click">
+            <tc:command actionListener="#{demo.selectOrbit}" renderedPartially="sheet">
+              <f:param value="#{luminary}" name="luminary"/>
+            </tc:command>
+          </f:facet>
+          <f:facet name="layout">
+            <tc:gridLayout rows="20px"/>
+          </f:facet>
+-->
+          <tc:out value="#{luminary.orbit}" id="t_orbit"/>
+        <!--</tc:panel>-->
+      </tc:column>
+      <tc:column label="#{overviewBundle.solarArrayPopulation}" sortable="true" id="population">
+        <tc:in value="#{luminary.population}" id="t_population"/>
+      </tc:column>
+      <tc:column label="#{overviewBundle.solarArrayDistance}" sortable="true" align="right" id="distance">
+        <tc:out value="#{luminary.distance}" id="t_distance"/>
+      </tc:column>
+      <tc:column label="#{overviewBundle.solarArrayPeriod}" sortable="true" align="right" id="period">
+        <tc:out value="#{luminary.period}" id="t_period"/>
+      </tc:column>
+    </tc:sheet>
+  </tc:panel>
+</ui:composition>

Added: myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/x-sheet-nested.xhtml
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/x-sheet-nested.xhtml?rev=1734579&view=auto
==============================================================================
--- myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/x-sheet-nested.xhtml (added)
+++ myfaces/tobago/branches/tobago-3.0.x/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/x-sheet-nested.xhtml Fri Mar 11 15:34:45 2016
@@ -0,0 +1,46 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+-->
+
+<ui:composition template="/main.xhtml"
+                xmlns:tc="http://myfaces.apache.org/tobago/component"
+                xmlns:ui="http://java.sun.com/jsf/facelets">
+  <ui:param name="title" value="#{overviewBundle.sheet}"/>
+
+    <tc:sheet value="#{demo.solarList}" id="sheet"
+              columns="*;2*" var="luminary">
+      <tc:column label="#{overviewBundle.solarArrayName}" id="name" sortable="true" markup="#{luminary.markup}">
+        <tc:out value="#{luminary.name}" id="t_name"/>
+      </tc:column>
+      <tc:column label="Chemical Composition" id="cc" sortable="false" resizable="false"
+                 tip="Chemical Composition of the Crust">
+
+          <tc:sheet value="#{luminary.chemicalComposition}" id="nested"
+                    columns="*;*" var="element">
+              <tc:column label="Element" id="element" sortable="false" resizable="false">
+                  <tc:out value="#{element.name}"/>
+              </tc:column>
+              <tc:column label="Ratio" id="ratio" sortable="false" resizable="false">
+                  <tc:out value="#{element.ratio}"/>
+              </tc:column>
+          </tc:sheet>
+
+      </tc:column>
+    </tc:sheet>
+
+</ui:composition>