summaryrefslogtreecommitdiffstats
path: root/src/tools/uic/cpp
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2019-06-27 15:07:01 +0200
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2019-07-02 09:15:47 +0200
commitfdef9c80391c23875208d8576096c0d5366fedc4 (patch)
treec5a4a367c00731aa58b05d281e28005e798474da /src/tools/uic/cpp
parent377ffbd21d372193c8fa0d05dc02d6f606a78a35 (diff)
uic: Implement form window setting to disable QObject::connectSlotsByName()
Task-number: QTBUG-76375 Change-Id: I16ad147366aa7d52b7a0e17ae240127d8ac34b3c Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Diffstat (limited to 'src/tools/uic/cpp')
-rw-r--r--src/tools/uic/cpp/cppwriteinitialization.cpp5
-rw-r--r--src/tools/uic/cpp/cppwriteinitialization.h1
2 files changed, 5 insertions, 1 deletions
diff --git a/src/tools/uic/cpp/cppwriteinitialization.cpp b/src/tools/uic/cpp/cppwriteinitialization.cpp
index 4185d3ba70..d16c859eed 100644
--- a/src/tools/uic/cpp/cppwriteinitialization.cpp
+++ b/src/tools/uic/cpp/cppwriteinitialization.cpp
@@ -467,6 +467,9 @@ void WriteInitialization::acceptUI(DomUI *node)
m_widgetChain.push(nullptr);
m_layoutChain.push(nullptr);
+ if (node->hasAttributeConnectslotsbyname())
+ m_connectSlotsByName = node->attributeConnectslotsbyname();
+
acceptLayoutDefault(node->elementLayoutDefault());
acceptLayoutFunction(node->elementLayoutFunction());
@@ -536,7 +539,7 @@ void WriteInitialization::acceptUI(DomUI *node)
if (!m_delayedInitialization.isEmpty())
m_output << "\n" << m_delayedInitialization << "\n";
- if (m_option.autoConnection) {
+ if (m_option.autoConnection && m_connectSlotsByName) {
m_output << "\n" << m_indent << "QMetaObject" << language::qualifier
<< "connectSlotsByName(" << varName << ')' << language::eol;
}
diff --git a/src/tools/uic/cpp/cppwriteinitialization.h b/src/tools/uic/cpp/cppwriteinitialization.h
index a28dfc1b25..6f8e352f6a 100644
--- a/src/tools/uic/cpp/cppwriteinitialization.h
+++ b/src/tools/uic/cpp/cppwriteinitialization.h
@@ -311,6 +311,7 @@ private:
bool m_layoutWidget = false;
bool m_firstThemeIcon = true;
+ bool m_connectSlotsByName = true;
};
} // namespace CPP