diff options
author | Roberto Raggi <[email protected]> | 2010-01-28 15:50:58 +0100 |
---|---|---|
committer | Roberto Raggi <[email protected]> | 2010-01-28 15:51:16 +0100 |
commit | da81d59e2410573d99b61fe5a321d710ac302424 (patch) | |
tree | 44eb1af8c32e71309dd5d0b8135f8e77d47e5e28 /src/libs/qmljs/qmljsinterpreter.cpp | |
parent | fc77c277be639021c81172c199dc949ebb419d5d (diff) |
Look at the enumerators when populating the completion box.
Diffstat (limited to 'src/libs/qmljs/qmljsinterpreter.cpp')
-rw-r--r-- | src/libs/qmljs/qmljsinterpreter.cpp | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/src/libs/qmljs/qmljsinterpreter.cpp b/src/libs/qmljs/qmljsinterpreter.cpp index 99833df3389..f27405b2927 100644 --- a/src/libs/qmljs/qmljsinterpreter.cpp +++ b/src/libs/qmljs/qmljsinterpreter.cpp @@ -89,8 +89,13 @@ public: } }; -QmlObjectValue::QmlObjectValue(const QMetaObject *metaObject, const QString &qmlTypeName, int majorVersion, int minorVersion, Engine *engine) - : ObjectValue(engine), _metaObject(metaObject), _qmlTypeName(qmlTypeName), _majorVersion(majorVersion), _minorVersion(minorVersion) +QmlObjectValue::QmlObjectValue(const QMetaObject *metaObject, const QString &qmlTypeName, + int majorVersion, int minorVersion, Engine *engine) + : ObjectValue(engine), + _metaObject(metaObject), + _qmlTypeName(qmlTypeName), + _majorVersion(majorVersion), + _minorVersion(minorVersion) { setClassName(qmlTypeName); // ### TODO: we probably need to do more than just this... } @@ -139,6 +144,14 @@ void QmlObjectValue::processMembers(MemberProcessor *processor) const processor->processProperty(prop.name(), propertyValue(prop)); } + for (int index = _metaObject->enumeratorOffset(); index < _metaObject->propertyCount(); ++index) { + QMetaEnum e = _metaObject->enumerator(index); + + for (int i = 0; i < e.keyCount(); ++i) { + processor->processEnumerator(QString::fromUtf8(e.key(i)), engine()->numberValue()); + } + } + for (int index = 0; index < _metaObject->methodCount(); ++index) { QMetaMethod method = _metaObject->method(index); @@ -657,6 +670,11 @@ bool MemberProcessor::processProperty(const QString &, const Value *) return true; } +bool MemberProcessor::processEnumerator(const QString &, const Value *) +{ + return true; +} + bool MemberProcessor::processSignal(const QString &, const Value *) { return true; |