diff options
author | Mitch Curtis <mitch.curtis@digia.com> | 2014-01-14 12:34:35 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2014-01-14 14:02:09 +0100 |
commit | 7f50eca469a24809d6d5812ee94b447966ff81f9 (patch) | |
tree | c7974606ee5079231f9a156ec6cd98c0451334d5 /src/qml/qml/v8 | |
parent | 20f533671ab37be8a5868fecc64dc9d5e5e3ada0 (diff) |
Allow assignment of a QML Locale object to a C++ QLocale property.
Task-number: QTBUG-36125
Change-Id: I58454db0c47684aed3e95c52a8135fd5fd6bf2f9
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src/qml/qml/v8')
-rw-r--r-- | src/qml/qml/v8/qv8engine.cpp | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/qml/qml/v8/qv8engine.cpp b/src/qml/qml/v8/qv8engine.cpp index e64cc0c83b..aa3b7eeb34 100644 --- a/src/qml/qml/v8/qv8engine.cpp +++ b/src/qml/qml/v8/qv8engine.cpp @@ -300,7 +300,8 @@ QV4::ReturnedValue QV8Engine::fromVariant(const QVariant &variant) return QV4::JsonObject::fromJsonObject(m_v4Engine, *reinterpret_cast<const QJsonObject *>(ptr)); case QMetaType::QJsonArray: return QV4::JsonObject::fromJsonArray(m_v4Engine, *reinterpret_cast<const QJsonArray *>(ptr)); - + case QMetaType::QLocale: + return QQmlLocale::wrap(this, *reinterpret_cast<const QLocale*>(ptr)); default: break; } @@ -395,6 +396,8 @@ QVariant QV8Engine::toBasicVariant(const QV4::ValueRef value) return value->asDouble(); if (value->isString()) return value->stringValue()->toQString(); + if (QQmlLocaleData *ld = value->as<QQmlLocaleData>()) + return ld->locale; if (QV4::DateObject *d = value->asDateObject()) return d->toQDateTime(); // NOTE: since we convert QTime to JS Date, round trip will change the variant type (to QDateTime)! |