From b89b7c82962ee876a57d047f6fb41419e6a5987f Mon Sep 17 00:00:00 2001 From: Artur Signell Date: Fri, 29 Aug 2008 08:06:57 +0000 Subject: [PATCH] Test case for #1966 problem svn changeset:5294/svn branch:trunk --- .../toolkit/tests/tickets/Ticket1966.java | 127 ++++++++++++++++++ 1 file changed, 127 insertions(+) create mode 100644 src/com/itmill/toolkit/tests/tickets/Ticket1966.java diff --git a/src/com/itmill/toolkit/tests/tickets/Ticket1966.java b/src/com/itmill/toolkit/tests/tickets/Ticket1966.java new file mode 100644 index 0000000000..45e9705806 --- /dev/null +++ b/src/com/itmill/toolkit/tests/tickets/Ticket1966.java @@ -0,0 +1,127 @@ +package com.itmill.toolkit.tests.tickets; + +import java.util.HashMap; +import java.util.Map; + +import com.itmill.toolkit.Application; +import com.itmill.toolkit.ui.Button; +import com.itmill.toolkit.ui.GridLayout; +import com.itmill.toolkit.ui.Layout; +import com.itmill.toolkit.ui.OrderedLayout; +import com.itmill.toolkit.ui.Panel; +import com.itmill.toolkit.ui.Window; +import com.itmill.toolkit.ui.Layout.AlignmentHandler; + +public class Ticket1966 extends Application { + + private static final int LEFT = OrderedLayout.ALIGNMENT_LEFT; + private static final int CENTER = OrderedLayout.ALIGNMENT_HORIZONTAL_CENTER; + private static final int RIGHT = OrderedLayout.ALIGNMENT_RIGHT; + private static final int TOP = OrderedLayout.ALIGNMENT_TOP; + private static final int VCENTER = OrderedLayout.ALIGNMENT_VERTICAL_CENTER; + private static final int BOTTOM = OrderedLayout.ALIGNMENT_BOTTOM; + + private static Map names = new HashMap(); + static { + names.put(new Integer(LEFT), "Left"); + names.put(new Integer(CENTER), "Center"); + names.put(new Integer(RIGHT), "Right"); + names.put(new Integer(BOTTOM), "Bottom"); + names.put(new Integer(VCENTER), "Vcenter"); + names.put(new Integer(TOP), "Top"); + } + + public void init() { + Window w = new Window(getClass().getSimpleName()); + setMainWindow(w); + // setTheme("tests-tickets"); + w.setLayout(new GridLayout(2, 2)); + // w.getLayout().setSizeFull(); + createUI(w.getLayout()); + } + + private void createUI(Layout layout) { + orderedLayout(layout); + gridLayout(layout); + } + + private void gridLayout(Layout layout) { + Panel p = new Panel("GridLayout"); + layout.addComponent(p); + + GridLayout gl = new GridLayout(1, 4); + gl.setCaption("Horizontal"); + Button b; + + b = new Button("Wide button"); + b.setWidth("500"); + gl.addComponent(b); + + addButtons(gl); + + p.addComponent(gl); + + /* VERTICAL */ + + gl = new GridLayout(4, 1); + gl.setCaption("Vertical"); + + addButtons(gl); + + b = new Button("High button"); + b.setHeight(200); + gl.addComponent(b); + + p.addComponent(gl); + + } + + private void orderedLayout(Layout layout) { + Panel p = new Panel("OrderedLayout"); + layout.addComponent(p); + + OrderedLayout ol = new OrderedLayout(); + ol.setCaption("Horizontal"); + // ol.setWidth("100%"); + + Button b; + + b = new Button("Wide button"); + b.setWidth("500"); + ol.addComponent(b); + + addButtons(ol); + p.addComponent(ol); + + /* VERTICAL */ + + ol = new OrderedLayout(OrderedLayout.ORIENTATION_HORIZONTAL); + ol.setCaption("Vertical"); + + addButtons(ol); + b = new Button("High button"); + b.setHeight(200); + ol.addComponent(b); + + p.addComponent(ol); + + } + + private void addButtons(AlignmentHandler ol) { + ol.addComponent(getButton(ol, LEFT, TOP)); + ol.addComponent(getButton(ol, CENTER, VCENTER)); + ol.addComponent(getButton(ol, RIGHT, BOTTOM)); + + } + + private Button getButton(AlignmentHandler l, int hAlign, int vAlign) { + Button b = new Button("Narrow Button - " + + names.get(new Integer(hAlign)) + " - " + + names.get(new Integer(vAlign))); + b.setWidth("100"); + l.setComponentAlignment(b, hAlign, vAlign); + + return b; + + } +} -- 2.39.5