You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by jd...@apache.org on 2009/12/30 15:35:42 UTC

svn commit: r894625 - in /wicket/branches/wicket-1.4.x/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table: DataTable.html DataTable.java

Author: jdonnerstag
Date: Wed Dec 30 14:35:41 2009
New Revision: 894625

URL: http://svn.apache.org/viewvc?rev=894625&view=rev
Log:
Ability to add CSS style to table body in DataTable
Issue: WICKET-2656

Modified:
    wicket/branches/wicket-1.4.x/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTable.html
    wicket/branches/wicket-1.4.x/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTable.java

Modified: wicket/branches/wicket-1.4.x/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTable.html
URL: http://svn.apache.org/viewvc/wicket/branches/wicket-1.4.x/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTable.html?rev=894625&r1=894624&r2=894625&view=diff
==============================================================================
--- wicket/branches/wicket-1.4.x/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTable.html (original)
+++ wicket/branches/wicket-1.4.x/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTable.html Wed Dec 30 14:35:41 2009
@@ -22,7 +22,7 @@
 <tfoot wicket:id="bottomToolbars">
 	<wicket:container wicket:id="toolbar"></wicket:container>
 </tfoot>
-<tbody>
+<tbody wicket:id="body">
 	<tr wicket:id="rows">
 		<td wicket:id="cells">
 			<span wicket:id="cell">[cell]</span>

Modified: wicket/branches/wicket-1.4.x/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTable.java
URL: http://svn.apache.org/viewvc/wicket/branches/wicket-1.4.x/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTable.java?rev=894625&r1=894624&r2=894625&view=diff
==============================================================================
--- wicket/branches/wicket-1.4.x/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTable.java (original)
+++ wicket/branches/wicket-1.4.x/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/DataTable.java Wed Dec 30 14:35:41 2009
@@ -19,6 +19,7 @@
 import org.apache.wicket.Component;
 import org.apache.wicket.behavior.AbstractBehavior;
 import org.apache.wicket.behavior.IBehavior;
+import org.apache.wicket.behavior.SimpleAttributeModifier;
 import org.apache.wicket.extensions.markup.html.repeater.data.grid.DataGridView;
 import org.apache.wicket.markup.ComponentTag;
 import org.apache.wicket.markup.html.WebMarkupContainer;
@@ -111,9 +112,12 @@
 
 	private final DataGridView<T> datagrid;
 
+	private final WebMarkupContainer body;
+
 	private final IColumn<?>[] columns;
 
 	private final RepeatingView topToolbars;
+
 	private final RepeatingView bottomToolbars;
 
 	/**
@@ -138,7 +142,7 @@
 		}
 
 		this.columns = columns;
-
+		body = newBodyContainer("body");
 		datagrid = new DataGridView<T>("rows", columns, dataProvider)
 		{
 			private static final long serialVersionUID = 1L;
@@ -171,8 +175,8 @@
 			}
 		};
 		datagrid.setRowsPerPage(rowsPerPage);
-		add(datagrid);
-
+		body.add(datagrid);
+		add(body);
 		topToolbars = new ToolbarsContainer("topToolbars");
 		bottomToolbars = new ToolbarsContainer("bottomToolbars");
 		add(topToolbars);
@@ -180,6 +184,28 @@
 	}
 
 	/**
+	 * Create the MarkupContainer for the <tbody> tag. Users may subclass it to provide their own
+	 * (modified) implementation.
+	 * 
+	 * @param id
+	 * @return A new markup container
+	 */
+	protected WebMarkupContainer newBodyContainer(final String id)
+	{
+		return new WebMarkupContainer(id);
+	}
+
+	/**
+	 * Set the 'class' attribute for the tbody tag.
+	 * 
+	 * @param cssStyle
+	 */
+	public final void setTableBodyCss(final String cssStyle)
+	{
+		body.add(new SimpleAttributeModifier("class", cssStyle));
+	}
+
+	/**
 	 * Adds a toolbar to the datatable that will be displayed after the data
 	 * 
 	 * @param toolbar