From 494d2d9041b7277f6d22146593ff01c7c7f7021b Mon Sep 17 00:00:00 2001 From: Aaron Kennedy Date: Mon, 24 Aug 2009 17:03:09 +1000 Subject: Fix test on case insensitive filesystems. We cannot have a failingComponent.qml and a FailingComponent.qml file --- tests/auto/declarative/qmlparser/FailingComponent.qml | 5 ----- tests/auto/declarative/qmlparser/failingComponent.qml | 8 ++++---- tests/auto/declarative/qmlparser/failingComponentTest.qml | 4 ++++ tests/auto/declarative/qmlparser/tst_qmlparser.cpp | 2 +- 4 files changed, 9 insertions(+), 10 deletions(-) delete mode 100644 tests/auto/declarative/qmlparser/FailingComponent.qml create mode 100644 tests/auto/declarative/qmlparser/failingComponentTest.qml diff --git a/tests/auto/declarative/qmlparser/FailingComponent.qml b/tests/auto/declarative/qmlparser/FailingComponent.qml deleted file mode 100644 index 1c01e3d..0000000 --- a/tests/auto/declarative/qmlparser/FailingComponent.qml +++ /dev/null @@ -1,5 +0,0 @@ -import Qt 4.6 - -Object { - a: 10 -} diff --git a/tests/auto/declarative/qmlparser/failingComponent.qml b/tests/auto/declarative/qmlparser/failingComponent.qml index bc21243..1c01e3d 100644 --- a/tests/auto/declarative/qmlparser/failingComponent.qml +++ b/tests/auto/declarative/qmlparser/failingComponent.qml @@ -1,5 +1,5 @@ -import Test 1.0 -MyContainer { - FailingComponent {} -} +import Qt 4.6 +Object { + a: 10 +} diff --git a/tests/auto/declarative/qmlparser/failingComponentTest.qml b/tests/auto/declarative/qmlparser/failingComponentTest.qml new file mode 100644 index 0000000..74a6acf --- /dev/null +++ b/tests/auto/declarative/qmlparser/failingComponentTest.qml @@ -0,0 +1,4 @@ +import Test 1.0 +MyContainer { + FailingComponent {} +} diff --git a/tests/auto/declarative/qmlparser/tst_qmlparser.cpp b/tests/auto/declarative/qmlparser/tst_qmlparser.cpp index 0bac946..a9c4351 100644 --- a/tests/auto/declarative/qmlparser/tst_qmlparser.cpp +++ b/tests/auto/declarative/qmlparser/tst_qmlparser.cpp @@ -143,7 +143,7 @@ void tst_qmlparser::errors_data() QTest::newRow("unregisteredObject") << "unregisteredObject.qml" << "unregisteredObject.errors.txt" << false; QTest::newRow("empty") << "empty.qml" << "empty.errors.txt" << false; QTest::newRow("missingObject") << "missingObject.qml" << "missingObject.errors.txt" << false; - QTest::newRow("failingComponent") << "failingComponent.qml" << "failingComponent.errors.txt" << false; + QTest::newRow("failingComponent") << "failingComponentTest.qml" << "failingComponent.errors.txt" << false; QTest::newRow("missingSignal") << "missingSignal.qml" << "missingSignal.errors.txt" << false; QTest::newRow("finalOverride") << "finalOverride.qml" << "finalOverride.errors.txt" << false; } -- cgit v0.12 From 40c12237b506bda373f5218c13e356de025c3716 Mon Sep 17 00:00:00 2001 From: Kai Koehne Date: Mon, 24 Aug 2009 09:53:15 +0200 Subject: Expose type library information in QmlDomObject New QmlDomObject::objectTypeMajorVersion && objectTypeMinorVersion accessors expose import library information. --- src/declarative/qml/qmlcompositetypemanager.cpp | 19 ++++- src/declarative/qml/qmldom.cpp | 15 ++++ src/declarative/qml/qmldom.h | 3 + src/declarative/qml/qmlengine.cpp | 108 ++++++++++++++++++++---- src/declarative/qml/qmlengine_p.h | 18 +++- src/declarative/qml/qmlparser.cpp | 2 +- src/declarative/qml/qmlparser_p.h | 5 ++ src/declarative/qml/qmlscriptparser.cpp | 1 + tests/auto/declarative/qmldom/tst_qmldom.cpp | 2 + 9 files changed, 152 insertions(+), 21 deletions(-) diff --git a/src/declarative/qml/qmlcompositetypemanager.cpp b/src/declarative/qml/qmlcompositetypemanager.cpp index 0fb6c86..5bf2dc0 100644 --- a/src/declarative/qml/qmlcompositetypemanager.cpp +++ b/src/declarative/qml/qmlcompositetypemanager.cpp @@ -327,8 +327,23 @@ void QmlCompositeTypeManager::compile(QmlCompositeTypeData *unit) } QUrl url; - if (!QmlEnginePrivate::get(engine)->resolveType(unit->imports, typeName, &ref.type, &url)) { - // XXX could produce error message here. + QmlEnginePrivate::ImportedNamespace *s; + QByteArray localTypeName; + + QmlEnginePrivate::get(engine)->resolveNamespace(unit->imports, typeName, &s, &localTypeName); + if (QmlEnginePrivate::get(engine)->resolveTypeInNamespace(s, localTypeName, &ref.type, &url)) { + int majorVersion; + int minorVersion; + if (s->getTypeInfo(localTypeName, 0, &majorVersion, &minorVersion)) { + foreach (QmlParser::Object *obj, parserRef->refObjects) { + // store namespace for DOM + obj->majorVersion = majorVersion; + obj->minorVersion = minorVersion; + } + } + } else { + // try base url + url = unit->imports.baseUrl().resolved(QUrl(QLatin1String(typeName + ".qml"))); } if (ref.type) { diff --git a/src/declarative/qml/qmldom.cpp b/src/declarative/qml/qmldom.cpp index 22a8e49..bc35f93 100644 --- a/src/declarative/qml/qmldom.cpp +++ b/src/declarative/qml/qmldom.cpp @@ -776,6 +776,21 @@ QByteArray QmlDomObject::objectClassName() const return QByteArray(); } +int QmlDomObject::objectTypeMajorVersion() const +{ + if (d->object) + return d->object->majorVersion; + else + return -1; +} + +int QmlDomObject::objectTypeMinorVersion() const +{ + if (d->object) + return d->object->minorVersion; + else + return -1; +} /*! Returns the QML id assigned to this object, or an empty QByteArray if no id diff --git a/src/declarative/qml/qmldom.h b/src/declarative/qml/qmldom.h index 32ed2da..60e7b38 100644 --- a/src/declarative/qml/qmldom.h +++ b/src/declarative/qml/qmldom.h @@ -152,6 +152,9 @@ public: QByteArray objectType() const; QByteArray objectClassName() const; + int objectTypeMajorVersion() const; + int objectTypeMinorVersion() const; + QString objectId() const; void setObjectId(const QByteArray &); diff --git a/src/declarative/qml/qmlengine.cpp b/src/declarative/qml/qmlengine.cpp index 351bd8a..c56da6e 100644 --- a/src/declarative/qml/qmlengine.cpp +++ b/src/declarative/qml/qmlengine.cpp @@ -1072,7 +1072,7 @@ void QmlObjectScriptClass::setProperty(QScriptValue &object, } -struct QmlEnginePrivate::ImportedNamespace { +struct QmlImportedNamespacePrivate { QStringList urls; QList majversions; QList minversions; @@ -1177,10 +1177,10 @@ public: } else { url = base.resolved(QUrl(url)).toString(); } - s->urls.append(url); - s->majversions.append(vmaj); - s->minversions.append(vmin); - s->isLibrary.append(importType == QmlScriptParser::Import::Library); + s->d->urls.append(url); + s->d->majversions.append(vmaj); + s->d->minversions.append(vmin); + s->d->isLibrary.append(importType == QmlScriptParser::Import::Library); return true; } @@ -1202,7 +1202,7 @@ public: } QString unqualifiedtype = type.mid(slash+1); if (s) - return s->find(unqualifiedtype); + return s->d->find(unqualifiedtype); else return QUrl(); } @@ -1226,16 +1226,37 @@ public: } QByteArray unqualifiedtype = slash < 0 ? type : type.mid(slash+1); // common-case opt (QString::mid works fine, but slower) if (s) - return s->findBuiltin(unqualifiedtype,found); + return s->d->findBuiltin(unqualifiedtype,found); else return 0; - } + } QmlEnginePrivate::ImportedNamespace *findNamespace(const QString& type) { return set.value(type); } + void resolveNamespace(const QByteArray &type, QmlEnginePrivate::ImportedNamespace **ns, QByteArray *unqualifiedType) + { + QmlEnginePrivate::ImportedNamespace *s = 0; + int slash = type.indexOf('/'); + if (slash >= 0) { + while (!s) { + s = set.value(QString::fromLatin1(type.left(slash))); + int nslash = type.indexOf('/',slash+1); + if (nslash > 0) + slash = nslash; + else + break; + } + } else { + s = &unqualifiedset; + } + + *ns = s; + *unqualifiedType = slash < 0 ? type : type.mid(slash+1); // common-case opt (QString::mid works fine, but slower) + } + private: QmlEnginePrivate::ImportedNamespace unqualifiedset; QHash set; @@ -1258,6 +1279,37 @@ void QmlEnginePrivate::Imports::setBaseUrl(const QUrl& url) base = url; } +QmlEnginePrivate::ImportedNamespace::ImportedNamespace() + : d(new QmlImportedNamespacePrivate) +{ +} + +QmlEnginePrivate::ImportedNamespace::~ImportedNamespace() +{ + delete d; +} + +bool QmlEnginePrivate::ImportedNamespace::getTypeInfo(const QByteArray &typeName, QString *uri, int *majorVersion, int *minorVersion) +{ + for (int i=0; iurls.count(); ++i) { + int vmaj = d->majversions.at(i); + int vmin = d->minversions.at(i); + QByteArray qt = d->urls.at(i).toLatin1(); + qt += "/"; + qt += typeName; + if (QmlMetaType::qmlType(qt,vmaj,vmin)) { + if (uri) + *uri = d->urls.at(i); + if (majorVersion) + *majorVersion = d->majversions.at(i); + if (minorVersion) + *minorVersion = d->minversions.at(i); + return true; + } + } + return false; +} + /*! Adds \a path as a directory where installed QML components are defined in a URL-based directory structure. @@ -1312,11 +1364,6 @@ bool QmlEnginePrivate::addToImport(Imports* imports, const QString& uri, const Q */ bool QmlEnginePrivate::resolveType(const Imports& imports, const QByteArray& type, QmlType** type_return, QUrl* url_return, ImportedNamespace** ns_return) const { - if (ns_return) { - *ns_return = imports.d->findNamespace(QLatin1String(type)); - if (*ns_return) - return true; - } if (type_return) { QmlType* t = imports.d->findBuiltin(type); if (!t) t = QmlMetaType::qmlType(type,0,0); // Try global namespace @@ -1339,6 +1386,11 @@ bool QmlEnginePrivate::resolveType(const Imports& imports, const QByteArray& typ return true; } } + if (ns_return) { + *ns_return = imports.d->findNamespace(QLatin1String(type)); + if (*ns_return) + return true; + } if (qmlImportTrace()) qDebug() << "QmlEngine::resolveType" << type << " not found"; return false; @@ -1347,6 +1399,16 @@ bool QmlEnginePrivate::resolveType(const Imports& imports, const QByteArray& typ /*! \internal + Splits a fully qualified type name into the namespace and the unqualified type name. +*/ +void QmlEnginePrivate::resolveNamespace(const Imports& imports, const QByteArray &type, ImportedNamespace **ns, QByteArray *unqualifiedType) const +{ + imports.d->resolveNamespace(type, ns, unqualifiedType); +} + +/*! + \internal + Searching \e only in the namespace \a ns (previously returned in a call to resolveType(), \a type is found and returned to either a QmlType stored at \a type_return, or @@ -1354,14 +1416,28 @@ bool QmlEnginePrivate::resolveType(const Imports& imports, const QByteArray& typ If either return pointer is 0, the corresponding search is not done. */ -void QmlEnginePrivate::resolveTypeInNamespace(ImportedNamespace* ns, const QByteArray& type, QmlType** type_return, QUrl* url_return ) const +bool QmlEnginePrivate::resolveTypeInNamespace(ImportedNamespace* ns, const QByteArray& type, QmlType** type_return, QUrl* url_return ) const { if (type_return) { - *type_return = ns->findBuiltin(type); + QmlType* t = ns->d->findBuiltin(type); + if (!t) t = QmlMetaType::qmlType(type,0,0); // Try global namespace + if (t) { + *type_return = t; + if (qmlImportTrace()) + qDebug() << "QmlEngine::resolveTypeInNamespace" << type << "= (builtin)"; + return true; + } } if (url_return) { - *url_return = ns->find(QLatin1String(type)); + QUrl url = ns->d->find(QLatin1String(type)); + if (url.isValid()) { + if (url_return) *url_return = url; + if (qmlImportTrace()) + qDebug() << "QmlEngine::resolveType" << type << "=" << url; + return true; + } } + return false; } QT_END_NAMESPACE diff --git a/src/declarative/qml/qmlengine_p.h b/src/declarative/qml/qmlengine_p.h index 4142872..c84b3b5 100644 --- a/src/declarative/qml/qmlengine_p.h +++ b/src/declarative/qml/qmlengine_p.h @@ -195,10 +195,24 @@ public: QUrl base; QmlImportsPrivate *d; }; - struct ImportedNamespace; + + struct ImportedNamespace { + ImportedNamespace(); + ~ImportedNamespace(); + + bool getTypeInfo(const QByteArray &typeName, QString *uri, int *vmaj, int *vmin); + private: + friend class QmlImportsPrivate; + friend class QmlEnginePrivate; + class QmlImportedNamespacePrivate *d; + }; + bool addToImport(Imports*, const QString& uri, const QString& prefix, int vmaj, int vmin, QmlScriptParser::Import::Type importType) const; + bool resolveType(const Imports&, const QByteArray& type, QmlType** type_return, QUrl* url_return, ImportedNamespace** ns_return=0) const; - void resolveTypeInNamespace(ImportedNamespace*, const QByteArray& type, QmlType** type_return, QUrl* url_return ) const; + + void resolveNamespace(const Imports& imports, const QByteArray &type, ImportedNamespace **s, QByteArray *unqualifiedType) const; + bool resolveTypeInNamespace(ImportedNamespace*, const QByteArray& type, QmlType** type_return, QUrl* url_return ) const; static QScriptValue qmlScriptObject(QObject*, QmlEngine*); diff --git a/src/declarative/qml/qmlparser.cpp b/src/declarative/qml/qmlparser.cpp index 2a67c92..0f2a282 100644 --- a/src/declarative/qml/qmlparser.cpp +++ b/src/declarative/qml/qmlparser.cpp @@ -61,7 +61,7 @@ QT_BEGIN_NAMESPACE using namespace QmlParser; QmlParser::Object::Object() -: type(-1), idIndex(-1), metatype(0), defaultProperty(0), parserStatusCast(-1) +: type(-1), majorVersion(-1), minorVersion(-1), idIndex(-1), metatype(0), defaultProperty(0), parserStatusCast(-1) { } diff --git a/src/declarative/qml/qmlparser_p.h b/src/declarative/qml/qmlparser_p.h index 120af75..8a92a9f 100644 --- a/src/declarative/qml/qmlparser_p.h +++ b/src/declarative/qml/qmlparser_p.h @@ -115,6 +115,11 @@ namespace QmlParser int type; // The url of this object if it is an external type. Used by the DOM QUrl url; + + // version information if type is defined in library or C++ + int majorVersion; + int minorVersion; + // The fully-qualified name of this type QByteArray typeName; // The class name diff --git a/src/declarative/qml/qmlscriptparser.cpp b/src/declarative/qml/qmlscriptparser.cpp index 187f640..418eba7 100644 --- a/src/declarative/qml/qmlscriptparser.cpp +++ b/src/declarative/qml/qmlscriptparser.cpp @@ -831,6 +831,7 @@ void QmlScriptParser::clear() root->release(); root = 0; } + _imports.clear(); qDeleteAll(_refTypes); _refTypes.clear(); _errors.clear(); diff --git a/tests/auto/declarative/qmldom/tst_qmldom.cpp b/tests/auto/declarative/qmldom/tst_qmldom.cpp index dd02bce..e1419cc 100644 --- a/tests/auto/declarative/qmldom/tst_qmldom.cpp +++ b/tests/auto/declarative/qmldom/tst_qmldom.cpp @@ -41,6 +41,8 @@ void tst_qmldom::loadSimple() QVERIFY(!rootObject.isComponent()); QVERIFY(!rootObject.isCustomType()); QVERIFY(rootObject.objectType() == "Qt/Item"); + QVERIFY(rootObject.objectTypeMajorVersion() == 4); + QVERIFY(rootObject.objectTypeMinorVersion() == 6); } void tst_qmldom::loadProperties() -- cgit v0.12 From 781e07f803972942001f624d96b0087203f41de6 Mon Sep 17 00:00:00 2001 From: Aaron Kennedy Date: Mon, 24 Aug 2009 18:08:58 +1000 Subject: Fix dial example Follow now has value property, so need to reference the root object explicitly. --- examples/declarative/dial/DialLibrary/Dial.qml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/examples/declarative/dial/DialLibrary/Dial.qml b/examples/declarative/dial/DialLibrary/Dial.qml index 08308fa..f53b25e 100644 --- a/examples/declarative/dial/DialLibrary/Dial.qml +++ b/examples/declarative/dial/DialLibrary/Dial.qml @@ -1,6 +1,7 @@ import Qt 4.6 Item { + id: Root property real value : 0 width: 210; height: 210 @@ -26,9 +27,10 @@ Item { origin.x: 7; origin.y: 65 angle: -130 angle: Follow { +id: MyFollow spring: 1.4 damping: .15 - source: Math.min(Math.max(-130, value*2.2 - 130), 133) + source: Math.min(Math.max(-130, Root.value*2.2 - 130), 133) } } } -- cgit v0.12 From cb81a637c8ef041cff2e96c6065763084776d75a Mon Sep 17 00:00:00 2001 From: Aaron Kennedy Date: Mon, 24 Aug 2009 18:34:41 +1000 Subject: Fix crash on missing imports. This would previously crash: Blah.Rectangle {} --- src/declarative/qml/qmlengine.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/declarative/qml/qmlengine.cpp b/src/declarative/qml/qmlengine.cpp index c56da6e..fd18b26 100644 --- a/src/declarative/qml/qmlengine.cpp +++ b/src/declarative/qml/qmlengine.cpp @@ -1418,6 +1418,9 @@ void QmlEnginePrivate::resolveNamespace(const Imports& imports, const QByteArray */ bool QmlEnginePrivate::resolveTypeInNamespace(ImportedNamespace* ns, const QByteArray& type, QmlType** type_return, QUrl* url_return ) const { + if (!ns) + return false; + if (type_return) { QmlType* t = ns->d->findBuiltin(type); if (!t) t = QmlMetaType::qmlType(type,0,0); // Try global namespace -- cgit v0.12 From e38b15ce001c0bf1cf74c8970cc8a28b6226472b Mon Sep 17 00:00:00 2001 From: Aaron Kennedy Date: Mon, 24 Aug 2009 18:40:40 +1000 Subject: Disallow lowercase import qualifier ids --- src/declarative/qml/qmlscriptparser.cpp | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/declarative/qml/qmlscriptparser.cpp b/src/declarative/qml/qmlscriptparser.cpp index 418eba7..ca2d295 100644 --- a/src/declarative/qml/qmlscriptparser.cpp +++ b/src/declarative/qml/qmlscriptparser.cpp @@ -432,8 +432,17 @@ bool ProcessAST::visit(AST::UiImport *node) AST::SourceLocation startLoc = node->importToken; AST::SourceLocation endLoc = node->semicolonToken; - if (node->importId) + if (node->importId) { import.qualifier = node->importId->asString(); + if (!import.qualifier.at(0).isUpper()) { + QmlError error; + error.setDescription(QLatin1String("Invalid import qualifier ID")); + error.setLine(node->importIdToken.startLine); + error.setColumn(node->importIdToken.startColumn); + _parser->_errors << error; + return false; + } + } if (node->versionToken.isValid()) import.version = textAt(node->versionToken); -- cgit v0.12 From b2102b848f1f6075c10b60d8de1ee531f0eddd30 Mon Sep 17 00:00:00 2001 From: Kai Koehne Date: Mon, 24 Aug 2009 11:44:48 +0200 Subject: Remove setter from QmlDom classes All methods modifying the object dom were removed. Change was discussed with Aaron. --- src/declarative/qml/qmldom.cpp | 110 +---------------------------------------- src/declarative/qml/qmldom.h | 11 ----- 2 files changed, 2 insertions(+), 119 deletions(-) diff --git a/src/declarative/qml/qmldom.cpp b/src/declarative/qml/qmldom.cpp index bc35f93..dca6bb9 100644 --- a/src/declarative/qml/qmldom.cpp +++ b/src/declarative/qml/qmldom.cpp @@ -80,11 +80,8 @@ QmlDomDocumentPrivate::~QmlDomDocumentPrivate() QmlDomDocument::version(), and a root object, accessible through QmlDomDocument::rootObject(). - The QmlDomDocument class allows the programmer to load a QML document, by - calling QmlDomDocument::load(), manipulate it and save it to textual form - by calling QmlDomDocument::save(). By using the QML DOM API, editors can - non-destructively modify a QML document even if they only understand a - subset of the total QML functionality. + The QmlDomDocument class allows the programmer to inspect a QML document by + calling QmlDomDocument::load(). The following example loads a QML file from disk, and prints out its root object type and the properties assigned in the root object. @@ -417,15 +414,6 @@ QmlDomValue QmlDomProperty::value() const } /*! - Sets the QmlDomValue that is assigned to this property to \a value. -*/ -void QmlDomProperty::setValue(const QmlDomValue &value) -{ - Q_UNUSED(value); - qWarning("QmlDomProperty::setValue(const QmlDomValue &): Not Implemented"); -} - -/*! Returns the position in the input data where the property ID startd, or -1 if the property is invalid. */ @@ -689,11 +677,6 @@ QGraphicsWidget { "opacity" and "size". Obviously QGraphicsWidget has many more properties than just these two, but the QML DOM representation only contains those assigned values (or bindings) in the QML file. - - The DOM tree can be modified to include new property assignments by calling - QmlDomObject::addProperty(). Existing property assignments can be modified - through the QmlDomProperty::setValue() method, or removed entirely by - calling QmlDomObject::removeProperty(). */ /*! @@ -808,17 +791,6 @@ QString QmlDomObject::objectId() const } /*! - Set the object \a id. If any other object within the DOM tree has the same - id, the other object's id will be cleared. -*/ -void QmlDomObject::setObjectId(const QByteArray &id) -{ - Q_UNUSED(id); - qWarning("QmlDomObject::setObjectId(const QByteArray &): Not implemented"); -} - - -/*! Returns the list of assigned properties on this object. In the following example, "text" and "x" properties would be returned. @@ -878,27 +850,6 @@ QmlDomProperty QmlDomObject::property(const QByteArray &name) const return QmlDomProperty(); } -/*! - Remove the property \a name from this object, if it exists. Otherwise does - nothing. -*/ -void QmlDomObject::removeProperty(const QByteArray &name) -{ - Q_UNUSED(name); - qWarning("QmlDomObject::removeProperty(const QByteArray &): Not implemented"); -} - -/*! - Adds the property \a name with the specified \a value to this object. If - a property by \a name already exists, it will be removed. -*/ -void QmlDomObject::addProperty(const QByteArray &name, const QmlDomValue &value) -{ - Q_UNUSED(name); - Q_UNUSED(value); - qWarning("QmlDomObject::addProperty(const QByteArray &, const QmlDomValue &): Not implemented"); -} - QList QmlDomObject::dynamicProperties() const { QList properties; @@ -950,18 +901,6 @@ bool QmlDomObject::isCustomType() const } /*! - Sets the custom type \a data. If this type is not a custom type, this - method does nothing. - - \sa QmlDomObject::isCustomType() QmlDomObject::customTypeData() -*/ -void QmlDomObject::setCustomTypeData(const QByteArray &data) -{ - Q_UNUSED(data); - qWarning("QmlDomObject::setCustomTypeData(const QByteArray &): Not implemented"); -} - -/*! If this object represents a custom type, returns the data associated with the custom type, otherwise returns an empty QByteArray(). QmlDomObject::isCustomType() can be used to check if this object represents @@ -1116,15 +1055,6 @@ QString QmlDomValueLiteral::literal() const } /*! - Sets the literal \a value. -*/ -void QmlDomValueLiteral::setLiteral(const QString &value) -{ - Q_UNUSED(value); - qWarning("QmlDomValueLiteral::setLiteral(const QString &): Not implemented"); -} - -/*! \class QmlDomValueBinding \internal \brief The QmlDomValueBinding class represents a property binding. @@ -1186,15 +1116,6 @@ QString QmlDomValueBinding::binding() const } /*! - Sets the binding \a expression. -*/ -void QmlDomValueBinding::setBinding(const QString &expression) -{ - Q_UNUSED(expression); - qWarning("QmlDomValueBinding::setBinding(const QString &): Not implemented"); -} - -/*! \class QmlDomValueValueSource \internal \brief The QmlDomValueValueSource class represents a value source assignment value. @@ -1274,14 +1195,6 @@ QmlDomObject QmlDomValueValueSource::object() const return rv; } -/*! - Sets the value source \a object. -*/ -void QmlDomValueValueSource::setObject(const QmlDomObject &object) -{ - Q_UNUSED(object); - qWarning("QmlDomValueValueSource::setObject(const QmlDomObject &): Not implemented"); -} QmlDomValuePrivate::QmlDomValuePrivate() : property(0), value(0) @@ -1659,15 +1572,6 @@ QList QmlDomList::values() const } /*! - Set the list of QmlDomValue's to \a values. -*/ -void QmlDomList::setValues(const QList &values) -{ - Q_UNUSED(values); - qWarning("QmlDomList::setValues(const QList &): Not implemented"); -} - -/*! Returns the position in the input data where the list started, or -1 if the property is invalid. */ @@ -1793,16 +1697,6 @@ QmlDomObject QmlDomComponent::componentRoot() const return rv; } -/*! - Set the component's \a root object. -*/ -void QmlDomComponent::setComponentRoot(const QmlDomObject &root) -{ - Q_UNUSED(root); - qWarning("QmlDomComponent::setComponentRoot(const QmlDomObject &): Not implemented"); -} - - QmlDomImportPrivate::QmlDomImportPrivate() : type(File) { diff --git a/src/declarative/qml/qmldom.h b/src/declarative/qml/qmldom.h index 60e7b38..0366d37 100644 --- a/src/declarative/qml/qmldom.h +++ b/src/declarative/qml/qmldom.h @@ -100,7 +100,6 @@ public: bool isDefaultProperty() const; QmlDomValue value() const; - void setValue(const QmlDomValue &); int position() const; int length() const; @@ -156,20 +155,15 @@ public: int objectTypeMinorVersion() const; QString objectId() const; - void setObjectId(const QByteArray &); QList properties() const; QmlDomProperty property(const QByteArray &) const; - void removeProperty(const QByteArray &); - void addProperty(const QByteArray &, const QmlDomValue &); - QList dynamicProperties() const; QmlDomDynamicProperty dynamicProperty(const QByteArray &) const; bool isCustomType() const; QByteArray customTypeData() const; - void setCustomTypeData(const QByteArray &); bool isComponent() const; QmlDomComponent toComponent() const; @@ -197,7 +191,6 @@ public: QmlDomValueLiteral &operator=(const QmlDomValueLiteral &); QString literal() const; - void setLiteral(const QString &); private: friend class QmlDomValue; @@ -213,7 +206,6 @@ public: QmlDomValueBinding &operator=(const QmlDomValueBinding &); QString binding() const; - void setBinding(const QString &); private: friend class QmlDomValue; @@ -229,7 +221,6 @@ public: QmlDomValueValueSource &operator=(const QmlDomValueValueSource &); QmlDomObject object() const; - void setObject(const QmlDomObject &); private: friend class QmlDomValue; @@ -245,7 +236,6 @@ public: QmlDomComponent &operator=(const QmlDomComponent &); QmlDomObject componentRoot() const; - void setComponentRoot(const QmlDomObject &); }; class Q_DECLARATIVE_EXPORT QmlDomValue @@ -298,7 +288,6 @@ public: QmlDomList &operator=(const QmlDomList &); QList values() const; - void setValues(const QList &); int position() const; int length() const; -- cgit v0.12 From 8c6b5eec52f84ccd76136f0bb4037036943d2a9a Mon Sep 17 00:00:00 2001 From: Kai Koehne Date: Mon, 24 Aug 2009 11:53:56 +0200 Subject: Remove QmlDomDocument::version Has been superseeded by the versioning/library infrastructure. --- src/declarative/qml/qmldom.cpp | 12 +----------- src/declarative/qml/qmldom.h | 1 - 2 files changed, 1 insertion(+), 12 deletions(-) diff --git a/src/declarative/qml/qmldom.cpp b/src/declarative/qml/qmldom.cpp index dca6bb9..78cd906 100644 --- a/src/declarative/qml/qmldom.cpp +++ b/src/declarative/qml/qmldom.cpp @@ -76,8 +76,7 @@ QmlDomDocumentPrivate::~QmlDomDocumentPrivate() \brief The QmlDomDocument class represents the root of a QML document A QML document is a self-contained snippet of QML, usually contained in a - single file. Each document has a version number, accessible through - QmlDomDocument::version(), and a root object, accessible through + single file. Each document has a root object, accessible through QmlDomDocument::rootObject(). The QmlDomDocument class allows the programmer to inspect a QML document by @@ -133,15 +132,6 @@ QmlDomDocument &QmlDomDocument::operator=(const QmlDomDocument &other) } /*! - Return the version number of the Qml document. Currently only version - 1 exists. -*/ -int QmlDomDocument::version() const -{ - return 1; -} - -/*! Returns all import statements in qml. */ QList QmlDomDocument::imports() const diff --git a/src/declarative/qml/qmldom.h b/src/declarative/qml/qmldom.h index 0366d37..5c76004 100644 --- a/src/declarative/qml/qmldom.h +++ b/src/declarative/qml/qmldom.h @@ -72,7 +72,6 @@ public: ~QmlDomDocument(); QmlDomDocument &operator=(const QmlDomDocument &); - int version() const; QList imports() const; QList errors() const; -- cgit v0.12 From 9e2114fa326be128b03268865b39ddb2731e0173 Mon Sep 17 00:00:00 2001 From: Kai Koehne Date: Mon, 24 Aug 2009 11:55:35 +0200 Subject: Remove QmlDomDocument::save --- src/declarative/qml/qmldom.cpp | 13 +------------ src/declarative/qml/qmldom.h | 1 - 2 files changed, 1 insertion(+), 13 deletions(-) diff --git a/src/declarative/qml/qmldom.cpp b/src/declarative/qml/qmldom.cpp index 78cd906..2aaf492 100644 --- a/src/declarative/qml/qmldom.cpp +++ b/src/declarative/qml/qmldom.cpp @@ -144,7 +144,7 @@ QList QmlDomDocument::imports() const data. On success, true is returned. If the \a data is malformed, false is returned and QmlDomDocument::loadError() contains an error description. - \sa QmlDomDocument::save() QmlDomDocument::loadError() + \sa QmlDomDocument::loadError() */ bool QmlDomDocument::load(QmlEngine *engine, const QByteArray &data, const QUrl &url) { @@ -211,17 +211,6 @@ QList QmlDomDocument::errors() const } /*! - Return a saved copy of the QmlDomDocument. The returned data will be valid - QML XML data. - - \sa load() -*/ -QByteArray QmlDomDocument::save() const -{ - return QByteArray(); -} - -/*! Returns the document's root object, or an invalid QmlDomObject if the document has no root. diff --git a/src/declarative/qml/qmldom.h b/src/declarative/qml/qmldom.h index 5c76004..f344bb2 100644 --- a/src/declarative/qml/qmldom.h +++ b/src/declarative/qml/qmldom.h @@ -76,7 +76,6 @@ public: QList errors() const; bool load(QmlEngine *, const QByteArray &, const QUrl & = QUrl()); - QByteArray save() const; QmlDomObject rootObject() const; -- cgit v0.12