Stop using v4classgen for QQmlLocale
authorSimon Hausmann <simon.hausmann@digia.com>
Thu, 13 Jun 2013 11:01:14 +0000 (13:01 +0200)
committerLars Knoll <lars.knoll@digia.com>
Thu, 13 Jun 2013 12:13:38 +0000 (14:13 +0200)
It's easy enough now to just define the properties by hand.

Change-Id: I6a053bf22f606280d21e9985928d7c69252611d4
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
src/qml/qml/qml.pri
src/qml/qml/qqmllocale.cpp

index 663cf2a..680e317 100644 (file)
@@ -134,9 +134,6 @@ HEADERS += \
     $$PWD/qqmlvaluetypewrapper_p.h \
     $$PWD/qqmltypewrapper_p.h
 
-JS_CLASS_SOURCES += \
-    $$PWD/qqmllocale.cpp
-
 include(parser/parser.pri)
 include(rewriter/rewriter.pri)
 include(ftw/ftw.pri)
index 69ce403..1f4503b 100644 (file)
 
 QT_BEGIN_NAMESPACE
 
-class QV4_JS_CLASS(QQmlLocaleData) : public QV4::Object
+class QQmlLocaleData : public QV4::Object
 {
     Q_MANAGED
-    QV4_ANNOTATE(managedTypeName QmlLocale staticInitClass true)
 public:
     QQmlLocaleData(QV4::ExecutionEngine *engine)
         : QV4::Object(engine)
@@ -75,8 +74,6 @@ public:
         return thisObject->locale;
     }
 
-    static void initClass(QV4::ExecutionEngine *engine, const QV4::Value &obj);
-
     static QV4::Value method_currencySymbol(QV4::SimpleCallContext *ctx);
     static QV4::Value method_dateTimeFormat(QV4::SimpleCallContext *ctx);
     static QV4::Value method_timeFormat(QV4::SimpleCallContext *ctx);
@@ -671,8 +668,34 @@ public:
 QV8LocaleDataDeletable::QV8LocaleDataDeletable(QV8Engine *engine)
 {
     QV4::ExecutionEngine *eng = QV8Engine::getV4(engine);
-    prototype = QV4::Value::fromObject(eng->newObject());
-    QQmlLocaleData::initClass(eng, prototype.value());
+    QV4::Object *o = eng->newObject();
+    prototype = QV4::Value::fromObject(o);
+
+    o->defineDefaultProperty(eng, QStringLiteral("dateFormat"), QQmlLocaleData::method_dateFormat, 0);
+    o->defineDefaultProperty(eng, QStringLiteral("standaloneDayName"), QQmlLocaleData::method_standaloneDayName, 0);
+    o->defineDefaultProperty(eng, QStringLiteral("standaloneMonthName"), QQmlLocaleData::method_standaloneMonthName, 0);
+    o->defineDefaultProperty(eng, QStringLiteral("dayName"), QQmlLocaleData::method_dayName, 0);
+    o->defineDefaultProperty(eng, QStringLiteral("timeFormat"), QQmlLocaleData::method_timeFormat, 0);
+    o->defineDefaultProperty(eng, QStringLiteral("monthName"), QQmlLocaleData::method_monthName, 0);
+    o->defineDefaultProperty(eng, QStringLiteral("currencySymbol"), QQmlLocaleData::method_currencySymbol, 0);
+    o->defineDefaultProperty(eng, QStringLiteral("dateTimeFormat"), QQmlLocaleData::method_dateTimeFormat, 0);
+    o->defineAccessorProperty(eng, QStringLiteral("name"), QQmlLocaleData::method_get_name, 0);
+    o->defineAccessorProperty(eng, QStringLiteral("positiveSign"), QQmlLocaleData::method_get_positiveSign, 0);
+    o->defineAccessorProperty(eng, QStringLiteral("uiLanguages"), QQmlLocaleData::method_get_uiLanguages, 0);
+    o->defineAccessorProperty(eng, QStringLiteral("firstDayOfWeek"), QQmlLocaleData::method_get_firstDayOfWeek, 0);
+    o->defineAccessorProperty(eng, QStringLiteral("pmText"), QQmlLocaleData::method_get_pmText, 0);
+    o->defineAccessorProperty(eng, QStringLiteral("percent"), QQmlLocaleData::method_get_percent, 0);
+    o->defineAccessorProperty(eng, QStringLiteral("textDirection"), QQmlLocaleData::method_get_textDirection, 0);
+    o->defineAccessorProperty(eng, QStringLiteral("weekDays"), QQmlLocaleData::method_get_weekDays, 0);
+    o->defineAccessorProperty(eng, QStringLiteral("negativeSign"), QQmlLocaleData::method_get_negativeSign, 0);
+    o->defineAccessorProperty(eng, QStringLiteral("groupSeparator"), QQmlLocaleData::method_get_groupSeparator, 0);
+    o->defineAccessorProperty(eng, QStringLiteral("decimalPoint"), QQmlLocaleData::method_get_decimalPoint, 0);
+    o->defineAccessorProperty(eng, QStringLiteral("nativeLanguageName"), QQmlLocaleData::method_get_nativeLanguageName, 0);
+    o->defineAccessorProperty(eng, QStringLiteral("nativeCountryName"), QQmlLocaleData::method_get_nativeCountryName, 0);
+    o->defineAccessorProperty(eng, QStringLiteral("zeroDigit"), QQmlLocaleData::method_get_zeroDigit, 0);
+    o->defineAccessorProperty(eng, QStringLiteral("amText"), QQmlLocaleData::method_get_amText, 0);
+    o->defineAccessorProperty(eng, QStringLiteral("measurementSystem"), QQmlLocaleData::method_get_measurementSystem, 0);
+    o->defineAccessorProperty(eng, QStringLiteral("exponential"), QQmlLocaleData::method_get_exponential, 0);
 }
 
 QV8LocaleDataDeletable::~QV8LocaleDataDeletable()
@@ -1048,6 +1071,4 @@ QV4::Value QQmlLocale::localeCompare(QV4::SimpleCallContext *ctx)
     \endlist
 */
 
-#include "qqmllocale_jsclass.cpp"
-
 QT_END_NAMESPACE