Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- From 31f66d946199cee322a8fc801f961edcc8d12c85 Mon Sep 17 00:00:00 2001
- From: Kent Hansen <kent.hansen@nokia.com>
- Date: Wed, 12 Oct 2011 14:27:57 +0200
- Subject: [PATCH] Get rid of QDeclarativeMetaType::{canCopy,copy}
- Now that we have QMetaType::construct() that does
- placement new construction, we can use that to copy
- the value.
- We need to destruct the (default-constructed) existing
- value first, but for primitive types that's a no-op, and
- for Qt's types it's cheap since they use lazy
- initialization or "shared null".
- Change-Id: Idadee04b1d5b590be7fec50fb0396fd277bee973
- ---
- src/declarative/qml/qdeclarativeboundsignal.cpp | 19 +-
- src/declarative/qml/qdeclarativemetatype.cpp | 541 -----------------------
- src/declarative/qml/qdeclarativemetatype_p.h | 3 -
- 3 files changed, 5 insertions(+), 558 deletions(-)
- diff --git a/src/declarative/qml/qdeclarativeboundsignal.cpp b/src/declarative/qml/qdeclarativeboundsignal.cpp
- index 6bbbb24..541419b 100644
- --- a/src/declarative/qml/qdeclarativeboundsignal.cpp
- +++ b/src/declarative/qml/qdeclarativeboundsignal.cpp
- @@ -252,15 +252,9 @@ QDeclarativeBoundSignalParameters::QDeclarativeBoundSignalParameters(const QMeta
- }
- }
- }
- - if (QDeclarativeMetaType::canCopy(t)) {
- - types[ii] = t;
- - QMetaPropertyBuilder prop = mob.addProperty(name, propType);
- - prop.setWritable(false);
- - } else {
- - types[ii] = 0x80000000 | t;
- - QMetaPropertyBuilder prop = mob.addProperty(name, "QVariant");
- - prop.setWritable(false);
- - }
- + types[ii] = t;
- + QMetaPropertyBuilder prop = mob.addProperty(name, propType);
- + prop.setWritable(false);
- }
- }
- myMetaObject = mob.toMetaObject();
- @@ -291,11 +285,8 @@ int QDeclarativeBoundSignalParameters::metaCall(QMetaObject::Call c, int id, voi
- return -1;
- if (c == QMetaObject::ReadProperty && id >= 1) {
- - if (types[id - 1] & 0x80000000) {
- - *((QVariant *)a[0]) = QVariant(types[id - 1] & 0x7FFFFFFF, values[id]);
- - } else {
- - QDeclarativeMetaType::copy(types[id - 1], a[0], values[id]);
- - }
- + QMetaType::destruct(types[id - 1], a[0]);
- + QMetaType::construct(types[id - 1], a[0], values[id]);
- return -1;
- } else {
- return qt_metacall(c, id, a);
- diff --git a/src/declarative/qml/qdeclarativemetatype.cpp b/src/declarative/qml/qdeclarativemetatype.cpp
- index 5577993..ad7e047 100644
- --- a/src/declarative/qml/qdeclarativemetatype.cpp
- +++ b/src/declarative/qml/qdeclarativemetatype.cpp
- @@ -1339,544 +1339,3 @@ QList<QDeclarativeType*> QDeclarativeMetaType::qmlTypes()
- }
- QT_END_NAMESPACE
- -
- -#include <QtGui/qfont.h>
- -#include <QtGui/qpixmap.h>
- -#include <QtGui/qbrush.h>
- -#include <QtGui/qcolor.h>
- -#include <QtGui/qpalette.h>
- -#include <QtGui/qimage.h>
- -#include <QtGui/qpolygon.h>
- -#include <QtGui/qregion.h>
- -#include <QtGui/qbitmap.h>
- -#include <QtGui/qcursor.h>
- -#include <QtGui/qkeysequence.h>
- -#include <QtGui/qpen.h>
- -
- -//#include <QtGui/qtextlength.h>
- -#include <QtGui/qtextformat.h>
- -#include <QtGui/qmatrix.h>
- -#include <QtGui/qtransform.h>
- -#include <QtGui/qmatrix4x4.h>
- -#include <QtGui/qvector2d.h>
- -#include <QtGui/qvector3d.h>
- -#include <QtGui/qvector4d.h>
- -#include <QtGui/qquaternion.h>
- -#include <private/qv8engine_p.h>
- -
- -Q_DECLARE_METATYPE(QJSValue);
- -Q_DECLARE_METATYPE(QDeclarativeV8Handle);
- -
- -QT_BEGIN_NAMESPACE
- -
- -bool QDeclarativeMetaType::canCopy(int type)
- -{
- - switch(type) {
- - case QMetaType::VoidStar:
- - case QMetaType::QObjectStar:
- - case QMetaType::QWidgetStar:
- - case QMetaType::Long:
- - case QMetaType::Int:
- - case QMetaType::Short:
- - case QMetaType::Char:
- - case QMetaType::ULong:
- - case QMetaType::UInt:
- - case QMetaType::LongLong:
- - case QMetaType::ULongLong:
- - case QMetaType::UShort:
- - case QMetaType::UChar:
- - case QMetaType::Bool:
- - case QMetaType::Float:
- - case QMetaType::Double:
- - case QMetaType::QChar:
- - case QMetaType::QVariantMap:
- - case QMetaType::QVariantHash:
- - case QMetaType::QVariantList:
- - case QMetaType::QByteArray:
- - case QMetaType::QString:
- - case QMetaType::QStringList:
- - case QMetaType::QBitArray:
- - case QMetaType::QDate:
- - case QMetaType::QTime:
- - case QMetaType::QDateTime:
- - case QMetaType::QUrl:
- - case QMetaType::QLocale:
- - case QMetaType::QRect:
- - case QMetaType::QRectF:
- - case QMetaType::QSize:
- - case QMetaType::QSizeF:
- - case QMetaType::QLine:
- - case QMetaType::QLineF:
- - case QMetaType::QPoint:
- - case QMetaType::QPointF:
- - case QMetaType::QVector3D:
- -#ifndef QT_NO_REGEXP
- - case QMetaType::QRegExp:
- -#endif
- - case QMetaType::Void:
- -#ifdef QT3_SUPPORT
- - case QMetaType::QColorGroup:
- -#endif
- - case QMetaType::QFont:
- - case QMetaType::QPixmap:
- - case QMetaType::QBrush:
- - case QMetaType::QColor:
- - case QMetaType::QPalette:
- - case QMetaType::QImage:
- - case QMetaType::QPolygon:
- - case QMetaType::QRegion:
- - case QMetaType::QBitmap:
- -#ifndef QT_NO_CURSOR
- - case QMetaType::QCursor:
- -#endif
- - case QMetaType::QKeySequence:
- - case QMetaType::QPen:
- - case QMetaType::QTextLength:
- - case QMetaType::QTextFormat:
- - case QMetaType::QMatrix:
- - case QMetaType::QTransform:
- - case QMetaType::QMatrix4x4:
- - case QMetaType::QVector2D:
- - case QMetaType::QVector4D:
- - case QMetaType::QQuaternion:
- - return true;
- -
- - default:
- - if (type == qMetaTypeId<QVariant>() ||
- - type == qMetaTypeId<QJSValue>() ||
- - type == qMetaTypeId<QDeclarativeV8Handle>() ||
- - typeCategory(type) != Unknown) {
- - return true;
- - }
- - break;
- - }
- -
- - return false;
- -}
- -
- -/*!
- - Copies \a copy into \a data, assuming they both are of type \a type. If
- - \a copy is zero, a default type is copied. Returns true if the copy was
- - successful and false if not.
- -
- - \note This should move into QMetaType once complete
- -
- -*/
- -bool QDeclarativeMetaType::copy(int type, void *data, const void *copy)
- -{
- - if (copy) {
- - switch(type) {
- - case QMetaType::VoidStar:
- - case QMetaType::QObjectStar:
- - case QMetaType::QWidgetStar:
- - *static_cast<void **>(data) = *static_cast<void* const *>(copy);
- - return true;
- - case QMetaType::Long:
- - *static_cast<long *>(data) = *static_cast<const long*>(copy);
- - return true;
- - case QMetaType::Int:
- - *static_cast<int *>(data) = *static_cast<const int*>(copy);
- - return true;
- - case QMetaType::Short:
- - *static_cast<short *>(data) = *static_cast<const short*>(copy);
- - return true;
- - case QMetaType::Char:
- - *static_cast<char *>(data) = *static_cast<const char*>(copy);
- - return true;
- - case QMetaType::ULong:
- - *static_cast<ulong *>(data) = *static_cast<const ulong*>(copy);
- - return true;
- - case QMetaType::UInt:
- - *static_cast<uint *>(data) = *static_cast<const uint*>(copy);
- - return true;
- - case QMetaType::LongLong:
- - *static_cast<qlonglong *>(data) = *static_cast<const qlonglong*>(copy);
- - return true;
- - case QMetaType::ULongLong:
- - *static_cast<qulonglong *>(data) = *static_cast<const qulonglong*>(copy);
- - return true;
- - case QMetaType::UShort:
- - *static_cast<ushort *>(data) = *static_cast<const ushort*>(copy);
- - return true;
- - case QMetaType::UChar:
- - *static_cast<uchar *>(data) = *static_cast<const uchar*>(copy);
- - return true;
- - case QMetaType::Bool:
- - *static_cast<bool *>(data) = *static_cast<const bool*>(copy);
- - return true;
- - case QMetaType::Float:
- - *static_cast<float *>(data) = *static_cast<const float*>(copy);
- - return true;
- - case QMetaType::Double:
- - *static_cast<double *>(data) = *static_cast<const double*>(copy);
- - return true;
- - case QMetaType::QChar:
- - *static_cast<NS(QChar) *>(data) = *static_cast<const NS(QChar)*>(copy);
- - return true;
- - case QMetaType::QVariantMap:
- - *static_cast<NS(QVariantMap) *>(data) = *static_cast<const NS(QVariantMap)*>(copy);
- - return true;
- - case QMetaType::QVariantHash:
- - *static_cast<NS(QVariantHash) *>(data) = *static_cast<const NS(QVariantHash)*>(copy);
- - return true;
- - case QMetaType::QVariantList:
- - *static_cast<NS(QVariantList) *>(data) = *static_cast<const NS(QVariantList)*>(copy);
- - return true;
- - case QMetaType::QByteArray:
- - *static_cast<NS(QByteArray) *>(data) = *static_cast<const NS(QByteArray)*>(copy);
- - return true;
- - case QMetaType::QString:
- - *static_cast<NS(QString) *>(data) = *static_cast<const NS(QString)*>(copy);
- - return true;
- - case QMetaType::QStringList:
- - *static_cast<NS(QStringList) *>(data) = *static_cast<const NS(QStringList)*>(copy);
- - return true;
- - case QMetaType::QBitArray:
- - *static_cast<NS(QBitArray) *>(data) = *static_cast<const NS(QBitArray)*>(copy);
- - return true;
- - case QMetaType::QDate:
- - *static_cast<NS(QDate) *>(data) = *static_cast<const NS(QDate)*>(copy);
- - return true;
- - case QMetaType::QTime:
- - *static_cast<NS(QTime) *>(data) = *static_cast<const NS(QTime)*>(copy);
- - return true;
- - case QMetaType::QDateTime:
- - *static_cast<NS(QDateTime) *>(data) = *static_cast<const NS(QDateTime)*>(copy);
- - return true;
- - case QMetaType::QUrl:
- - *static_cast<NS(QUrl) *>(data) = *static_cast<const NS(QUrl)*>(copy);
- - return true;
- - case QMetaType::QLocale:
- - *static_cast<NS(QLocale) *>(data) = *static_cast<const NS(QLocale)*>(copy);
- - return true;
- - case QMetaType::QRect:
- - *static_cast<NS(QRect) *>(data) = *static_cast<const NS(QRect)*>(copy);
- - return true;
- - case QMetaType::QRectF:
- - *static_cast<NS(QRectF) *>(data) = *static_cast<const NS(QRectF)*>(copy);
- - return true;
- - case QMetaType::QSize:
- - *static_cast<NS(QSize) *>(data) = *static_cast<const NS(QSize)*>(copy);
- - return true;
- - case QMetaType::QSizeF:
- - *static_cast<NS(QSizeF) *>(data) = *static_cast<const NS(QSizeF)*>(copy);
- - return true;
- - case QMetaType::QLine:
- - *static_cast<NS(QLine) *>(data) = *static_cast<const NS(QLine)*>(copy);
- - return true;
- - case QMetaType::QLineF:
- - *static_cast<NS(QLineF) *>(data) = *static_cast<const NS(QLineF)*>(copy);
- - return true;
- - case QMetaType::QPoint:
- - *static_cast<NS(QPoint) *>(data) = *static_cast<const NS(QPoint)*>(copy);
- - return true;
- - case QMetaType::QPointF:
- - *static_cast<NS(QPointF) *>(data) = *static_cast<const NS(QPointF)*>(copy);
- - return true;
- - case QMetaType::QVector3D:
- - *static_cast<NS(QVector3D) *>(data) = *static_cast<const NS(QVector3D)*>(copy);
- - return true;
- -#ifndef QT_NO_REGEXP
- - case QMetaType::QRegExp:
- - *static_cast<NS(QRegExp) *>(data) = *static_cast<const NS(QRegExp)*>(copy);
- - return true;
- -#endif
- - case QMetaType::Void:
- - return true;
- -
- -
- -#ifdef QT3_SUPPORT
- - case QMetaType::QColorGroup:
- - *static_cast<NS(QColorGroup) *>(data) = *static_cast<const NS(QColorGroup)*>(copy);
- - return true;
- -#endif
- -
- - case QMetaType::QFont:
- - *static_cast<NS(QFont) *>(data) = *static_cast<const NS(QFont)*>(copy);
- - return true;
- - case QMetaType::QPixmap:
- - *static_cast<NS(QPixmap) *>(data) = *static_cast<const NS(QPixmap)*>(copy);
- - return true;
- - case QMetaType::QBrush:
- - *static_cast<NS(QBrush) *>(data) = *static_cast<const NS(QBrush)*>(copy);
- - return true;
- - case QMetaType::QColor:
- - *static_cast<NS(QColor) *>(data) = *static_cast<const NS(QColor)*>(copy);
- - return true;
- - case QMetaType::QPalette:
- - *static_cast<NS(QPalette) *>(data) = *static_cast<const NS(QPalette)*>(copy);
- - return true;
- - case QMetaType::QImage:
- - *static_cast<NS(QImage) *>(data) = *static_cast<const NS(QImage)*>(copy);
- - return true;
- - case QMetaType::QPolygon:
- - *static_cast<NS(QPolygon) *>(data) = *static_cast<const NS(QPolygon)*>(copy);
- - return true;
- - case QMetaType::QRegion:
- - *static_cast<NS(QRegion) *>(data) = *static_cast<const NS(QRegion)*>(copy);
- - return true;
- - case QMetaType::QBitmap:
- - *static_cast<NS(QBitmap) *>(data) = *static_cast<const NS(QBitmap)*>(copy);
- - return true;
- -#ifndef QT_NO_CURSOR
- - case QMetaType::QCursor:
- - *static_cast<NS(QCursor) *>(data) = *static_cast<const NS(QCursor)*>(copy);
- - return true;
- -#endif
- - case QMetaType::QKeySequence:
- - *static_cast<NS(QKeySequence) *>(data) = *static_cast<const NS(QKeySequence)*>(copy);
- - return true;
- - case QMetaType::QPen:
- - *static_cast<NS(QPen) *>(data) = *static_cast<const NS(QPen)*>(copy);
- - return true;
- - case QMetaType::QTextLength:
- - *static_cast<NS(QTextLength) *>(data) = *static_cast<const NS(QTextLength)*>(copy);
- - return true;
- - case QMetaType::QTextFormat:
- - *static_cast<NS(QTextFormat) *>(data) = *static_cast<const NS(QTextFormat)*>(copy);
- - return true;
- - case QMetaType::QMatrix:
- - *static_cast<NS(QMatrix) *>(data) = *static_cast<const NS(QMatrix)*>(copy);
- - return true;
- - case QMetaType::QTransform:
- - *static_cast<NS(QTransform) *>(data) = *static_cast<const NS(QTransform)*>(copy);
- - return true;
- - case QMetaType::QMatrix4x4:
- - *static_cast<NS(QMatrix4x4) *>(data) = *static_cast<const NS(QMatrix4x4)*>(copy);
- - return true;
- - case QMetaType::QVector2D:
- - *static_cast<NS(QVector2D) *>(data) = *static_cast<const NS(QVector2D)*>(copy);
- - return true;
- - case QMetaType::QVector4D:
- - *static_cast<NS(QVector4D) *>(data) = *static_cast<const NS(QVector4D)*>(copy);
- - return true;
- - case QMetaType::QQuaternion:
- - *static_cast<NS(QQuaternion) *>(data) = *static_cast<const NS(QQuaternion)*>(copy);
- - return true;
- -
- - default:
- - if (type == qMetaTypeId<QVariant>()) {
- - *static_cast<NS(QVariant) *>(data) = *static_cast<const NS(QVariant)*>(copy);
- - return true;
- - } else if (type == qMetaTypeId<QJSValue>()) {
- - *static_cast<NS(QJSValue) *>(data) = *static_cast<const NS(QJSValue)*>(copy);
- - return true;
- - } else if (type == qMetaTypeId<QDeclarativeV8Handle>()) {
- - *static_cast<NS(QDeclarativeV8Handle) *>(data) = *static_cast<const NS(QDeclarativeV8Handle)*>(copy);
- - return true;
- - } else if (typeCategory(type) != Unknown) {
- - *static_cast<void **>(data) = *static_cast<void* const *>(copy);
- - return true;
- - }
- - break;
- - }
- - } else {
- - switch(type) {
- - case QMetaType::VoidStar:
- - case QMetaType::QObjectStar:
- - case QMetaType::QWidgetStar:
- - *static_cast<void **>(data) = 0;
- - return true;
- - case QMetaType::Long:
- - *static_cast<long *>(data) = long(0);
- - return true;
- - case QMetaType::Int:
- - *static_cast<int *>(data) = int(0);
- - return true;
- - case QMetaType::Short:
- - *static_cast<short *>(data) = short(0);
- - return true;
- - case QMetaType::Char:
- - *static_cast<char *>(data) = char(0);
- - return true;
- - case QMetaType::ULong:
- - *static_cast<ulong *>(data) = ulong(0);
- - return true;
- - case QMetaType::UInt:
- - *static_cast<uint *>(data) = uint(0);
- - return true;
- - case QMetaType::LongLong:
- - *static_cast<qlonglong *>(data) = qlonglong(0);
- - return true;
- - case QMetaType::ULongLong:
- - *static_cast<qulonglong *>(data) = qulonglong(0);
- - return true;
- - case QMetaType::UShort:
- - *static_cast<ushort *>(data) = ushort(0);
- - return true;
- - case QMetaType::UChar:
- - *static_cast<uchar *>(data) = uchar(0);
- - return true;
- - case QMetaType::Bool:
- - *static_cast<bool *>(data) = bool(false);
- - return true;
- - case QMetaType::Float:
- - *static_cast<float *>(data) = float(0);
- - return true;
- - case QMetaType::Double:
- - *static_cast<double *>(data) = double(0);
- - return true;
- - case QMetaType::QChar:
- - *static_cast<NS(QChar) *>(data) = NS(QChar)();
- - return true;
- - case QMetaType::QVariantMap:
- - *static_cast<NS(QVariantMap) *>(data) = NS(QVariantMap)();
- - return true;
- - case QMetaType::QVariantHash:
- - *static_cast<NS(QVariantHash) *>(data) = NS(QVariantHash)();
- - return true;
- - case QMetaType::QVariantList:
- - *static_cast<NS(QVariantList) *>(data) = NS(QVariantList)();
- - return true;
- - case QMetaType::QByteArray:
- - *static_cast<NS(QByteArray) *>(data) = NS(QByteArray)();
- - return true;
- - case QMetaType::QString:
- - *static_cast<NS(QString) *>(data) = NS(QString)();
- - return true;
- - case QMetaType::QStringList:
- - *static_cast<NS(QStringList) *>(data) = NS(QStringList)();
- - return true;
- - case QMetaType::QBitArray:
- - *static_cast<NS(QBitArray) *>(data) = NS(QBitArray)();
- - return true;
- - case QMetaType::QDate:
- - *static_cast<NS(QDate) *>(data) = NS(QDate)();
- - return true;
- - case QMetaType::QTime:
- - *static_cast<NS(QTime) *>(data) = NS(QTime)();
- - return true;
- - case QMetaType::QDateTime:
- - *static_cast<NS(QDateTime) *>(data) = NS(QDateTime)();
- - return true;
- - case QMetaType::QUrl:
- - *static_cast<NS(QUrl) *>(data) = NS(QUrl)();
- - return true;
- - case QMetaType::QLocale:
- - *static_cast<NS(QLocale) *>(data) = NS(QLocale)();
- - return true;
- - case QMetaType::QRect:
- - *static_cast<NS(QRect) *>(data) = NS(QRect)();
- - return true;
- - case QMetaType::QRectF:
- - *static_cast<NS(QRectF) *>(data) = NS(QRectF)();
- - return true;
- - case QMetaType::QSize:
- - *static_cast<NS(QSize) *>(data) = NS(QSize)();
- - return true;
- - case QMetaType::QSizeF:
- - *static_cast<NS(QSizeF) *>(data) = NS(QSizeF)();
- - return true;
- - case QMetaType::QLine:
- - *static_cast<NS(QLine) *>(data) = NS(QLine)();
- - return true;
- - case QMetaType::QLineF:
- - *static_cast<NS(QLineF) *>(data) = NS(QLineF)();
- - return true;
- - case QMetaType::QPoint:
- - *static_cast<NS(QPoint) *>(data) = NS(QPoint)();
- - return true;
- - case QMetaType::QPointF:
- - *static_cast<NS(QPointF) *>(data) = NS(QPointF)();
- - return true;
- - case QMetaType::QVector3D:
- - *static_cast<NS(QVector3D) *>(data) = NS(QVector3D)();
- - return true;
- -#ifndef QT_NO_REGEXP
- - case QMetaType::QRegExp:
- - *static_cast<NS(QRegExp) *>(data) = NS(QRegExp)();
- - return true;
- -#endif
- - case QMetaType::Void:
- - return true;
- -
- -#ifdef QT3_SUPPORT
- - case QMetaType::QColorGroup:
- - *static_cast<NS(QColorGroup) *>(data) = NS(QColorGroup)();
- - return true;
- -#endif
- -
- - case QMetaType::QFont:
- - *static_cast<NS(QFont) *>(data) = NS(QFont)();
- - return true;
- - case QMetaType::QPixmap:
- - *static_cast<NS(QPixmap) *>(data) = NS(QPixmap)();
- - return true;
- - case QMetaType::QBrush:
- - *static_cast<NS(QBrush) *>(data) = NS(QBrush)();
- - return true;
- - case QMetaType::QColor:
- - *static_cast<NS(QColor) *>(data) = NS(QColor)();
- - return true;
- - case QMetaType::QPalette:
- - *static_cast<NS(QPalette) *>(data) = NS(QPalette)();
- - return true;
- - case QMetaType::QImage:
- - *static_cast<NS(QImage) *>(data) = NS(QImage)();
- - return true;
- - case QMetaType::QPolygon:
- - *static_cast<NS(QPolygon) *>(data) = NS(QPolygon)();
- - return true;
- - case QMetaType::QRegion:
- - *static_cast<NS(QRegion) *>(data) = NS(QRegion)();
- - return true;
- - case QMetaType::QBitmap:
- - *static_cast<NS(QBitmap) *>(data) = NS(QBitmap)();
- - return true;
- -#ifndef QT_NO_CURSOR
- - case QMetaType::QCursor:
- - *static_cast<NS(QCursor) *>(data) = NS(QCursor)();
- - return true;
- -#endif
- - case QMetaType::QKeySequence:
- - *static_cast<NS(QKeySequence) *>(data) = NS(QKeySequence)();
- - return true;
- - case QMetaType::QPen:
- - *static_cast<NS(QPen) *>(data) = NS(QPen)();
- - return true;
- - case QMetaType::QTextLength:
- - *static_cast<NS(QTextLength) *>(data) = NS(QTextLength)();
- - return true;
- - case QMetaType::QTextFormat:
- - *static_cast<NS(QTextFormat) *>(data) = NS(QTextFormat)();
- - return true;
- - case QMetaType::QMatrix:
- - *static_cast<NS(QMatrix) *>(data) = NS(QMatrix)();
- - return true;
- - case QMetaType::QTransform:
- - *static_cast<NS(QTransform) *>(data) = NS(QTransform)();
- - return true;
- - case QMetaType::QMatrix4x4:
- - *static_cast<NS(QMatrix4x4) *>(data) = NS(QMatrix4x4)();
- - return true;
- - case QMetaType::QVector2D:
- - *static_cast<NS(QVector2D) *>(data) = NS(QVector2D)();
- - return true;
- - case QMetaType::QVector4D:
- - *static_cast<NS(QVector4D) *>(data) = NS(QVector4D)();
- - return true;
- - case QMetaType::QQuaternion:
- - *static_cast<NS(QQuaternion) *>(data) = NS(QQuaternion)();
- - return true;
- - default:
- - if (type == qMetaTypeId<QVariant>()) {
- - *static_cast<NS(QVariant) *>(data) = NS(QVariant)();
- - return true;
- - } else if (type == qMetaTypeId<QJSValue>()) {
- - *static_cast<NS(QJSValue) *>(data) = NS(QJSValue)();
- - return true;
- - } else if (type == qMetaTypeId<QDeclarativeV8Handle>()) {
- - *static_cast<NS(QDeclarativeV8Handle) *>(data) = NS(QDeclarativeV8Handle)();
- - return true;
- - } else if (typeCategory(type) != Unknown) {
- - *static_cast<void **>(data) = 0;
- - return true;
- - }
- - break;
- - }
- - }
- -
- - return false;
- -}
- -
- -QT_END_NAMESPACE
- diff --git a/src/declarative/qml/qdeclarativemetatype_p.h b/src/declarative/qml/qdeclarativemetatype_p.h
- index 39e8b85..e67d5c0 100644
- --- a/src/declarative/qml/qdeclarativemetatype_p.h
- +++ b/src/declarative/qml/qdeclarativemetatype_p.h
- @@ -71,9 +71,6 @@ class QDeclarativeTypeModule;
- class Q_DECLARATIVE_PRIVATE_EXPORT QDeclarativeMetaType
- {
- public:
- - static bool canCopy(int type);
- - static bool copy(int type, void *data, const void *copy = 0);
- -
- static QList<QString> qmlTypeNames();
- static QList<QDeclarativeType*> qmlTypes();
- --
- 1.7.6
Add Comment
Please, Sign In to add comment