aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArtur Signell <artur.signell@itmill.com>2008-11-24 14:26:46 +0000
committerArtur Signell <artur.signell@itmill.com>2008-11-24 14:26:46 +0000
commit3e063a16f832c0779fb0d86cf7bd13d59375e027 (patch)
tree1a48c31c1482fb254cb78a9d6a823dda2add6e7d
parent97afa5125a210dcb86d83cb54ab5acd0c9727724 (diff)
downloadvaadin-framework-3e063a16f832c0779fb0d86cf7bd13d59375e027.tar.gz
vaadin-framework-3e063a16f832c0779fb0d86cf7bd13d59375e027.zip
Testcase and fix for #2222 - OrderedLayout spacing not working
svn changeset:5964/svn branch:trunk
-rw-r--r--WebContent/ITMILL/themes/default/orderedlayout/orderedlayout.css7
-rw-r--r--WebContent/ITMILL/themes/default/styles.css5
-rw-r--r--WebContent/ITMILL/themes/tests-tickets/styles.css27
-rw-r--r--src/com/itmill/toolkit/terminal/gwt/client/ui/IOrderedLayout.java2
-rw-r--r--src/com/itmill/toolkit/terminal/gwt/client/ui/layout/CellBasedLayout.java18
-rw-r--r--src/com/itmill/toolkit/tests/tickets/Ticket2222.java47
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);
+ }
+
+}