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 2014/07/16 10:57:22 UTC
svn commit: r1610942 - in /myfaces/tobago/trunk:
tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/
tobago-example/tobago-example-demo/src/main/webapp/content/02-sheet/03/
tobago-theme/tobago-theme-standard/src/mai...
Author: lofwyr
Date: Wed Jul 16 08:57:21 2014
New Revision: 1610942
URL: http://svn.apache.org/r1610942
Log:
TOBAGO-1203: Sheet-Header: Support for input components in header-cells
Modified:
myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/SheetFilter.java
myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/main/webapp/content/02-sheet/03/sheet-filter.xhtml
myfaces/tobago/trunk/tobago-theme/tobago-theme-standard/src/main/java/org/apache/myfaces/tobago/renderkit/html/standard/standard/tag/SheetRenderer.java
Modified: myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/SheetFilter.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/SheetFilter.java?rev=1610942&r1=1610941&r2=1610942&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/SheetFilter.java (original)
+++ myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/main/java/org/apache/myfaces/tobago/example/demo/SheetFilter.java Wed Jul 16 08:57:21 2014
@@ -58,8 +58,8 @@ public class SheetFilter {
public SheetFilter() {
distanceRangeList = Arrays.asList(
- new DistanceRange(0, Integer.MAX_VALUE),
- new DistanceRange(0, 10),
+ new DistanceRange(-1, Integer.MAX_VALUE),
+ new DistanceRange(-1, 10),
new DistanceRange(10, 100),
new DistanceRange(100, 1000),
new DistanceRange(1000, 10000),
@@ -83,12 +83,20 @@ public class SheetFilter {
public String filter() {
filtered.clear();
+ if (name == null) {
+ name = "";
+ }
+ if (orbit == null) {
+ orbit = "";
+ }
+ if (discoverer == null) {
+ discoverer = "";
+ }
for (final SolarObject solarObject : demo.getSolarArray()) {
- if (solarObject.getName().toLowerCase().contains(name.toLowerCase())
- && solarObject.getOrbit().toLowerCase().contains(orbit.toLowerCase())
- && distance.getMin() < solarObject.getDistance()
- && solarObject.getDistance() <= distance.getMax()
- && solarObject.getDiscoverer().toLowerCase().contains(discoverer.toLowerCase())) {
+ if (StringUtils.containsIgnoreCase(solarObject.getName(), name)
+ && StringUtils.containsIgnoreCase(solarObject.getOrbit(), orbit)
+ && distance.getMin() < solarObject.getDistance() && solarObject.getDistance() <= distance.getMax()
+ && StringUtils.containsIgnoreCase(solarObject.getDiscoverer(), discoverer)) {
filtered.add(solarObject);
}
}
Modified: myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/main/webapp/content/02-sheet/03/sheet-filter.xhtml
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/main/webapp/content/02-sheet/03/sheet-filter.xhtml?rev=1610942&r1=1610941&r2=1610942&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/main/webapp/content/02-sheet/03/sheet-filter.xhtml (original)
+++ myfaces/tobago/trunk/tobago-example/tobago-example-demo/src/main/webapp/content/02-sheet/03/sheet-filter.xhtml Wed Jul 16 08:57:21 2014
@@ -17,7 +17,7 @@
* limitations under the License.
-->
-<ui:composition template="/WEB-INF/tags/layout/overview.xhtml"
+<ui:composition template="/WEB-INF/tags/layout/plain.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">
@@ -39,25 +39,30 @@
<f:facet name="header">
<tc:form>
+
<tc:out value="Name"/>
- <tc:out value="of"/>
+ <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
+ <!-- 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>
- <tc:in value="#{sheetFilter.discoverer}"/>
- <tc:button action="#{sheetFilter.filter}" renderedPartially="sheet" defaultCommand="true"/>
+ <!-- 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>
Modified: myfaces/tobago/trunk/tobago-theme/tobago-theme-standard/src/main/java/org/apache/myfaces/tobago/renderkit/html/standard/standard/tag/SheetRenderer.java
URL: http://svn.apache.org/viewvc/myfaces/tobago/trunk/tobago-theme/tobago-theme-standard/src/main/java/org/apache/myfaces/tobago/renderkit/html/standard/standard/tag/SheetRenderer.java?rev=1610942&r1=1610941&r2=1610942&view=diff
==============================================================================
--- myfaces/tobago/trunk/tobago-theme/tobago-theme-standard/src/main/java/org/apache/myfaces/tobago/renderkit/html/standard/standard/tag/SheetRenderer.java (original)
+++ myfaces/tobago/trunk/tobago-theme/tobago-theme-standard/src/main/java/org/apache/myfaces/tobago/renderkit/html/standard/standard/tag/SheetRenderer.java Wed Jul 16 08:57:21 2014
@@ -103,7 +103,7 @@ public class SheetRenderer extends Layou
private static final Integer HEIGHT_0 = 0;
private static final String DOTS = "...";
- @Override
+ @Override
public void prepareRender(final FacesContext facesContext, final UIComponent component) throws IOException {
super.prepareRender(facesContext, component);
ensureHeader(facesContext, (UISheet) component);
@@ -820,7 +820,8 @@ public class SheetRenderer extends Layou
String sorterImage = null;
Markup markup = Markup.NULL;
String tip = (String) column.getAttributes().get(Attributes.TIP);
- if (cell.getColumnSpan() == 1) {
+ // sorter icons should only displayed when there is only 1 column and not input
+ if (cell.getColumnSpan() == 1 && cellComponent instanceof UIOut) {
final boolean sortable = ComponentUtils.getBooleanAttribute(column, Attributes.SORTABLE);
if (sortable) {
UICommand sortCommand = (UICommand) column.getFacet(Facets.SORTER);