aboutsummaryrefslogtreecommitdiffstats
path: root/tests
diff options
context:
space:
mode:
authorMatti Tahvonen <matti.tahvonen@itmill.com>2011-04-11 09:40:35 +0000
committerMatti Tahvonen <matti.tahvonen@itmill.com>2011-04-11 09:40:35 +0000
commit0265ad0c28dd192cc50e22264a640e660da68251 (patch)
tree8f854af67e8aea482ce0af55bfa6f2a08d6988db /tests
parentd45dbbd903378f649f84f4a5f67ef584a465e161 (diff)
downloadvaadin-framework-0265ad0c28dd192cc50e22264a640e660da68251.tar.gz
vaadin-framework-0265ad0c28dd192cc50e22264a640e660da68251.zip
fixes #6283
svn changeset:18197/svn branch:6.5
Diffstat (limited to 'tests')
-rw-r--r--tests/src/com/vaadin/tests/components/table/ColumnReorderEvent.java97
1 files changed, 97 insertions, 0 deletions
diff --git a/tests/src/com/vaadin/tests/components/table/ColumnReorderEvent.java b/tests/src/com/vaadin/tests/components/table/ColumnReorderEvent.java
new file mode 100644
index 0000000000..4c1fc70e5e
--- /dev/null
+++ b/tests/src/com/vaadin/tests/components/table/ColumnReorderEvent.java
@@ -0,0 +1,97 @@
+package com.vaadin.tests.components.table;
+
+import com.vaadin.data.Item;
+import com.vaadin.data.util.IndexedContainer;
+import com.vaadin.tests.components.TestBase;
+import com.vaadin.ui.HorizontalLayout;
+import com.vaadin.ui.Label;
+import com.vaadin.ui.Table;
+
+@SuppressWarnings("serial")
+public class ColumnReorderEvent extends TestBase {
+
+ private Label order = new Label("Column order");
+
+ @Override
+ protected void setup() {
+
+ HorizontalLayout widths = new HorizontalLayout();
+ widths.setSpacing(true);
+ widths.setWidth("50%");
+
+ order.setCaption("Column 1 width");
+ widths.addComponent(order);
+
+ addComponent(widths);
+
+ Table table1 = initTable();
+ addComponent(table1);
+
+ order.setValue(aToString(table1.getVisibleColumns()));
+
+ }
+
+ private String aToString(Object[] visibleColumns) {
+ StringBuilder sb = new StringBuilder();
+ for (Object object : visibleColumns) {
+ sb.append(object.toString());
+ sb.append(" | ");
+ }
+ return sb.toString();
+ }
+
+ @Override
+ protected String getDescription() {
+ return "Test ColumnReorderEvents";
+ }
+
+ @Override
+ protected Integer getTicketNumber() {
+ return 6283;
+ }
+
+ private static final int ROWS = 100;
+
+ private Table initTable() {
+ final Table table = new Table();
+ table.setWidth("100%");
+ table.setImmediate(true);
+
+ IndexedContainer idx = new IndexedContainer();
+ idx.addContainerProperty("firstname", String.class, null);
+ idx.addContainerProperty("lastname", String.class, null);
+
+ Item i = idx.addItem(1);
+ i.getItemProperty("firstname").setValue("John");
+ i.getItemProperty("lastname").setValue("Johnson");
+
+ i = idx.addItem(2);
+ i.getItemProperty("firstname").setValue("Jane");
+ i.getItemProperty("lastname").setValue("Janeine");
+
+ for (int index = 3; index < ROWS; index++) {
+ i = idx.addItem(index);
+ i.getItemProperty("firstname").setValue("Jane");
+ i.getItemProperty("lastname").setValue("Janeine");
+ }
+
+ idx.addContainerProperty("property", String.class, "foobar");
+
+ table.setContainerDataSource(idx);
+
+ table.setColumnHeader("firstname", "FirstName");
+ table.setColumnHeader("lastname", "LastName");
+
+ table.addListener(new Table.ColumnReorderListener() {
+ public void columnReorder(
+ com.vaadin.ui.Table.ColumnReorderEvent event) {
+ order.setValue(aToString(table.getVisibleColumns()));
+ }
+ });
+
+ table.setColumnReorderingAllowed(true);
+
+ return table;
+ }
+
+}