diff options
author | Michael Brasser <michael.brasser@nokia.com> | 2009-08-05 23:23:43 (GMT) |
---|---|---|
committer | Michael Brasser <michael.brasser@nokia.com> | 2009-08-05 23:23:43 (GMT) |
commit | d018b73c2a79e79f50a988c848f040d263d0e75b (patch) | |
tree | f87dc897b293ccc653e3fae8202dd7605dd73640 /src/declarative/qml/qmlcontext_p.h | |
parent | 304238b586b75ee73d46d2de4ffdb0ed40218b70 (diff) | |
parent | c0525981ffb291fc281a2daaafa290d4ff5917f4 (diff) | |
download | Qt-d018b73c2a79e79f50a988c848f040d263d0e75b.zip Qt-d018b73c2a79e79f50a988c848f040d263d0e75b.tar.gz Qt-d018b73c2a79e79f50a988c848f040d263d0e75b.tar.bz2 |
Merge branch 'kinetic-declarativeui' of git@scm.dev.nokia.troll.no:qt/kinetic into kinetic-declarativeui
Diffstat (limited to 'src/declarative/qml/qmlcontext_p.h')
-rw-r--r-- | src/declarative/qml/qmlcontext_p.h | 24 |
1 files changed, 18 insertions, 6 deletions
diff --git a/src/declarative/qml/qmlcontext_p.h b/src/declarative/qml/qmlcontext_p.h index fc615b6..60655ae 100644 --- a/src/declarative/qml/qmlcontext_p.h +++ b/src/declarative/qml/qmlcontext_p.h @@ -59,6 +59,7 @@ #include <QtCore/qhash.h> #include <QtScript/qscriptvalue.h> #include <QtCore/qset.h> +#include <private/qguard_p.h> QT_BEGIN_NAMESPACE @@ -66,6 +67,7 @@ class QmlContext; class QmlExpression; class QmlEngine; class QmlExpression; +class QmlExpressionPrivate; class QmlContextPrivate : public QObjectPrivate { @@ -87,17 +89,12 @@ public: QScriptValueList scopeChain; QUrl url; - QByteArray typeName; - int startLine; - int endLine; void init(); void dump(); void dump(int depth); - void destroyed(QObject *); - enum Priority { HighPriority, NormalPriority @@ -106,11 +103,26 @@ public: void invalidateEngines(); QSet<QmlContext *> childContexts; - QSet<QmlExpression *> childExpressions; + + QmlExpressionPrivate *expressions; QmlSimpleDeclarativeData contextData; QObjectList contextObjects; + struct ContextGuard : public QGuard<QObject> + { + QmlContextPrivate *priv; + ContextGuard &operator=(QObject *obj) { + (QGuard<QObject>&)*this = obj; return *this; + } + void objectDestroyed(QObject *o) { priv->destroyed(this); } + }; + ContextGuard *idValues; + int idValueCount; + void setIdProperty(const QString &, int, QObject *); + void setIdPropertyCount(int); + void destroyed(ContextGuard *); + // Only used for debugging QList<QPointer<QObject> > instances; }; |