123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208 |
- package com.vaadin.tests.tickets;
-
- import com.vaadin.data.Item;
- import com.vaadin.data.Property.ValueChangeEvent;
- import com.vaadin.data.Property.ValueChangeListener;
- import com.vaadin.data.util.HierarchicalContainer;
- import com.vaadin.server.LegacyApplication;
- import com.vaadin.server.Sizeable;
- import com.vaadin.ui.AbstractOrderedLayout;
- import com.vaadin.ui.Accordion;
- import com.vaadin.ui.Component;
- import com.vaadin.ui.CustomComponent;
- import com.vaadin.ui.Label;
- import com.vaadin.ui.LegacyWindow;
- import com.vaadin.ui.Panel;
- import com.vaadin.ui.TabSheet;
- import com.vaadin.ui.TabSheet.SelectedTabChangeEvent;
- import com.vaadin.ui.TabSheet.SelectedTabChangeListener;
- import com.vaadin.ui.Table;
- import com.vaadin.ui.TextField;
- import com.vaadin.ui.VerticalLayout;
- import com.vaadin.ui.VerticalSplitPanel;
-
- public class Ticket2061b extends LegacyApplication implements
- SelectedTabChangeListener {
-
- private LegacyWindow mainWindow;
- private Panel p;
-
- @Override
- public void init() {
- mainWindow = new LegacyWindow("Ticket 2061b");
- mainWindow.setSizeFull();
- AbstractOrderedLayout mainLayout = (AbstractOrderedLayout) mainWindow
- .getContent();
- mainLayout.setSizeFull();
- mainLayout.setMargin(false);
- setMainWindow(mainWindow);
-
- VerticalSplitPanel sp = new VerticalSplitPanel();
- sp.setSizeFull();
- sp.setSplitPosition(20, Sizeable.UNITS_PIXELS);
-
- VerticalLayout pl = new VerticalLayout();
- pl.setMargin(true);
- p = new Panel("This is a panel", pl);
- p.setSizeFull();
- Label label1 = new Label("This is a table!");
- label1.setHeight("1500px");
- label1.setWidth("1500px");
- pl.addComponent(label1);
- p.setScrollTop(50);
- // MyTable table1 = new MyTable(24, "table1");
- // table1.loadTable(1000);
-
- // MyTable table2 = new MyTable(24, "table2");
- // table2.loadTable(1000);
-
- // MyTable table3 = new MyTable(24, "table3");
- // table3.loadTable(1000);
-
- // MyAccordion accordion = new MyAccordion(new Component[] { table1,
- // table2 }, "Test");
-
- Label a = new Label("abc123");
- TextField tf = new TextField("A large textfield");
- tf.setHeight("2500px");
- tf.setWidth("2500px");
-
- TabsAcc tab = new TabsAcc(new Component[] { p, a, tf });
- tab.addListener(this);
-
- mainLayout.addComponent(sp);
- sp.addComponent(new Label("C 1"));
- // sp.addComponent(new Label("C 2"));
- // sp.setHeight("100px");
-
- sp.addComponent(tab);
- // mainLayout.addComponent(new Label("Filler"));
- // mainLayout.addComponent(tab);
- // mainLayout.setExpandRatio(tab, 1.0f);
- // sp.addComponent(new Label("Filler"));
- // sp.addComponent(tab);
-
- pl = new VerticalLayout();
- pl.setMargin(true);
- p = new Panel("This is a panel", pl);
- p.setWidth("2000px");
- p.setHeight("2000px");
- VerticalLayout p2l = new VerticalLayout();
- p2l.setMargin(true);
- Panel p2 = new Panel("This is another panel", p2l);
- p2.setWidth("2500px");
- p2.setHeight("2500px");
- label1 = new Label("This is a table!");
- label1.setHeight("1500px");
- label1.setWidth("1500px");
- p2l.addComponent(label1);
- pl.addComponent(p2);
-
- tab.addTab(p, "Panel with panel", null);
- }
-
- public class MyTable extends CustomComponent implements ValueChangeListener {
-
- private Table table = new Table();
- private String[] columns;
- private VerticalLayout layout = new VerticalLayout();
-
- public MyTable(int columnNumber, String id) {
- setId(id);
- setCompositionRoot(layout);
- setSizeFull();
- columns = initializeColumns(columnNumber);
- table.setWidth("100%");
- table.setHeight("100%");
- table.setColumnReorderingAllowed(true);
- table.setColumnCollapsingAllowed(true);
- table.setSelectable(true);
- table.setMultiSelect(false);
- table.setNullSelectionAllowed(false);
- // table.setRowHeaderMode(Table.ROW_HEADER_MODE_ID);
- table.addListener(this);
- table.setContainerDataSource(createContainer());
- layout.addComponent(table);
- }
-
- public void loadTable(int itemNumber) {
- table.removeAllItems();
- for (int j = 0; j < itemNumber; j++) {
- Item rowItem = table.addItem(j);
- if (rowItem != null) {
- for (int i = 0; i < columns.length; i++) {
- rowItem.getItemProperty(columns[i]).setValue(
- "Value" + j);
- }
- }
- }
- }
-
- private HierarchicalContainer createContainer() {
- final HierarchicalContainer c = new HierarchicalContainer();
- for (int i = 0; i < columns.length; i++) {
- c.addContainerProperty(columns[i], String.class, null);
- }
- return c;
- }
-
- private String[] initializeColumns(int number) {
- String[] columns = new String[number];
- for (int i = 0; i < number; i++) {
- columns[i] = "Column" + i;
- }
- return columns;
- }
-
- @Override
- public void valueChange(ValueChangeEvent event) {
-
- }
-
- }
-
- public class Tabs extends TabSheet {
-
- public Tabs(Component[] components) {
- this.setWidth("100%");
- this.setHeight("100%");
- for (int i = 0; i < components.length; i++) {
- this.addTab(components[i], components[i].getId(), null);
- }
-
- }
-
- }
-
- public class TabsAcc extends Accordion {
-
- public TabsAcc(Component[] components) {
- this.setWidth("100%");
- this.setHeight("100%");
- for (int i = 0; i < components.length; i++) {
- this.addTab(components[i], components[i].getId(), null);
- }
-
- }
-
- }
-
- public class MyAccordion extends Accordion {
-
- public MyAccordion(Component[] components, String id) {
- this.setWidth("100%");
- this.setHeight("100%");
- setId(id);
- for (int i = 0; i < components.length; i++) {
- this.addTab(components[i], components[i].getId(), null);
- }
- }
- }
-
- @Override
- public void selectedTabChange(SelectedTabChangeEvent event) {
- p.setScrollTop(10);
-
- }
-
- }
|