summaryrefslogtreecommitdiff
path: root/src/gui/widgets/layout.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/widgets/layout.cpp')
-rw-r--r--src/gui/widgets/layout.cpp23
1 files changed, 13 insertions, 10 deletions
diff --git a/src/gui/widgets/layout.cpp b/src/gui/widgets/layout.cpp
index d6204c9f9..ad474cf63 100644
--- a/src/gui/widgets/layout.cpp
+++ b/src/gui/widgets/layout.cpp
@@ -57,7 +57,8 @@ LayoutArray &LayoutCell::getArray()
mType = ARRAY;
mExtent[0] = 1;
mExtent[1] = 1;
- mPadding = 0;
+ mHPadding = 0;
+ mVPadding = 0;
mAlign[0] = FILL;
mAlign[1] = FILL;
return *mArray;
@@ -66,10 +67,10 @@ LayoutArray &LayoutCell::getArray()
void LayoutCell::reflow(int nx, int ny, int nw, int nh)
{
assert(mType != NONE);
- nx += mPadding;
- ny += mPadding;
- nw -= 2 * mPadding;
- nh -= 2 * mPadding;
+ nx += mHPadding;
+ ny += mVPadding;
+ nw -= 2 * mHPadding;
+ nh -= 2 * mVPadding;
if (mType == ARRAY)
mArray->reflow(nx, ny, nw, nh);
else
@@ -202,7 +203,8 @@ LayoutCell &LayoutArray::place(gcn::Widget *widget, int x, int y, int w, int h)
}
cell.mExtent[0] = w;
cell.mExtent[1] = h;
- cell.mPadding = 0;
+ cell.mHPadding = 0;
+ cell.mVPadding = 0;
cell.mAlign[0] = LayoutCell::FILL;
cell.mAlign[1] = LayoutCell::FILL;
int &cs = mSizes[0][x], &rs = mSizes[1][y];
@@ -258,8 +260,9 @@ std::vector<int> LayoutArray::getSizes(int dim, int upp) const
if (cell->mExtent[dim] == 1)
{
int n = (dim == 0 ? gridX : gridY);
- int s = cell->mSize[dim] + cell->mPadding * 2;
- if (s > sizes[n]) sizes[n] = s;
+ int s = cell->mSize[dim] + cell->mVPadding * 2;
+ if (s > sizes[n])
+ sizes[n] = s;
}
}
}
@@ -357,7 +360,7 @@ void Layout::reflow(int &nw, int &nh)
mComputed = true;
}
- nw = (nw == 0 ? mSize[0] + 2 * mPadding : nw);
- nh = (nh == 0 ? mSize[1] + 2 * mPadding : nh);
+ nw = (nw == 0 ? mSize[0] + 2 * mHPadding : nw);
+ nh = (nh == 0 ? mSize[1] + 2 * mVPadding : nh);
LayoutCell::reflow(0, 0, nw, nh);
}