summaryrefslogtreecommitdiffstats
path: root/src/gui/kernel
diff options
context:
space:
mode:
authorOlivier Goffart <ogoffart@trolltech.com>2009-07-31 14:16:01 (GMT)
committerOlivier Goffart <ogoffart@trolltech.com>2009-07-31 14:54:01 (GMT)
commitc57ed134a536c177d1774d9272ca187bdfb28e6b (patch)
tree9b93dcca114411550913184feb1c1ae3b3dfddbb /src/gui/kernel
parentc6cdfcb02d74f726e79ead9f890f294587a7c63c (diff)
downloadQt-c57ed134a536c177d1774d9272ca187bdfb28e6b.zip
Qt-c57ed134a536c177d1774d9272ca187bdfb28e6b.tar.gz
Qt-c57ed134a536c177d1774d9272ca187bdfb28e6b.tar.bz2
Revert "Fix QFormLayout which allowed fields to be smaller that their minimum size"
This reverts commit 244f5ee9c2c34ddee200e4d5cdc1345762a5901b. Valgrind complains about the label fields that are not inisialized yet, and indeed. They are initialized right after, and need the maxLabelWidth to be computed. This is a chicken and egg problem difficult to solve, so I rather revert the change as the bug is not critical
Diffstat (limited to 'src/gui/kernel')
-rw-r--r--src/gui/kernel/qformlayout.cpp6
1 files changed, 1 insertions, 5 deletions
diff --git a/src/gui/kernel/qformlayout.cpp b/src/gui/kernel/qformlayout.cpp
index 0b7656f..de33f93 100644
--- a/src/gui/kernel/qformlayout.cpp
+++ b/src/gui/kernel/qformlayout.cpp
@@ -689,16 +689,12 @@ void QFormLayoutPrivate::setupVerticalLayoutData(int width)
// are split.
maxLabelWidth = 0;
if (!wrapAllRows) {
- int maxFieldMinWidth = 0; //the maximum minimum size of the field
for (int i = 0; i < rr; ++i) {
const QFormLayoutItem *label = m_matrix(i, 0);
const QFormLayoutItem *field = m_matrix(i, 1);
- if (label && field && label->sideBySide)
+ if (label && (label->sizeHint.width() + (field ? field->minSize.width() : 0) <= width))
maxLabelWidth = qMax(maxLabelWidth, label->sizeHint.width());
- if (field)
- maxFieldMinWidth = qMax(maxFieldMinWidth, field->minSize.width() + field->sbsHSpace);
}
- maxLabelWidth = qMin(maxLabelWidth, width - maxFieldMinWidth);
} else {
maxLabelWidth = width;
}