Author: ekoneil Date: Thu Jan 27 10:38:46 2005 New Revision: 126635 URL: http://svn.apache.org/viewcvs?view=rev&rev=126635 Log: Usability fixes in the grid.
- start putting the header cell model into the PageContext so that it's properties are data bindable - add "getLastRowForPage" and "getDataSetSize" methods on the PagerModel BB: self DRT: NetUI / data grid pass Modified: incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/model/PagerModel.java incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/AbstractColumn.java incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/AbstractHtmlColumn.java Modified: incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/model/PagerModel.java Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/model/PagerModel.java?view=diff&rev=126635&p1=incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/model/PagerModel.java&r1=126634&p2=incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/model/PagerModel.java&r2=126635 ============================================================================== --- incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/model/PagerModel.java (original) +++ incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/databinding/datagrid/model/PagerModel.java Thu Jan 27 10:38:46 2005 @@ -52,6 +52,12 @@ updatePagerState(); } + public int getDataSetSize() { + if(_dataSetSize == null) + return 0; + else return _dataSetSize; + } + public String getPageAction() { return _pageAction; } @@ -99,6 +105,10 @@ public void setRow(int row) { _currentRow = row; updatePagerState(); + } + + public int getLastRowForPage() { + return _currentRow + getPageSize(); } public int getFirstPage() { Modified: incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/AbstractColumn.java Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/AbstractColumn.java?view=diff&rev=126635&p1=incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/AbstractColumn.java&r1=126634&p2=incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/AbstractColumn.java&r2=126635 ============================================================================== --- incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/AbstractColumn.java (original) +++ incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/AbstractColumn.java Thu Jan 27 10:38:46 2005 @@ -90,7 +90,13 @@ assert renderState == ColumnsModel.DATA_RENDER_STATE || renderState == ColumnsModel.HEADER_RENDER_STATE; - CellModel model = internalGetCellModel(); + CellModel model = null; + + if(renderState == ColumnsModel.HEADER_RENDER_STATE) + model = internalGetHeaderCellModel(); + else if(renderState == ColumnsModel.DATA_RENDER_STATE) + model = internalGetCellModel(); + model.setDataGridModel(dataGridModel); model.setColumnsModel(columns); @@ -101,21 +107,26 @@ StringBuilder content = new StringBuilder(); AbstractRenderAppender appender = new StringBuilderRenderAppender(content); - if(renderState == ColumnsModel.HEADER_RENDER_STATE) + if(renderState == ColumnsModel.HEADER_RENDER_STATE) { renderHeaderCell(appender); - else if(renderState == ColumnsModel.DATA_RENDER_STATE) + } + else if(renderState == ColumnsModel.DATA_RENDER_STATE) { renderDataCell(appender); + } + else assert false; + + DataGridUtil.removeColumnModel(getJspContext()); if(content != null && content.length() > 0) getJspContext().getOut().println(content.toString()); - - DataGridUtil.removeColumnModel(getJspContext()); } return; } protected abstract CellModel internalGetCellModel(); + + protected abstract CellModel internalGetHeaderCellModel(); protected abstract void renderHeaderCell(AbstractRenderAppender appender) throws IOException, JspException; Modified: incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/AbstractHtmlColumn.java Url: http://svn.apache.org/viewcvs/incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/AbstractHtmlColumn.java?view=diff&rev=126635&p1=incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/AbstractHtmlColumn.java&r1=126634&p2=incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/AbstractHtmlColumn.java&r2=126635 ============================================================================== --- incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/AbstractHtmlColumn.java (original) +++ incubator/beehive/trunk/netui/src/tags-databinding/org/apache/beehive/netui/tags/databinding/datagrid/AbstractHtmlColumn.java Thu Jan 27 10:38:46 2005 @@ -24,6 +24,7 @@ import javax.servlet.jsp.JspException; import org.apache.beehive.netui.databinding.datagrid.model.DataGridModel; +import org.apache.beehive.netui.databinding.datagrid.model.CellModel; import org.apache.beehive.netui.databinding.datagrid.model.sort.SortModel; import org.apache.beehive.netui.databinding.datagrid.model.cell.HeaderCellModel; import org.apache.beehive.netui.databinding.datagrid.rendering.table.TableRenderer; @@ -598,6 +599,7 @@ protected void renderHeaderCellContents(AbstractRenderAppender appender) throws IOException, JspException { + JspFragment fragment = getJspBody(); StringWriter sw = new StringWriter(); String bodyContent = null; @@ -616,6 +618,10 @@ protected abstract void renderDataCellContents(AbstractRenderAppender appender, String output) throws IOException, JspException; + + protected CellModel internalGetHeaderCellModel() { + return _headerCellModel; + } protected void applyAttributes() throws JspException {
