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 2017/03/29 09:32:19 UTC

svn commit: r1789310 - in /myfaces/tobago/branches/TOBAGO-1719: ./ tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/ tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/20-selector/

Author: lofwyr
Date: Wed Mar 29 09:32:19 2017
New Revision: 1789310

URL: http://svn.apache.org/viewvc?rev=1789310&view=rev
Log:
Merged from trunk
demo: make selectable mode editable [from revision 1788502]

Modified:
    myfaces/tobago/branches/TOBAGO-1719/   (props changed)
    myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/SheetController.java
    myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/20-selector/sheet-column-selector.xhtml

Propchange: myfaces/tobago/branches/TOBAGO-1719/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Wed Mar 29 09:32:19 2017
@@ -1,4 +1,4 @@
 /myfaces/tobago/branches/tobago-1.5.x:1356585,1357124
 /myfaces/tobago/branches/tobago-3.0.x:1781306,1781310,1781380
 /myfaces/tobago/branches/tobago-tree-table:1226794-1341423
-/myfaces/tobago/trunk:1571193,1571804,1571816,1571941,1571945,1571962,1571966,1576730,1589960,1591854,1600239,1600818,1601860,1602151,1602154,1602343,1604224,1606201,1607642,1609696-1609697,1609718,1610942,1610948,1610970,1610989,1611011,1611259,1611264,1611276,1611329,1611338-1611339,1611571,1613015,1613032,1614827,1614853,1615053,1615114,1615121,1617310,1619789,1621101,1621107,1621134,1621156,1621264,1621282,1621332,1622222,1622243,1622508,1623934,1624033,1625968,1625972,1626270,1628899,1628953,1636842,1636911,1640117,1640147,1640541,1640548,1640638,1640761,1640917,1641575,1641635,1641772,1641775,1641777,1656502,1656507,1657180,1657269,1657276,1657279,1658343,1658909,1658912,1659026,1659031,1660696,1660699,1660708,1660714,1665486,1665521,1665549,1665569-1665570,1666464,1667304,1667306-1667307,1667309,1668147,1668153,1668249,1675330,1675565,1675584,1675588-1675589,1675636,1676030,1676035,1676038,1679031,1680197,1681981,1682187,1682448,1682545,1682548,1683231,1683306,1683373,1683664
 ,1686204,1687354,1693426,1696720,1698292,1698297,1700742,1700795,1701249,1701251,1701256,1701980,1709006,1725894,1726691,1726986,1727161,1731050-1731051,1731054,1731057,1731218-1731219,1787403,1787422,1787443,1787651,1787780,1787926,1788112,1788115,1788125,1788196,1788214-1788215,1788225,1788239,1788381,1788385,1788392,1788484
+/myfaces/tobago/trunk:1571193,1571804,1571816,1571941,1571945,1571962,1571966,1576730,1589960,1591854,1600239,1600818,1601860,1602151,1602154,1602343,1604224,1606201,1607642,1609696-1609697,1609718,1610942,1610948,1610970,1610989,1611011,1611259,1611264,1611276,1611329,1611338-1611339,1611571,1613015,1613032,1614827,1614853,1615053,1615114,1615121,1617310,1619789,1621101,1621107,1621134,1621156,1621264,1621282,1621332,1622222,1622243,1622508,1623934,1624033,1625968,1625972,1626270,1628899,1628953,1636842,1636911,1640117,1640147,1640541,1640548,1640638,1640761,1640917,1641575,1641635,1641772,1641775,1641777,1656502,1656507,1657180,1657269,1657276,1657279,1658343,1658909,1658912,1659026,1659031,1660696,1660699,1660708,1660714,1665486,1665521,1665549,1665569-1665570,1666464,1667304,1667306-1667307,1667309,1668147,1668153,1668249,1675330,1675565,1675584,1675588-1675589,1675636,1676030,1676035,1676038,1679031,1680197,1681981,1682187,1682448,1682545,1682548,1683231,1683306,1683373,1683664
 ,1686204,1687354,1693426,1696720,1698292,1698297,1700742,1700795,1701249,1701251,1701256,1701980,1709006,1725894,1726691,1726986,1727161,1731050-1731051,1731054,1731057,1731218-1731219,1787403,1787422,1787443,1787651,1787780,1787926,1788112,1788115,1788125,1788196,1788214-1788215,1788225,1788239,1788381,1788385,1788392,1788484,1788502

Modified: myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/SheetController.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/SheetController.java?rev=1789310&r1=1789309&r2=1789310&view=diff
==============================================================================
--- myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/SheetController.java (original)
+++ myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/SheetController.java Wed Mar 29 09:32:19 2017
@@ -21,6 +21,8 @@ package org.apache.myfaces.tobago.exampl
 
 import org.apache.myfaces.tobago.context.Markup;
 import org.apache.myfaces.tobago.example.data.SolarObject;
+import org.apache.myfaces.tobago.model.SelectItem;
+import org.apache.myfaces.tobago.model.Selectable;
 import org.apache.myfaces.tobago.model.SheetState;
 import org.apache.myfaces.tobago.util.ComponentUtils;
 import org.slf4j.Logger;
@@ -46,6 +48,22 @@ public class SheetController implements
 
   private static final Logger LOG = LoggerFactory.getLogger(SheetController.class);
 
+  private static final SelectItem[] SHEET_SELECTABLE;
+
+  static {
+    List<Selectable> collect = new ArrayList<Selectable>();
+    for (Selectable selectable : Selectable.values()) {
+      if (selectable.isSupportedBySheet()) {
+        collect.add(selectable);
+      }
+    }
+    SHEET_SELECTABLE = new SelectItem[collect.size()];
+    for (int i = 0; i < collect.size(); i++) {
+      Selectable selectable = collect.get(i);
+      SHEET_SELECTABLE[i] = new SelectItem(selectable, selectable.name());
+    }
+  }
+
   private List<SolarObject> solarList;
   private List<SolarObject> hugeSolarList;
   private SheetState sheetState;
@@ -53,6 +71,7 @@ public class SheetController implements
   private boolean automaticLayout;
   private List<Markup> markup;
   private int columnEventSample;
+  private Selectable selectable = Selectable.multi;
 
   public SheetController() {
     solarList = SolarObject.getList();
@@ -99,18 +118,6 @@ public class SheetController implements
     return selectedSolarObject;
   }
 
-  public int getNumberOfSelections() {
-    return sheetState.getSelectedRows().size();
-  }
-
-  public int getSelectedRowNumber() {
-    if (sheetState.getSelectedRows().size() <= 0) {
-      return -1;
-    } else {
-      return sheetState.getSelectedRows().get(0);
-    }
-  }
-
   public boolean isAutomaticLayout() {
     return automaticLayout;
   }
@@ -159,4 +166,16 @@ public class SheetController implements
     dateTimeConverter.setPattern("yyyy");
     return dateTimeConverter;
   }
+
+  public Selectable getSelectable() {
+    return selectable;
+  }
+
+  public void setSelectable(Selectable selectable) {
+    this.selectable = selectable;
+  }
+
+  public SelectItem[] getSelectableModes() {
+   return SHEET_SELECTABLE;
+  }
 }

Modified: myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/20-selector/sheet-column-selector.xhtml
URL: http://svn.apache.org/viewvc/myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/20-selector/sheet-column-selector.xhtml?rev=1789310&r1=1789309&r2=1789310&view=diff
==============================================================================
--- myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/20-selector/sheet-column-selector.xhtml (original)
+++ myfaces/tobago/branches/TOBAGO-1719/tobago-example/tobago-example-demo/src/main/webapp/content/20-component/080-sheet/20-selector/sheet-column-selector.xhtml Wed Mar 29 09:32:19 2017
@@ -20,7 +20,8 @@
 <ui:composition template="/main.xhtml"
                 xmlns="http://www.w3.org/1999/xhtml"
                 xmlns:tc="http://myfaces.apache.org/tobago/component"
-                xmlns:ui="http://java.sun.com/jsf/facelets">
+                xmlns:ui="http://java.sun.com/jsf/facelets"
+                xmlns:f="http://java.sun.com/jsf/core">
   <ui:param name="title" value="#{demoBundle.sheet_column_selector} &lt;tc:columnSelector>"/>
   <p>To insert a selectable column, use the <code class="language-markup">&lt;tc:columnSelector/></code> tag.
     With the <code>selectable</code> in the <code class="language-markup">&lt;tc:sheet/></code> tag, you can
@@ -44,7 +45,7 @@
     &lt;/tc:column>
     ...</code></pre>
     <tc:sheet id="s4" value="#{sheetController.solarList}" var="object" rows="2"
-              selectable="singleOrNone" state="#{sheetController.sheetState}">
+              selectable="#{sheetController.selectable}" state="#{sheetController.sheetState}">
       <tc:columnSelector/>
       <tc:column label="Name">
         <tc:in value="#{object.name}" labelLayout="skip"/>
@@ -63,7 +64,12 @@
       </tc:column>
     </tc:sheet>
 
+    <tc:selectOneRadio label="Mode" value="#{sheetController.selectable}">
+      <tc:selectItems value="#{sheetController.selectableModes}"/>
+      <f:ajax render="s4"/>
+    </tc:selectOneRadio>
+
     <tc:button id="b1" label="Submit"/>
-    <tc:out id="o1" label="Row Number" value="#{sheetController.selectedRowNumber}"/>
+    <tc:out id="o1" label="Row Number" value="#{sheetController.sheetState.selectedRows}"/>
   </tc:section>
 </ui:composition>