//#repeat col/row colspan/rowspan contentwidth/contentheight width/height HSHRINK/VSHRINK numregions/numregions_v \
// maxwidth/maxheight cols/rows minwidth/minheight lp_h/lp lp_h/lp easy_width/easy_height regions/regions_v \
// computeRegions/computeRegions_v
- if (numkids > 0 && cols > 1) do {
+ if (numkids > 0) do {
computeRegions();
int nc = numregions * 3 + numkids * 2 + 3;
if (coeff == null || nc+1>coeff.length) coeff = new float[nc+1];
case "hshrink": return B(test(HSHRINK));
case "vshrink": return B(test(VSHRINK));
case "aspect": return N(aspect);
- case "x": return (parent == null || !test(VISIBLE)) ? N(0) : N(x);
- case "y": return (parent == null || !test(VISIBLE)) ? N(0) : N(y);
+ case "x": return (parent == null || !test(VISIBLE)) ? N(0) : test(PACKED) ? N(x) : N(ax);
+ case "y": return (parent == null || !test(VISIBLE)) ? N(0) : test(PACKED) ? N(y) : N(ay);
case "cols": return test(FIXED) == COLS ? N(cols) : N(0);
case "rows": return test(FIXED) == ROWS ? N(rows) : N(0);
case "colspan": return N(colspan);