You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by mg...@apache.org on 2016/03/08 23:36:47 UTC

[06/52] [abbrv] wicket git commit: WICKET-6095 Multiline headers in DataTable

WICKET-6095 Multiline headers in DataTable


Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/ed7c9976
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/ed7c9976
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/ed7c9976

Branch: refs/heads/lambdas
Commit: ed7c99768ab5764a76d77a1282d28b2f048fd1b8
Parents: 4904e4c
Author: Martin Tzvetanov Grigorov <mg...@apache.org>
Authored: Thu Feb 18 21:46:44 2016 +0100
Committer: Martin Tzvetanov Grigorov <mg...@apache.org>
Committed: Thu Feb 18 21:46:44 2016 +0100

----------------------------------------------------------------------
 .../html/repeater/data/table/HeadersToolbar.java      | 11 ++++++++++-
 .../markup/html/repeater/data/table/IColumn.java      | 14 ++++++++++++++
 2 files changed, 24 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/ed7c9976/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/HeadersToolbar.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/HeadersToolbar.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/HeadersToolbar.java
index 998a9a8..153b5bf 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/HeadersToolbar.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/HeadersToolbar.java
@@ -20,6 +20,7 @@ import java.util.Iterator;
 import java.util.LinkedList;
 import java.util.List;
 
+import org.apache.wicket.AttributeModifier;
 import org.apache.wicket.extensions.markup.html.repeater.data.sort.ISortStateLocator;
 import org.apache.wicket.extensions.markup.html.repeater.data.sort.OrderByBorder;
 import org.apache.wicket.extensions.markup.html.repeater.data.table.DataTable.CssAttributeBehavior;
@@ -81,7 +82,7 @@ public class HeadersToolbar<S> extends AbstractToolbar
 			{
 				final IColumn<T, S> column = item.getModelObject();
 
-				WebMarkupContainer header = null;
+				WebMarkupContainer header;
 
 				if (column.isSortable())
 				{
@@ -108,6 +109,14 @@ public class HeadersToolbar<S> extends AbstractToolbar
 					header.add(cssAttributeBehavior);
 				}
 
+				if (column.getColspan() > 1) {
+					header.add(AttributeModifier.replace("colspan", column.getColspan()));
+				}
+
+				if (column.getRowspan() > 1) {
+					header.add(AttributeModifier.replace("rowspan", column.getRowspan()));
+				}
+
 				item.add(header);
 				item.setRenderBodyOnly(true);
 				header.add(column.getHeader("label"));

http://git-wip-us.apache.org/repos/asf/wicket/blob/ed7c9976/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/IColumn.java
----------------------------------------------------------------------
diff --git a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/IColumn.java b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/IColumn.java
index 0a257bc..7f3314d 100644
--- a/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/IColumn.java
+++ b/wicket-extensions/src/main/java/org/apache/wicket/extensions/markup/html/repeater/data/table/IColumn.java
@@ -57,4 +57,18 @@ public interface IColumn<T, S> extends ICellPopulator<T>
 	 * @return true if header should be sortable
 	 */
 	boolean isSortable();
+
+	/**
+	 * @return The number of rows the header of this column should span
+	 */
+	default int getRowspan() {
+		return 1;
+	}
+
+	/**
+	 * @return The number of columns the header of this column should span
+	 */
+	default int getColspan() {
+		return 1;
+	}
 }