From: Jouni Koivuviita Date: Fri, 15 Aug 2008 08:39:22 +0000 (+0000) Subject: Added testcase for #1982. X-Git-Tag: 6.7.0.beta1~4352 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=5505b377fc7a402c3cef1efab5bb8ad054ad71e5;p=vaadin-framework.git Added testcase for #1982. svn changeset:5189/svn branch:trunk --- diff --git a/src/com/itmill/toolkit/tests/tickets/Ticket1982.java b/src/com/itmill/toolkit/tests/tickets/Ticket1982.java new file mode 100644 index 0000000000..892b8ee538 --- /dev/null +++ b/src/com/itmill/toolkit/tests/tickets/Ticket1982.java @@ -0,0 +1,83 @@ +package com.itmill.toolkit.tests.tickets; + +import java.util.ArrayList; +import java.util.List; + +import com.itmill.toolkit.Application; +import com.itmill.toolkit.ui.Button; +import com.itmill.toolkit.ui.ExpandLayout; +import com.itmill.toolkit.ui.GridLayout; +import com.itmill.toolkit.ui.Label; +import com.itmill.toolkit.ui.Window; +import com.itmill.toolkit.ui.Button.ClickEvent; +import com.itmill.toolkit.ui.Button.ClickListener; + +public class Ticket1982 extends Application { + + private List components = new ArrayList(); + + public void init() { + Window main = new Window(); + setMainWindow(main); + + GridLayout gl = new GridLayout(2, 2); + gl.setSizeFull(); + main.setLayout(gl); + gl.setMargin(true); + + TitleBar t1 = new TitleBar("Title 1", gl); + TitleBar t2 = new TitleBar("Title 2", gl); + TitleBar t3 = new TitleBar("Title 3", gl); + TitleBar t4 = new TitleBar("Title 4", gl); + components.add(t1); + components.add(t2); + components.add(t3); + components.add(t4); + + restoreComponents(gl); + + } + + private void restoreComponents(GridLayout gl) { + gl.removeAllComponents(); + gl.addComponent((TitleBar) components.get(0)); + gl.addComponent((TitleBar) components.get(1)); + gl.addComponent((TitleBar) components.get(2)); + gl.addComponent((TitleBar) components.get(3)); + } + + private class TitleBar extends ExpandLayout { + + private Button max = new Button("Max"); + private Button min = new Button("Min"); + private GridLayout layout; + + public TitleBar(String title, GridLayout layout) { + super(ExpandLayout.ORIENTATION_HORIZONTAL); + this.layout = layout; + addComponent(new Label(title)); + addComponent(max); + addComponent(min); + min.setVisible(false); + + max.addListener(new ClickListener() { + public void buttonClick(ClickEvent event) { + min.setVisible(true); + max.setVisible(false); + TitleBar.this.layout.removeAllComponents(); + TitleBar.this.layout + .addComponent(TitleBar.this, 0, 0, 1, 1); + } + }); + min.addListener(new ClickListener() { + public void buttonClick(ClickEvent event) { + min.setVisible(false); + max.setVisible(true); + restoreComponents(TitleBar.this.layout); + } + }); + } + + } + +}