Author: ekoneil
Date: Mon Feb 21 16:48:26 2005
New Revision: 154752
URL: http://svn.apache.org/viewcvs?view=rev&rev=154752
Log:
Add support for setting styles on a filtered column.
BEEHIVE-341 data grid should support styles for filtered columns
BB: self
DRT: NetUI / datagrid pass
Added:
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/databinding/datagrid/misc/styleFilteredColumn.jsp
(with props)
incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/DataGridStylesFiltered.xml
Modified:
incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/api/filter/FilterModel.java
incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/api/rendering/StyleModel.java
incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/api/sort/SortModel.java
incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/runtime/model/style/DefaultStyleModel.java
incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/AbstractHtmlTableCell.java
incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/HeaderCell.java
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/databinding/datagrid/site/css/default.css
incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/config/testRecorder-tests.xml
Modified:
incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/api/filter/FilterModel.java
URL:
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/api/filter/FilterModel.java?view=diff&r1=154751&r2=154752
==============================================================================
---
incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/api/filter/FilterModel.java
(original)
+++
incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/api/filter/FilterModel.java
Mon Feb 21 16:48:26 2005
@@ -39,13 +39,13 @@
}
public List<Filter> getFilters(String filterExpression) {
- if(_filters == null)
+ if(_filters == null || filterExpression == null)
return null;
else return
Collections.unmodifiableList(lookupFilters(filterExpression));
}
public boolean isFiltered(String filterExpression) {
- if(_filters == null)
+ if(_filters == null || filterExpression == null)
return false;
if(lookupFilters(filterExpression).size() > 0)
Modified:
incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/api/rendering/StyleModel.java
URL:
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/api/rendering/StyleModel.java?view=diff&r1=154751&r2=154752
==============================================================================
---
incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/api/rendering/StyleModel.java
(original)
+++
incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/api/rendering/StyleModel.java
Mon Feb 21 16:48:26 2005
@@ -67,7 +67,11 @@
public abstract String getHeaderCellSortableClass();
+ public abstract String getHeaderCellFilteredClass();
+
public abstract String getDataCellSortedClass();
+
+ public abstract String getDataCellFilteredClass();
public String buildStyleClassValue(List<String> styleClasses) {
if(styleClasses == null)
Modified:
incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/api/sort/SortModel.java
URL:
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/api/sort/SortModel.java?view=diff&r1=154751&r2=154752
==============================================================================
---
incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/api/sort/SortModel.java
(original)
+++
incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/api/sort/SortModel.java
Mon Feb 21 16:48:26 2005
@@ -32,12 +32,15 @@
}
public List<Sort> getSorts() {
- if(_sorts != null)
- return Collections.unmodifiableList(_sorts);
- else return null;
+ if(_sorts == null)
+ return null;
+ else return Collections.unmodifiableList(_sorts);
}
public boolean isPrimarySort(String sortExpression) {
+ if(sortExpression == null)
+ return false;
+
/* optimize for the case where the sortExpression *is* the primary
sort */
if(_sorts != null &&
_sorts.size() > 0 &&
@@ -48,6 +51,9 @@
}
public boolean isSorted(String sortExpression) {
+ if(sortExpression == null)
+ return false;
+
Sort term = findSort(sortExpression);
if(term == null || term.getDirection() == SortDirection.NONE)
return false;
@@ -58,17 +64,6 @@
public SortDirection getSortDirection(String sortExpression) {
Sort term = findSort(sortExpression);
return term == null ? SortDirection.NONE : term.getDirection();
- }
-
- public String toString() {
- StringBuilder sb = new StringBuilder();
- sb.append("SortModel:\n");
- for(Sort sort : _sorts) {
- sb.append("\t");
- sb.append(sort.toString());
- sb.append("\n");
- }
- return sb.toString();
}
private Sort findSort(String sortExpression) {
Modified:
incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/runtime/model/style/DefaultStyleModel.java
URL:
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/runtime/model/style/DefaultStyleModel.java?view=diff&r1=154751&r2=154752
==============================================================================
---
incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/runtime/model/style/DefaultStyleModel.java
(original)
+++
incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/runtime/model/style/DefaultStyleModel.java
Mon Feb 21 16:48:26 2005
@@ -81,7 +81,15 @@
return buildStyleClass("sorted");
}
+ public String getHeaderCellFilteredClass() {
+ return buildStyleClass("filtered");
+ }
+
public String getDataCellSortedClass() {
return buildStyleClass("sorted");
+ }
+
+ public String getDataCellFilteredClass() {
+ return buildStyleClass("filtered");
}
}
Modified:
incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/AbstractHtmlTableCell.java
URL:
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/AbstractHtmlTableCell.java?view=diff&r1=154751&r2=154752
==============================================================================
---
incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/AbstractHtmlTableCell.java
(original)
+++
incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/AbstractHtmlTableCell.java
Mon Feb 21 16:48:26 2005
@@ -26,6 +26,7 @@
import
org.apache.beehive.netui.databinding.datagrid.api.rendering.DataGridTagModel;
import
org.apache.beehive.netui.databinding.datagrid.runtime.rendering.table.TableRenderer;
import org.apache.beehive.netui.databinding.datagrid.api.sort.SortModel;
+import org.apache.beehive.netui.databinding.datagrid.api.filter.FilterModel;
import org.apache.beehive.netui.tags.IAttributeConsumer;
import org.apache.beehive.netui.tags.IBehaviorConsumer;
import org.apache.beehive.netui.tags.html.HtmlConstants;
@@ -459,8 +460,12 @@
/* todo: refactor. extensibility in supporting style decorators */
ArrayList<String> styleClasses = new ArrayList<String>();
+ FilterModel filterModel =
dataGridModel.getDataGridState().getFilterModel();
+ if(_filterExpression != null &&
filterModel.isFiltered(_filterExpression))
+
styleClasses.add(dataGridModel.getStyleModel().getDataCellFilteredClass());
+
SortModel sortModel = dataGridModel.getDataGridState().getSortModel();
- if(sortModel.isSorted(_sortExpression))
+ if(_sortExpression != null && sortModel.isSorted(_sortExpression))
styleClasses.add(dataGridModel.getStyleModel().getDataCellSortedClass());
if(_cellState.styleClass == null)
@@ -469,7 +474,10 @@
_cellState.styleClass =
dataGridModel.getStyleModel().buildStyleClassValue(styleClasses);
- /* todo: this needs to run in order to cause the nested parameter /
attribute / etc tags to do their work */
+ /*
+ note, this runs in order to allow any nested tags to do their work.
+ this provides support for formatters, parameters, etc
+ */
JspFragment fragment = getJspBody();
StringWriter sw = new StringWriter();
if(fragment != null)
Modified:
incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/HeaderCell.java
URL:
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/HeaderCell.java?view=diff&r1=154751&r2=154752
==============================================================================
---
incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/HeaderCell.java
(original)
+++
incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/HeaderCell.java
Mon Feb 21 16:48:26 2005
@@ -38,6 +38,7 @@
import
org.apache.beehive.netui.databinding.datagrid.runtime.rendering.table.TableRenderer;
import org.apache.beehive.netui.databinding.datagrid.runtime.util.JspUtil;
import org.apache.beehive.netui.databinding.datagrid.api.sort.SortModel;
+import org.apache.beehive.netui.databinding.datagrid.api.filter.FilterModel;
/**
* @netui:tag name="headerCell" description="Render an HTML table head cell
tag" body-content="scriptless"
@@ -550,6 +551,12 @@
assert tableRenderer != null;
ArrayList<String> styleClasses = new ArrayList<String>();
+
+ /* todo: refactor. add a chain of decorators here */
+ FilterModel filterModel =
dataGridModel.getDataGridState().getFilterModel();
+ if(filterModel.isFiltered(_headerCellModel.getFilterExpression()))
+
styleClasses.add(dataGridModel.getStyleModel().getHeaderCellFilteredClass());
+
SortModel sortModel = dataGridModel.getDataGridState().getSortModel();
if(sortModel.isSorted(_headerCellModel.getSortExpression()))
styleClasses.add(dataGridModel.getStyleModel().getHeaderCellSortedClass());
Added:
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/databinding/datagrid/misc/styleFilteredColumn.jsp
URL:
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/databinding/datagrid/misc/styleFilteredColumn.jsp?view=auto&rev=154752
==============================================================================
---
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/databinding/datagrid/misc/styleFilteredColumn.jsp
(added)
+++
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/databinding/datagrid/misc/styleFilteredColumn.jsp
Mon Feb 21 16:48:26 2005
@@ -0,0 +1,83 @@
+<%@ page contentType="text/html;charset=UTF-8" language="java" %>
+<%@ taglib uri="http://beehive.apache.org/netui/tags-databinding-1.0"
prefix="netui-data"%>
+<%@ taglib uri="http://beehive.apache.org/netui/tags-html-1.0" prefix="netui"%>
+<%@ taglib uri="http://beehive.apache.org/netui/tags-template-1.0"
prefix="netui-template"%>
+<%@ taglib uri="http://java.sun.com/jsp/jstl/sql" prefix="sql" %>
+<%@ taglib prefix="datagrid"
tagdir="/WEB-INF/tags/org/apache/beehive/netui/test/databinding/tagfiles" %>
+<netui-template:template templatePage="../site/template.jsp">
+ <netui-template:setAttribute name="title" value="Filtered Style Test"/>
+ <netui-template:section name="body">
+ <p>
+ <datagrid:portfolioXmlBean/>
+ <script language="JavaScript" type="text/JavaScript"
+
src="${pageContext.request.contextPath}/resources/beehive/version1/javascript/netui-datagrid.js"></script>
+<script language="JavaScript">
+function doFilter(gridName) {
+ var netuiFilterUrl = new NetUIFilterURL();
+ netuiFilterUrl.init(window.location.search);
+
+ var filter0 = new NetUIFilter('symbol', 'eq', 'BEAS');
+ var netuiFilters = netuiFilterUrl.lookupFiltersForDataGrid(gridName);
+ if(netuiFilters == null) {
+ netuiFilters = new NetUIFilterList(gridName);
+ netuiFilterUrl.addFilterList(netuiFilters);
+ }
+
+ /* add it to the filter array */
+ var filterArray = [filter0];
+ netuiFilters.replaceFilters(filterArray);
+ var search = netuiFilterUrl.toQueryString();
+
+ /* set the window's location */
+ alert('search: ' + search);
+ if(search != null && search.indexOf('?') < 0)
+ search += '?' + search;
+ window.location = window.location.protocol + "//" + location.host +
window.location.pathname + (search != null ? search : '');
+
+ return false;
+}
+</script>
+ <netui-data:dataGrid dataSource="pageScope.stocks" name="stocks">
+ <netui-data:configurePager pageHref="disabledPagerNPE.jsp"
disableDefaultPager="true" pageSize="10"/>
+ <netui-data:header>
+ <netui-data:headerCell headerText="Symbol"
filterExpression="symbol"/>
+ <netui-data:headerCell headerText="Price"/>
+ </netui-data:header>
+ <netui-data:rows>
+ <netui-data:spanCell value="${container.item.symbol}"
filterExpression="symbol"/>
+ <netui-data:spanCell value="${container.item.price}"/>
+ </netui-data:rows>
+ </netui-data:dataGrid>
+ <br/>
+ <netui:anchor onClick="return doFilter('stocks');"
href="styleFilteredColumn.jsp">Filter</netui:anchor>
+ </p>
+ <p>
+ <b>Styled / filtered header cell</b><br/>
+ <netui-data:dataGrid dataSource="pageScope.stocks" name="stocks">
+ <netui-data:configurePager pageHref="disabledPagerNPE.jsp"
disableDefaultPager="true" pageSize="10"/>
+ <netui-data:header>
+ <netui-data:headerCell headerText="Symbol"
filterExpression="symbol"/>
+ <netui-data:headerCell headerText="Price"/>
+ </netui-data:header>
+ <netui-data:rows>
+ <netui-data:spanCell value="${container.item.symbol}"/>
+ <netui-data:spanCell value="${container.item.price}"/>
+ </netui-data:rows>
+ </netui-data:dataGrid>
+ </p>
+ <p>
+ <b>Styled / filtered data cell</b><br/>
+ <netui-data:dataGrid dataSource="pageScope.stocks" name="stocks">
+ <netui-data:configurePager pageHref="disabledPagerNPE.jsp"
disableDefaultPager="true" pageSize="10"/>
+ <netui-data:header>
+ <netui-data:headerCell headerText="Symbol"/>
+ <netui-data:headerCell headerText="Price"/>
+ </netui-data:header>
+ <netui-data:rows>
+ <netui-data:spanCell value="${container.item.symbol}"
filterExpression="symbol"/>
+ <netui-data:spanCell value="${container.item.price}"/>
+ </netui-data:rows>
+ </netui-data:dataGrid>
+ </p>
+ </netui-template:section>
+</netui-template:template>
Propchange:
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/databinding/datagrid/misc/styleFilteredColumn.jsp
------------------------------------------------------------------------------
svn:eol-style = native
Modified:
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/databinding/datagrid/site/css/default.css
URL:
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/databinding/datagrid/site/css/default.css?view=diff&r1=154751&r2=154752
==============================================================================
---
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/databinding/datagrid/site/css/default.css
(original)
+++
incubator/beehive/trunk/netui/test/webapps/drt/coreWeb/databinding/datagrid/site/css/default.css
Mon Feb 21 16:48:26 2005
@@ -17,6 +17,10 @@
vertical-align: top;
}
+th.datagrid-filtered, td.datagrid-filtered {
+ color:#990022;
+}
+
tr.datagrid-header {
background-color: #5f7797;
color: #ffffff;
Modified:
incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/config/testRecorder-tests.xml
URL:
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/config/testRecorder-tests.xml?view=diff&r1=154751&r2=154752
==============================================================================
---
incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/config/testRecorder-tests.xml
(original)
+++
incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/config/testRecorder-tests.xml
Mon Feb 21 16:48:26 2005
@@ -3067,6 +3067,21 @@
</features>
</test>
<test>
+ <name>DataGridStylesFiltered</name>
+ <description>DataGridStylesFiltered</description>
+ <webapp>coreWeb</webapp>
+ <categories>
+ <category>bvt</category>
+ <category>bvt.struts11</category>
+ <category>databinding</category>
+ <category>datagrid</category>
+ </categories>
+ <features>
+ <feature>Databinding</feature>
+ <feature>Data Grid</feature>
+ </features>
+ </test>
+ <test>
<name>DataGridTemplateColumnTest</name>
<description>DataGridTemplateColumnTest</description>
<webapp>coreWeb</webapp>
Added:
incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/DataGridStylesFiltered.xml
URL:
http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/DataGridStylesFiltered.xml?view=auto&rev=154752
==============================================================================
---
incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/DataGridStylesFiltered.xml
(added)
+++
incubator/beehive/trunk/netui/test/webapps/drt/testRecorder/tests/DataGridStylesFiltered.xml
Mon Feb 21 16:48:26 2005
@@ -0,0 +1,648 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ses:recorderSession
xmlns:ses="http://beehive.apache.org/netui/tools/testrecorder/2004/session">
+ <ses:sessionName>DataGridStylesFiltered</ses:sessionName>
+ <ses:tester>ekoneil</ses:tester>
+ <ses:startDate>21 Feb 2005, 05:31:56.804 PM MST</ses:startDate>
+ <ses:description>Test of rendering the data grid with filtered cells. The
result should be styles applied to the header+data cells, header cell, and data
cells.</ses:description>
+ <ses:tests>
+ <ses:test>
+ <ses:testNumber>1</ses:testNumber>
+ <ses:request>
+ <ses:protocol>HTTP</ses:protocol>
+ <ses:protocolVersion>1.1</ses:protocolVersion>
+ <ses:host>localhost</ses:host>
+ <ses:port>8080</ses:port>
+
<ses:uri>/coreWeb/databinding/datagrid/misc/styleFilteredColumn.jsp</ses:uri>
+ <ses:method>GET</ses:method>
+ <ses:parameters/>
+ <ses:cookies>
+ <ses:cookie>
+ <ses:name>JSESSIONID</ses:name>
+ <ses:value>A8B85E14CE02B551CB9E70AC37FBB4F8</ses:value>
+ </ses:cookie>
+ </ses:cookies>
+ <ses:headers>
+ <ses:header>
+ <ses:name>accept</ses:name>
+
<ses:value>text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5</ses:value>
+ </ses:header>
+ <ses:header>
+ <ses:name>accept-charset</ses:name>
+ <ses:value>ISO-8859-1,utf-8;q=0.7,*;q=0.7</ses:value>
+ </ses:header>
+ <ses:header>
+ <ses:name>accept-encoding</ses:name>
+ <ses:value>gzip,deflate</ses:value>
+ </ses:header>
+ <ses:header>
+ <ses:name>accept-language</ses:name>
+ <ses:value>en-us,en;q=0.5</ses:value>
+ </ses:header>
+ <ses:header>
+ <ses:name>connection</ses:name>
+ <ses:value>keep-alive</ses:value>
+ </ses:header>
+ <ses:header>
+ <ses:name>cookie</ses:name>
+
<ses:value>JSESSIONID=A8B85E14CE02B551CB9E70AC37FBB4F8</ses:value>
+ </ses:header>
+ <ses:header>
+ <ses:name>host</ses:name>
+ <ses:value>localhost:8080</ses:value>
+ </ses:header>
+ <ses:header>
+ <ses:name>keep-alive</ses:name>
+ <ses:value>300</ses:value>
+ </ses:header>
+ <ses:header>
+ <ses:name>user-agent</ses:name>
+ <ses:value>Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US;
rv:1.7.5) Gecko/20041107 Firefox/1.0</ses:value>
+ </ses:header>
+ </ses:headers>
+ </ses:request>
+ <ses:response>
+ <ses:statusCode>200</ses:statusCode>
+ <ses:reason/>
+ <ses:responseBody><![CDATA[<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML
4.01 Transitional//EN"
+ "http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+
+ <head>
+ <title>NetUI Data Grid Samples</title>
+ <link rel="stylesheet"
href="/coreWeb/databinding/datagrid/site/css/default.css" type="text/css"/>
+ </head>
+ <base
href="http://localhost:8080/coreWeb/databinding/datagrid/misc/styleFilteredColumn.jsp">
+ <body>
+ <p>
+ <b>Filtered Style Test</b>
+ <table width="100%">
+ <tr><td></td></tr>
+ <tr><td>
+
+ <p>
+
+
+
+
+
+
+
+ <script language="JavaScript" type="text/JavaScript"
+
src="/coreWeb/resources/beehive/version1/javascript/netui-datagrid.js"></script>
+<script language="JavaScript">
+function doFilter(gridName) {
+ var netuiFilterUrl = new NetUIFilterURL();
+ netuiFilterUrl.init(window.location.search);
+
+ var filter0 = new NetUIFilter('symbol', 'eq', 'BEAS');
+ var netuiFilters = netuiFilterUrl.lookupFiltersForDataGrid(gridName);
+ if(netuiFilters == null) {
+ netuiFilters = new NetUIFilterList(gridName);
+ netuiFilterUrl.addFilterList(netuiFilters);
+ }
+
+ /* add it to the filter array */
+ var filterArray = [filter0];
+ netuiFilters.replaceFilters(filterArray);
+ var search = netuiFilterUrl.toQueryString();
+
+ /* set the window's location */
+ alert('search: ' + search);
+ if(search != null && search.indexOf('?') < 0)
+ search += '?' + search;
+ window.location = window.location.protocol + "//" + location.host +
window.location.pathname + (search != null ? search : '');
+
+ return false;
+}
+</script>
+
+<table class="datagrid">
+
+
+
+
+
+
+
+<tr class="datagrid-header">
+ <th class="datagrid">Symbol</th>
+
+
+ <th class="datagrid">Price</th>
+
+
+
+</tr>
+
+
+
+
+
+<tr class="datagrid-even">
+ <td class="datagrid"><span>BEAS</span></td>
+
+ <td class="datagrid"><span>14.35</span></td>
+
+
+</tr>
+<tr class="datagrid-odd">
+ <td class="datagrid"><span>CSCO</span></td>
+
+ <td class="datagrid"><span>19.42</span></td>
+
+
+</tr>
+<tr class="datagrid-even">
+ <td class="datagrid"><span>GE</span></td>
+
+ <td class="datagrid"><span>59.42</span></td>
+
+
+</tr>
+<tr class="datagrid-odd">
+ <td class="datagrid"><span>RHAT</span></td>
+
+ <td class="datagrid"><span>18.2</span></td>
+
+
+</tr>
+<tr class="datagrid-even">
+ <td class="datagrid"><span>YHOO</span></td>
+
+ <td class="datagrid"><span>48.16</span></td>
+
+
+</tr>
+ </table>
+
+
+ <br/>
+ <a href="/coreWeb/databinding/datagrid/misc/styleFilteredColumn.jsp"
onclick="return doFilter('stocks');">Filter</a>
+ </p>
+ <p>
+ <b>Styled / filtered header cell</b><br/>
+
+<table class="datagrid">
+
+
+
+
+
+
+
+<tr class="datagrid-header">
+ <th class="datagrid">Symbol</th>
+
+
+ <th class="datagrid">Price</th>
+
+
+
+</tr>
+
+
+
+
+
+<tr class="datagrid-even">
+ <td class="datagrid"><span>BEAS</span></td>
+
+ <td class="datagrid"><span>14.35</span></td>
+
+
+</tr>
+<tr class="datagrid-odd">
+ <td class="datagrid"><span>CSCO</span></td>
+
+ <td class="datagrid"><span>19.42</span></td>
+
+
+</tr>
+<tr class="datagrid-even">
+ <td class="datagrid"><span>GE</span></td>
+
+ <td class="datagrid"><span>59.42</span></td>
+
+
+</tr>
+<tr class="datagrid-odd">
+ <td class="datagrid"><span>RHAT</span></td>
+
+ <td class="datagrid"><span>18.2</span></td>
+
+
+</tr>
+<tr class="datagrid-even">
+ <td class="datagrid"><span>YHOO</span></td>
+
+ <td class="datagrid"><span>48.16</span></td>
+
+
+</tr>
+ </table>
+
+
+ </p>
+ <p>
+ <b>Styled / filtered data cell</b><br/>
+
+<table class="datagrid">
+
+
+
+
+
+
+
+<tr class="datagrid-header">
+ <th class="datagrid">Symbol</th>
+
+
+ <th class="datagrid">Price</th>
+
+
+
+</tr>
+
+
+
+
+
+<tr class="datagrid-even">
+ <td class="datagrid"><span>BEAS</span></td>
+
+ <td class="datagrid"><span>14.35</span></td>
+
+
+</tr>
+<tr class="datagrid-odd">
+ <td class="datagrid"><span>CSCO</span></td>
+
+ <td class="datagrid"><span>19.42</span></td>
+
+
+</tr>
+<tr class="datagrid-even">
+ <td class="datagrid"><span>GE</span></td>
+
+ <td class="datagrid"><span>59.42</span></td>
+
+
+</tr>
+<tr class="datagrid-odd">
+ <td class="datagrid"><span>RHAT</span></td>
+
+ <td class="datagrid"><span>18.2</span></td>
+
+
+</tr>
+<tr class="datagrid-even">
+ <td class="datagrid"><span>YHOO</span></td>
+
+ <td class="datagrid"><span>48.16</span></td>
+
+
+</tr>
+ </table>
+
+
+ </p>
+
+ </td></tr>
+ </p>
+ <table>
+ <tr><td><a
href="/netuiDRT/databinding/datagrid/basic/index.jsp">Home</a></td></tr>
+ </table>
+ </p>
+ </body>
+
+</html>]]></ses:responseBody>
+ </ses:response>
+ </ses:test>
+ <ses:test>
+ <ses:testNumber>2</ses:testNumber>
+ <ses:request>
+ <ses:protocol>HTTP</ses:protocol>
+ <ses:protocolVersion>1.1</ses:protocolVersion>
+ <ses:host>localhost</ses:host>
+ <ses:port>8080</ses:port>
+
<ses:uri>/coreWeb/databinding/datagrid/misc/styleFilteredColumn.jsp</ses:uri>
+ <ses:method>GET</ses:method>
+ <ses:parameters>
+ <ses:parameter>
+ <ses:name>netui_filter</ses:name>
+ <ses:value>stocks;symbol~eq~BEAS</ses:value>
+ </ses:parameter>
+ </ses:parameters>
+ <ses:cookies>
+ <ses:cookie>
+ <ses:name>JSESSIONID</ses:name>
+ <ses:value>A8B85E14CE02B551CB9E70AC37FBB4F8</ses:value>
+ </ses:cookie>
+ </ses:cookies>
+ <ses:headers>
+ <ses:header>
+ <ses:name>accept</ses:name>
+
<ses:value>text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5</ses:value>
+ </ses:header>
+ <ses:header>
+ <ses:name>accept-charset</ses:name>
+ <ses:value>ISO-8859-1,utf-8;q=0.7,*;q=0.7</ses:value>
+ </ses:header>
+ <ses:header>
+ <ses:name>accept-encoding</ses:name>
+ <ses:value>gzip,deflate</ses:value>
+ </ses:header>
+ <ses:header>
+ <ses:name>accept-language</ses:name>
+ <ses:value>en-us,en;q=0.5</ses:value>
+ </ses:header>
+ <ses:header>
+ <ses:name>connection</ses:name>
+ <ses:value>keep-alive</ses:value>
+ </ses:header>
+ <ses:header>
+ <ses:name>cookie</ses:name>
+
<ses:value>JSESSIONID=A8B85E14CE02B551CB9E70AC37FBB4F8</ses:value>
+ </ses:header>
+ <ses:header>
+ <ses:name>host</ses:name>
+ <ses:value>localhost:8080</ses:value>
+ </ses:header>
+ <ses:header>
+ <ses:name>keep-alive</ses:name>
+ <ses:value>300</ses:value>
+ </ses:header>
+ <ses:header>
+ <ses:name>referer</ses:name>
+
<ses:value>http://localhost:8080/coreWeb/databinding/datagrid/misc/styleFilteredColumn.jsp</ses:value>
+ </ses:header>
+ <ses:header>
+ <ses:name>user-agent</ses:name>
+ <ses:value>Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US;
rv:1.7.5) Gecko/20041107 Firefox/1.0</ses:value>
+ </ses:header>
+ </ses:headers>
+ </ses:request>
+ <ses:response>
+ <ses:statusCode>200</ses:statusCode>
+ <ses:reason/>
+ <ses:responseBody><![CDATA[<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML
4.01 Transitional//EN"
+ "http://www.w3.org/TR/html4/loose.dtd">
+<html lang="en">
+
+ <head>
+ <title>NetUI Data Grid Samples</title>
+ <link rel="stylesheet"
href="/coreWeb/databinding/datagrid/site/css/default.css" type="text/css"/>
+ </head>
+ <base
href="http://localhost:8080/coreWeb/databinding/datagrid/misc/styleFilteredColumn.jsp">
+ <body>
+ <p>
+ <b>Filtered Style Test</b>
+ <table width="100%">
+ <tr><td></td></tr>
+ <tr><td>
+
+ <p>
+
+
+
+
+
+
+
+ <script language="JavaScript" type="text/JavaScript"
+
src="/coreWeb/resources/beehive/version1/javascript/netui-datagrid.js"></script>
+<script language="JavaScript">
+function doFilter(gridName) {
+ var netuiFilterUrl = new NetUIFilterURL();
+ netuiFilterUrl.init(window.location.search);
+
+ var filter0 = new NetUIFilter('symbol', 'eq', 'BEAS');
+ var netuiFilters = netuiFilterUrl.lookupFiltersForDataGrid(gridName);
+ if(netuiFilters == null) {
+ netuiFilters = new NetUIFilterList(gridName);
+ netuiFilterUrl.addFilterList(netuiFilters);
+ }
+
+ /* add it to the filter array */
+ var filterArray = [filter0];
+ netuiFilters.replaceFilters(filterArray);
+ var search = netuiFilterUrl.toQueryString();
+
+ /* set the window's location */
+ alert('search: ' + search);
+ if(search != null && search.indexOf('?') < 0)
+ search += '?' + search;
+ window.location = window.location.protocol + "//" + location.host +
window.location.pathname + (search != null ? search : '');
+
+ return false;
+}
+</script>
+
+<table class="datagrid">
+
+
+
+
+
+
+
+<tr class="datagrid-header">
+ <th class="datagrid-filtered datagrid">Symbol</th>
+
+
+ <th class="datagrid">Price</th>
+
+
+
+</tr>
+
+
+
+
+
+<tr class="datagrid-even">
+ <td class="datagrid-filtered datagrid"><span>BEAS</span></td>
+
+ <td class="datagrid"><span>14.35</span></td>
+
+
+</tr>
+<tr class="datagrid-odd">
+ <td class="datagrid-filtered datagrid"><span>CSCO</span></td>
+
+ <td class="datagrid"><span>19.42</span></td>
+
+
+</tr>
+<tr class="datagrid-even">
+ <td class="datagrid-filtered datagrid"><span>GE</span></td>
+
+ <td class="datagrid"><span>59.42</span></td>
+
+
+</tr>
+<tr class="datagrid-odd">
+ <td class="datagrid-filtered datagrid"><span>RHAT</span></td>
+
+ <td class="datagrid"><span>18.2</span></td>
+
+
+</tr>
+<tr class="datagrid-even">
+ <td class="datagrid-filtered datagrid"><span>YHOO</span></td>
+
+ <td class="datagrid"><span>48.16</span></td>
+
+
+</tr>
+ </table>
+
+
+ <br/>
+ <a href="/coreWeb/databinding/datagrid/misc/styleFilteredColumn.jsp"
onclick="return doFilter('stocks');">Filter</a>
+ </p>
+ <p>
+ <b>Styled / filtered header cell</b><br/>
+
+<table class="datagrid">
+
+
+
+
+
+
+
+<tr class="datagrid-header">
+ <th class="datagrid-filtered datagrid">Symbol</th>
+
+
+ <th class="datagrid">Price</th>
+
+
+
+</tr>
+
+
+
+
+
+<tr class="datagrid-even">
+ <td class="datagrid"><span>BEAS</span></td>
+
+ <td class="datagrid"><span>14.35</span></td>
+
+
+</tr>
+<tr class="datagrid-odd">
+ <td class="datagrid"><span>CSCO</span></td>
+
+ <td class="datagrid"><span>19.42</span></td>
+
+
+</tr>
+<tr class="datagrid-even">
+ <td class="datagrid"><span>GE</span></td>
+
+ <td class="datagrid"><span>59.42</span></td>
+
+
+</tr>
+<tr class="datagrid-odd">
+ <td class="datagrid"><span>RHAT</span></td>
+
+ <td class="datagrid"><span>18.2</span></td>
+
+
+</tr>
+<tr class="datagrid-even">
+ <td class="datagrid"><span>YHOO</span></td>
+
+ <td class="datagrid"><span>48.16</span></td>
+
+
+</tr>
+ </table>
+
+
+ </p>
+ <p>
+ <b>Styled / filtered data cell</b><br/>
+
+<table class="datagrid">
+
+
+
+
+
+
+
+<tr class="datagrid-header">
+ <th class="datagrid">Symbol</th>
+
+
+ <th class="datagrid">Price</th>
+
+
+
+</tr>
+
+
+
+
+
+<tr class="datagrid-even">
+ <td class="datagrid-filtered datagrid"><span>BEAS</span></td>
+
+ <td class="datagrid"><span>14.35</span></td>
+
+
+</tr>
+<tr class="datagrid-odd">
+ <td class="datagrid-filtered datagrid"><span>CSCO</span></td>
+
+ <td class="datagrid"><span>19.42</span></td>
+
+
+</tr>
+<tr class="datagrid-even">
+ <td class="datagrid-filtered datagrid"><span>GE</span></td>
+
+ <td class="datagrid"><span>59.42</span></td>
+
+
+</tr>
+<tr class="datagrid-odd">
+ <td class="datagrid-filtered datagrid"><span>RHAT</span></td>
+
+ <td class="datagrid"><span>18.2</span></td>
+
+
+</tr>
+<tr class="datagrid-even">
+ <td class="datagrid-filtered datagrid"><span>YHOO</span></td>
+
+ <td class="datagrid"><span>48.16</span></td>
+
+
+</tr>
+ </table>
+
+
+ </p>
+
+ </td></tr>
+ </p>
+ <table>
+ <tr><td><a
href="/netuiDRT/databinding/datagrid/basic/index.jsp">Home</a></td></tr>
+ </table>
+ </p>
+ </body>
+
+</html>]]></ses:responseBody>
+ </ses:response>
+ </ses:test>
+ </ses:tests>
+ <ses:endDate>21 Feb 2005, 05:32:13.969 PM MST</ses:endDate>
+ <ses:testCount>2</ses:testCount>
+</ses:recorderSession>
\ No newline at end of file