QmlJS: Switch to new format for QML meta data.

This commit is contained in:
Christian Kamm
2011-02-08 13:22:34 +01:00
parent dd1de1b82f
commit 2ec429e8ce
30 changed files with 10091 additions and 7080 deletions

View File

@@ -585,20 +585,21 @@ class QMLJS_EXPORT CppQmlTypesLoader
{
public:
/** \return an empty list when successful, error messages otherwise. */
static QStringList loadXml(const QFileInfoList &xmlFiles);
static QList<LanguageUtils::FakeMetaObject::ConstPtr> builtinObjects;
static QStringList loadQmlTypes(const QFileInfoList &xmlFiles);
static QHash<QString, LanguageUtils::FakeMetaObject::ConstPtr> builtinObjects;
// parses the xml string and fills the newObjects map
static QString parseQmlTypeXml(const QByteArray &xml,
QMap<QString, LanguageUtils::FakeMetaObject::Ptr> *newObjects);
static QString parseQmlTypeDescriptions(const QByteArray &xml,
QHash<QString, LanguageUtils::FakeMetaObject::Ptr> *newObjects);
private:
static void setSuperClasses(QMap<QString, LanguageUtils::FakeMetaObject::Ptr> *newObjects);
static void setSuperClasses(QHash<QString, LanguageUtils::FakeMetaObject::Ptr> *newObjects);
};
class QMLJS_EXPORT CppQmlTypes
{
public:
void load(Interpreter::Engine *interpreter, const QList<LanguageUtils::FakeMetaObject::ConstPtr> &objects);
template <typename T>
void load(Interpreter::Engine *interpreter, const T &objects);
QList<Interpreter::QmlObjectValue *> typesForImport(const QString &prefix, LanguageUtils::ComponentVersion version) const;
Interpreter::QmlObjectValue *typeForImport(const QString &qualifiedName,