From 3801cd854fe9417bd493eee7f921d06c67bcde27 Mon Sep 17 00:00:00 2001 From: Sergey Fedorov Date: Tue, 11 Aug 2026 06:51:31 +0000 Subject: [PATCH 3/3] Drop sizeAdjustPolicy from the .ui files for Qt4's uic Qt4's uic emits the property verbatim, which fails to build against Qt4: ui_dialogconversionstatus.h:72: error: 'class QTreeWidget' has no member named 'setSizeAdjustPolicy'; did you mean 'setSizePolicy'? ui_dialogconversionstatus.h:72: error: 'AdjustToContents' is not a member of 'QAbstractScrollArea' QComboBox has had sizeAdjustPolicy since Qt4, but QAbstractScrollArea only gained it in Qt5.2, and both uses here are on QAbstractScrollArea subclasses: a QTreeWidget in dialogconversionstatus.ui and a QScrollArea in dialoginfo.ui. As with stepType, the property is set from code behind a Qt5.2 guard instead, so Qt5 and Qt6 keep the existing behavior. A full re-audit of every .ui property against its owning widget class found no other Qt5-only property, attribute, enum or flag value. The earlier pass missed this one by assuming sizeAdjustPolicy belonged to the QComboBox that also appears in these forms. Co-Authored-By: Claude Opus 5 (1M context) Claude-Session: https://claude.ai/code/session_01PYgCCiu49ZE7W7TqTdxhBi --- src/dialogconversionstatus.cpp | 6 ++++++ src/dialoginfo.cpp | 6 ++++++ ui/dialogconversionstatus.ui | 3 --- ui/dialoginfo.ui | 3 --- 4 files changed, 12 insertions(+), 6 deletions(-) diff --git a/src/dialogconversionstatus.cpp b/src/dialogconversionstatus.cpp index 97af6f9..5ccec08 100755 --- a/src/dialogconversionstatus.cpp +++ b/src/dialogconversionstatus.cpp @@ -50,6 +50,12 @@ DialogConversionStatus::DialogConversionStatus(QWidget *parent) : // QHeaderView::setResizeMode() was renamed to setSectionResizeMode() in Qt5. treeWidget->header()->setResizeMode(1, QHeaderView::ResizeToContents); #endif + +#if QT_VERSION >= QT_VERSION_CHECK(5, 2, 0) + // Set from code rather than the .ui file: QAbstractScrollArea grew a + // sizeAdjustPolicy only in Qt5.2, so Qt4's uic cannot emit it. + treeWidget->setSizeAdjustPolicy(QAbstractScrollArea::AdjustToContents); +#endif } void DialogConversionStatus::setup(int n_images) diff --git a/src/dialoginfo.cpp b/src/dialoginfo.cpp index 68e91e0..b4eb5ad 100755 --- a/src/dialoginfo.cpp +++ b/src/dialoginfo.cpp @@ -32,6 +32,12 @@ DialogInfo::DialogInfo(QWidget *parent) : QDialog(parent){ setupUi(this); +#if QT_VERSION >= QT_VERSION_CHECK(5, 2, 0) + // Set from code rather than the .ui file: QAbstractScrollArea grew a + // sizeAdjustPolicy only in Qt5.2, so Qt4's uic cannot emit it. + scrollArea->setSizeAdjustPolicy(QAbstractScrollArea::AdjustToContents); +#endif + connect(pushClose, SIGNAL(clicked()), this, SLOT(close())); connect(pushFacebook, SIGNAL(clicked()), this, SLOT(openFacebookPage())); diff --git a/ui/dialogconversionstatus.ui b/ui/dialogconversionstatus.ui index 3307ad4..71f8812 100755 --- a/ui/dialogconversionstatus.ui +++ b/ui/dialogconversionstatus.ui @@ -26,9 +26,6 @@ Qt::ScrollBarAlwaysOn - - QAbstractScrollArea::AdjustToContents - true diff --git a/ui/dialoginfo.ui b/ui/dialoginfo.ui index 12b2897..e57b7bd 100755 --- a/ui/dialoginfo.ui +++ b/ui/dialoginfo.ui @@ -140,9 +140,6 @@ p, li { white-space: pre-wrap; } 0 - - QAbstractScrollArea::SizeAdjustPolicy::AdjustToContents - true