Details
-
Bug
-
Resolution: Unresolved
-
P4: Low
-
5.5.0
Description
Given a class with a property which is an enum type
#include <QGuiApplication> #include <QQuickView> #include <QDebug> class Something : public QObject { Q_OBJECT Q_PROPERTY(Qt::SortOrder sortOrder READ sortOrder WRITE setSortOrder NOTIFY sortOrderChanged) public: Something(QObject* = 0) { } void setSortOrder(Qt::SortOrder sortOrder) { qDebug() << "setSortOrder" << sortOrder; if (mSortOrder != sortOrder) { mSortOrder = sortOrder; Q_EMIT sortOrderChanged(); } } Qt::SortOrder sortOrder() const { return mSortOrder; } Q_SIGNALS: void sortOrderChanged(); private: mutable Qt::SortOrder mSortOrder; }; int main(int argc, char** argv) { QGuiApplication app(argc, argv); qmlRegisterType<Something>("Things", 1, 0, "Something"); QQuickView view; view.setSource(QUrl("main.qml")); view.show(); return app.exec(); } #include "main.moc"
QML code can set the property to any value, unbounded by the enum:
import QtQuick 2.3 import Things 1.0 Rectangle { id: root width: 560 height: 360 Something { id: st } Component.onCompleted: { st.sortOrder = Qt.AscendingOrder; st.sortOrder = Qt.DescendingOrder; st.sortOrder = Qt.RelativeSize; st.sortOrder = Qt.AutoText; st.sortOrder = 7; } }
setSortOrder Qt::SortOrder(AscendingOrder) setSortOrder Qt::SortOrder(DescendingOrder) setSortOrder Qt::SortOrder(DescendingOrder) setSortOrder Qt::SortOrder(2) setSortOrder Qt::SortOrder(7)
Attachments
Issue Links
- relates to
-
QTBUG-15484 Allow exporting enums from C++ to QML without wraping them in a QObject
-
- Closed
-
- resulted from
-
QTBUG-14869 QT for Symbian does not support the "Fixed Toolbar"
-
- Closed
-