aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorMatti Tahvonen <matti.tahvonen@itmill.com>2008-02-05 15:32:42 +0000
committerMatti Tahvonen <matti.tahvonen@itmill.com>2008-02-05 15:32:42 +0000
commit36a906145e2d257ae0fb13a4492431698e0db5ee (patch)
treeacc174d58b60f92098694dd3d907923ccfd577b0 /src
parentaac1fad5fb4fee2604af5d013dd3b795c369f705 (diff)
downloadvaadin-framework-36a906145e2d257ae0fb13a4492431698e0db5ee.tar.gz
vaadin-framework-36a906145e2d257ae0fb13a4492431698e0db5ee.zip
alignments painting for GridLayout
svn changeset:3711/svn branch:trunk
Diffstat (limited to 'src')
-rw-r--r--src/com/itmill/toolkit/ui/GridLayout.java22
1 files changed, 22 insertions, 0 deletions
diff --git a/src/com/itmill/toolkit/ui/GridLayout.java b/src/com/itmill/toolkit/ui/GridLayout.java
index ad91568390..9cbaa9b59f 100644
--- a/src/com/itmill/toolkit/ui/GridLayout.java
+++ b/src/com/itmill/toolkit/ui/GridLayout.java
@@ -104,6 +104,8 @@ public class GridLayout extends AbstractLayout {
*/
public static final int ALIGNMENT_VERTICAL_CENTER = AlignmentInfo.ALIGNMENT_VERTICAL_CENTER;
+ private static final int ALIGNMENT_DEFAULT = ALIGNMENT_TOP + ALIGNMENT_LEFT;
+
/**
* Is spacing between contained components enabled. Defaults to false.
*/
@@ -407,6 +409,9 @@ public class GridLayout extends AbstractLayout {
// Empty cell collector
int emptyCells = 0;
+ final String[] alignmentsArray = new String[components.size()];
+ int index = 0;
+
// Iterates every applicable row
for (int cury = 0; cury < rows; cury++) {
target.startTag("gr");
@@ -446,6 +451,9 @@ public class GridLayout extends AbstractLayout {
}
area.getComponent().paint(target);
+ alignmentsArray[index++] = String
+ .valueOf(getComponentAlignment(area.getComponent()));
+
target.endTag("gc");
// Fetch next item
@@ -532,6 +540,20 @@ public class GridLayout extends AbstractLayout {
} // iterates every row
// Last row handled
+
+ // Add child component alignment info to layout tag
+ target.addAttribute("alignments", alignmentsArray);
+
+ }
+
+ public int getComponentAlignment(Component childComponent) {
+ final Integer bitMask = (Integer) componentToAlignment
+ .get(childComponent);
+ if (bitMask != null) {
+ return bitMask.intValue();
+ } else {
+ return ALIGNMENT_DEFAULT;
+ }
}
/**