/****************************************************************************
**
-** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
-** All rights reserved.
-** Contact: Nokia Corporation (qt-info@nokia.com)
+** Copyright (C) 2012 Nokia Corporation and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/
**
** This file is part of the QtDeclarative module of the Qt Toolkit.
**
**
**
**
+**
** $QT_END_LICENSE$
**
****************************************************************************/
-#include "private/qdeclarativeboundsignal_p.h"
+#include "qdeclarativeboundsignal_p.h"
-#include "private/qmetaobjectbuilder_p.h"
-#include "private/qdeclarativeengine_p.h"
-#include "private/qdeclarativeexpression_p.h"
-#include "private/qdeclarativecontext_p.h"
-#include "private/qdeclarativemetatype_p.h"
+#include <private/qmetaobjectbuilder_p.h>
+#include "qdeclarativeengine_p.h"
+#include "qdeclarativeexpression_p.h"
+#include "qdeclarativecontext_p.h"
+#include "qdeclarativemetatype_p.h"
#include "qdeclarative.h"
#include "qdeclarativecontext.h"
-#include "private/qdeclarativeglobal_p.h"
-#include "private/qdeclarativedebugtrace_p.h"
+#include "qdeclarativeglobal_p.h"
+#include <private/qdeclarativedebugtrace_p.h>
+#include <private/qv8debugservice_p.h>
#include <QtCore/qstringbuilder.h>
#include <QtCore/qdebug.h>
if (QDeclarativeDebugService::isDebuggingEnabled()) {
QDeclarativeDebugTrace::startRange(QDeclarativeDebugTrace::HandlingSignal);
QDeclarativeDebugTrace::rangeData(QDeclarativeDebugTrace::HandlingSignal, QLatin1String(m_signal.signature()) % QLatin1String(": ") % m_expression->expression());
- QDeclarativeDebugTrace::rangeLocation(QDeclarativeDebugTrace::HandlingSignal, m_expression->sourceFile(), m_expression->lineNumber());
+ QDeclarativeDebugTrace::rangeLocation(QDeclarativeDebugTrace::HandlingSignal, m_expression->sourceFile(), m_expression->lineNumber(), m_expression->columnNumber());
+ QV8DebugService::instance()->signalEmitted(QString::fromAscii(m_signal.signature()));
}
m_isEvaluating = true;
if (!m_paramsValid) {
} else {
QByteArray propType = type;
if (t >= QVariant::UserType || t == QVariant::Invalid) {
- //copy of QDeclarativeObjectScriptClass::enumType()
QByteArray scope;
QByteArray name;
int scopeIdx = propType.lastIndexOf("::");
}
}
}
- 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();
QDeclarativeBoundSignalParameters::~QDeclarativeBoundSignalParameters()
{
delete [] types;
- qFree(myMetaObject);
+ free(myMetaObject);
}
void QDeclarativeBoundSignalParameters::setValues(void **v)
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]);
- }
+ int t = types[id - 1];
+ void *p = a[0];
+ QMetaType::destruct(t, p);
+ QMetaType::construct(t, p, values[id]);
return -1;
} else {
return qt_metacall(c, id, a);