From aaafd7e4d4853ba2a22f5d6d5568a36a427abe12 Mon Sep 17 00:00:00 2001 From: Matti Tahvonen Date: Wed, 12 Nov 2008 09:48:24 +0000 Subject: [PATCH] IGridLayout enhancements: correct available space and canvas size svn changeset:5872/svn branch:trunk --- .../terminal/gwt/client/ui/IGridLayout.java | 20 ++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/src/com/itmill/toolkit/terminal/gwt/client/ui/IGridLayout.java b/src/com/itmill/toolkit/terminal/gwt/client/ui/IGridLayout.java index 2d0238c9ee..182c102715 100644 --- a/src/com/itmill/toolkit/terminal/gwt/client/ui/IGridLayout.java +++ b/src/com/itmill/toolkit/terminal/gwt/client/ui/IGridLayout.java @@ -307,8 +307,20 @@ public class IGridLayout extends SimplePanel implements Paintable, Container { } x += columnWidths[i] + spacingPixels; } - // ensure canvas is right size - canvas.setPixelSize(x - spacingPixels, y - spacingPixels); + + if ("".equals(width)) { + canvas.setWidth((x - spacingPixels) + "px"); + } else { + // main element defines width + canvas.setWidth(""); + } + int canvasHeight; + if ("".equals(height)) { + canvasHeight = y - spacingPixels; + } else { + canvasHeight = getOffsetHeight() - marginTopAndBottom; + } + canvas.setHeight(canvasHeight + "px"); } private void renderRemainingComponents(LinkedList pendingCells) { @@ -718,7 +730,9 @@ public class IGridLayout extends SimplePanel implements Paintable, Container { } public RenderSpace getAllocatedSpace() { - return new RenderSpace(getAvailableWidth(), getAvailableHeight()); + return new RenderSpace(getAvailableWidth() + - cc.getCaptionWidthAfterComponent(), getAvailableHeight() + - cc.getCaptionHeightAboveComponent()); } public boolean hasContent() { -- 2.39.5