summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/tools/uic/cpp/cppwriteinitialization.cpp5
-rw-r--r--tests/auto/tools/uic/baseline/enumnostdset.ui39
-rw-r--r--tests/auto/tools/uic/baseline/enumnostdset.ui.h55
3 files changed, 98 insertions, 1 deletions
diff --git a/src/tools/uic/cpp/cppwriteinitialization.cpp b/src/tools/uic/cpp/cppwriteinitialization.cpp
index 9c2d7cbc2c..e0d4bea5b9 100644
--- a/src/tools/uic/cpp/cppwriteinitialization.cpp
+++ b/src/tools/uic/cpp/cppwriteinitialization.cpp
@@ -1267,7 +1267,10 @@ void WriteInitialization::writeProperties(const QString &varName,
} else {
setFunction = QLatin1String("->setProperty(\"");
setFunction += propertyName;
- setFunction += QLatin1String("\", QVariant(");
+ setFunction += QLatin1String("\", QVariant");
+ if (p->kind() == DomProperty::Enum)
+ setFunction += QLatin1String("::fromValue");
+ setFunction += QLatin1Char('(');
}
QString varNewName = varName;
diff --git a/tests/auto/tools/uic/baseline/enumnostdset.ui b/tests/auto/tools/uic/baseline/enumnostdset.ui
new file mode 100644
index 0000000000..59e27b1be3
--- /dev/null
+++ b/tests/auto/tools/uic/baseline/enumnostdset.ui
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ui version="4.0">
+ <class>Form</class>
+ <widget class="QWidget" name="Form">
+ <property name="geometry">
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>400</width>
+ <height>300</height>
+ </rect>
+ </property>
+ <property name="windowTitle">
+ <string>Form</string>
+ </property>
+ <widget class="WorldTimeClock" name="worldTimeClock">
+ <property name="geometry">
+ <rect>
+ <x>100</x>
+ <y>100</y>
+ <width>100</width>
+ <height>100</height>
+ </rect>
+ </property>
+ <property name="penStyle" stdset="0">
+ <enum>Qt::DashDotLine</enum>
+ </property>
+ </widget>
+ </widget>
+ <customwidgets>
+ <customwidget>
+ <class>WorldTimeClock</class>
+ <extends>QWidget</extends>
+ <header>worldtimeclock.h</header>
+ </customwidget>
+ </customwidgets>
+ <resources/>
+ <connections/>
+</ui>
diff --git a/tests/auto/tools/uic/baseline/enumnostdset.ui.h b/tests/auto/tools/uic/baseline/enumnostdset.ui.h
new file mode 100644
index 0000000000..89a8411b4a
--- /dev/null
+++ b/tests/auto/tools/uic/baseline/enumnostdset.ui.h
@@ -0,0 +1,55 @@
+/********************************************************************************
+** Form generated from reading UI file 'enumnostdset.ui'
+**
+** Created by: Qt User Interface Compiler version 5.6.1
+**
+** WARNING! All changes made in this file will be lost when recompiling UI file!
+********************************************************************************/
+
+#ifndef ENUMNOSTDSET_H
+#define ENUMNOSTDSET_H
+
+#include <QtCore/QVariant>
+#include <QtWidgets/QAction>
+#include <QtWidgets/QApplication>
+#include <QtWidgets/QButtonGroup>
+#include <QtWidgets/QHeaderView>
+#include <QtWidgets/QWidget>
+#include "worldtimeclock.h"
+
+QT_BEGIN_NAMESPACE
+
+class Ui_Form
+{
+public:
+ WorldTimeClock *worldTimeClock;
+
+ void setupUi(QWidget *Form)
+ {
+ if (Form->objectName().isEmpty())
+ Form->setObjectName(QStringLiteral("Form"));
+ Form->resize(400, 300);
+ worldTimeClock = new WorldTimeClock(Form);
+ worldTimeClock->setObjectName(QStringLiteral("worldTimeClock"));
+ worldTimeClock->setGeometry(QRect(100, 100, 100, 100));
+ worldTimeClock->setProperty("penStyle", QVariant::fromValue(Qt::DashDotLine));
+
+ retranslateUi(Form);
+
+ QMetaObject::connectSlotsByName(Form);
+ } // setupUi
+
+ void retranslateUi(QWidget *Form)
+ {
+ Form->setWindowTitle(QApplication::translate("Form", "Form", 0));
+ } // retranslateUi
+
+};
+
+namespace Ui {
+ class Form: public Ui_Form {};
+} // namespace Ui
+
+QT_END_NAMESPACE
+
+#endif // ENUMNOSTDSET_H