diff options
author | Artur Signell <artur.signell@itmill.com> | 2008-11-24 14:26:46 +0000 |
---|---|---|
committer | Artur Signell <artur.signell@itmill.com> | 2008-11-24 14:26:46 +0000 |
commit | 3e063a16f832c0779fb0d86cf7bd13d59375e027 (patch) | |
tree | 1a48c31c1482fb254cb78a9d6a823dda2add6e7d | |
parent | 97afa5125a210dcb86d83cb54ab5acd0c9727724 (diff) | |
download | vaadin-framework-3e063a16f832c0779fb0d86cf7bd13d59375e027.tar.gz vaadin-framework-3e063a16f832c0779fb0d86cf7bd13d59375e027.zip |
Testcase and fix for #2222 - OrderedLayout spacing not working
svn changeset:5964/svn branch:trunk
6 files changed, 87 insertions, 19 deletions
diff --git a/WebContent/ITMILL/themes/default/orderedlayout/orderedlayout.css b/WebContent/ITMILL/themes/default/orderedlayout/orderedlayout.css index 857b7f0356..95e5cdf3c0 100644 --- a/WebContent/ITMILL/themes/default/orderedlayout/orderedlayout.css +++ b/WebContent/ITMILL/themes/default/orderedlayout/orderedlayout.css @@ -18,10 +18,7 @@ padding-left: 18px; } -.i-orderedlayout-vspacing { +.i-orderedlayout-spacing { padding-top: 8px; -} - -.i-orderedlayout-hspacing { padding-left: 8px; -}
\ No newline at end of file +} diff --git a/WebContent/ITMILL/themes/default/styles.css b/WebContent/ITMILL/themes/default/styles.css index 91a01e01b4..a6c891575d 100644 --- a/WebContent/ITMILL/themes/default/styles.css +++ b/WebContent/ITMILL/themes/default/styles.css @@ -940,11 +940,8 @@ input.i-modified, padding-left: 18px; } -.i-orderedlayout-vspacing { +.i-orderedlayout-spacing { padding-top: 8px; -} - -.i-orderedlayout-hspacing { padding-left: 8px; } .i-panel, diff --git a/WebContent/ITMILL/themes/tests-tickets/styles.css b/WebContent/ITMILL/themes/tests-tickets/styles.css index 22bea69470..1162167be2 100644 --- a/WebContent/ITMILL/themes/tests-tickets/styles.css +++ b/WebContent/ITMILL/themes/tests-tickets/styles.css @@ -182,3 +182,30 @@ background: lightgreen; } + + +/*****************************************************************************/ +/* Ticket 2222 */ +/*****************************************************************************/ +.i-orderedlayout-ticket2222 .i-orderedlayout-margin-top { + padding-top: 100px; +} +.i-orderedlayout-ticket2222 .i-orderedlayout-margin-right { + padding-right: 20px; +} +.i-orderedlayout-ticket2222 .i-orderedlayout-margin-bottom { + padding-bottom: 30px; +} + +.i-orderedlayout-ticket2222 .i-orderedlayout-margin-left { + padding-left: 40px; +} + +.i-orderedlayout-ticket2222 .i-orderedlayout-spacing { + padding-top: 50px; + padding-left: 60px; +} + +.borders { + border: 1px solid black; +} diff --git a/src/com/itmill/toolkit/terminal/gwt/client/ui/IOrderedLayout.java b/src/com/itmill/toolkit/terminal/gwt/client/ui/IOrderedLayout.java index 32b94acab2..c6001b7cce 100644 --- a/src/com/itmill/toolkit/terminal/gwt/client/ui/IOrderedLayout.java +++ b/src/com/itmill/toolkit/terminal/gwt/client/ui/IOrderedLayout.java @@ -21,7 +21,7 @@ public class IOrderedLayout extends CellBasedLayout { private static final String MARGIN_TOP_LEFT_CLASSNAMES = "i-orderedlayout-margin-top i-orderedlayout-margin-left";
private static final String MARGIN_BOTTOM_RIGHT_CLASSNAMES = "i-orderedlayout-margin-bottom i-orderedlayout-margin-right";
- private static final String SPACING_CLASSNAMES = "i-orderedlayout-hspacing i-orderedlayout-vspacing";
+ private static final String SPACING_CLASSNAMES = "i-orderedlayout-spacing";
private String marginsMeasureStyleName = "";
private int orientation = ORIENTATION_HORIZONTAL;
diff --git a/src/com/itmill/toolkit/terminal/gwt/client/ui/layout/CellBasedLayout.java b/src/com/itmill/toolkit/terminal/gwt/client/ui/layout/CellBasedLayout.java index a1a928ab14..25133025ca 100644 --- a/src/com/itmill/toolkit/terminal/gwt/client/ui/layout/CellBasedLayout.java +++ b/src/com/itmill/toolkit/terminal/gwt/client/ui/layout/CellBasedLayout.java @@ -158,15 +158,13 @@ public abstract class CellBasedLayout extends ComplexPanel implements Container } private void updateSpacing(boolean spacing) { - if (spacing != spacingEnabled) { - spacingEnabled = spacing; - if (spacing) { - activeSpacing.hSpacing = spacingFromCSS.hSpacing; - activeSpacing.vSpacing = spacingFromCSS.vSpacing; - } else { - activeSpacing.hSpacing = 0; - activeSpacing.vSpacing = 0; - } + spacingEnabled = spacing; + if (spacing) { + activeSpacing.hSpacing = spacingFromCSS.hSpacing; + activeSpacing.vSpacing = spacingFromCSS.vSpacing; + } else { + activeSpacing.hSpacing = 0; + activeSpacing.vSpacing = 0; } } @@ -244,6 +242,8 @@ public abstract class CellBasedLayout extends ComplexPanel implements Container root.removeChild(measurement); updateMargins(activeMarginsInfo); + updateSpacing(spacingEnabled); + return true; } diff --git a/src/com/itmill/toolkit/tests/tickets/Ticket2222.java b/src/com/itmill/toolkit/tests/tickets/Ticket2222.java new file mode 100644 index 0000000000..1e06e7ea8c --- /dev/null +++ b/src/com/itmill/toolkit/tests/tickets/Ticket2222.java @@ -0,0 +1,47 @@ +package com.itmill.toolkit.tests.tickets; + +import com.itmill.toolkit.Application; +import com.itmill.toolkit.ui.Label; +import com.itmill.toolkit.ui.OrderedLayout; +import com.itmill.toolkit.ui.Window; + +public class Ticket2222 extends Application { + + public void init() { + Window w = new Window(getClass().getSimpleName()); + setMainWindow(w); + setTheme("tests-tickets"); + createUI((OrderedLayout) w.getLayout()); + } + + private void createUI(OrderedLayout layout) { + OrderedLayout horiz = new OrderedLayout( + OrderedLayout.ORIENTATION_HORIZONTAL); + horiz.setSpacing(true); + horiz.setMargin(true); + horiz.setStyleName("ticket2222"); + + horiz.addComponent(new Label("Horiz spacing: 60px;")); + horiz.addComponent(new Label("Margin-left: 40px")); + horiz.addComponent(new Label("Margin-top: 100px;")); + horiz.addComponent(new Label("Margin-right: 20px;")); + horiz.addComponent(new Label("Margin-bottom: 30px;")); + horiz.addStyleName("borders"); + + OrderedLayout vert = new OrderedLayout( + OrderedLayout.ORIENTATION_VERTICAL); + vert.setSizeUndefined(); + vert.setSpacing(true); + vert.setMargin(false); + vert.setStyleName("ticket2222"); + vert.addComponent(new Label("Vert spacing: 50px;")); + vert.addComponent(new Label("No margins")); + vert.addComponent(new Label("label 3")); + vert.addStyleName("borders"); + + layout.addComponent(horiz); + layout.addComponent(new Label(" ")); + layout.addComponent(vert); + } + +} |