summaryrefslogtreecommitdiff
path: root/src/plugins/qmldesigner/designercore/metainfo/nodemetainfo.cpp
diff options
context:
space:
mode:
authorMarco Bubke <marco.bubke@nokia.com>2010-06-09 18:00:34 +0200
committerThomas Hartmann <Thomas.Hartmann@nokia.com>2010-09-20 14:09:10 +0200
commit9324737b0da17e24748628b5fa114cfcb6cc71b6 (patch)
treee83f011375fa669570c2deb9183243e22996c24f /src/plugins/qmldesigner/designercore/metainfo/nodemetainfo.cpp
parentcbaccf13d9e462109f2589373d7cbbe80aa7949d (diff)
downloadqt-creator-9324737b0da17e24748628b5fa114cfcb6cc71b6.tar.gz
Stop animations and timers in the components
Diffstat (limited to 'src/plugins/qmldesigner/designercore/metainfo/nodemetainfo.cpp')
-rw-r--r--src/plugins/qmldesigner/designercore/metainfo/nodemetainfo.cpp52
1 files changed, 9 insertions, 43 deletions
diff --git a/src/plugins/qmldesigner/designercore/metainfo/nodemetainfo.cpp b/src/plugins/qmldesigner/designercore/metainfo/nodemetainfo.cpp
index 8b1145f7b6..b6ac222744 100644
--- a/src/plugins/qmldesigner/designercore/metainfo/nodemetainfo.cpp
+++ b/src/plugins/qmldesigner/designercore/metainfo/nodemetainfo.cpp
@@ -157,49 +157,6 @@ MetaInfo NodeMetaInfo::metaInfo() const
}
/*!
- \brief Creates an instance of the qml type in the given qml context.
-
- \throws InvalidArgumentException when the context argument is a null pointer
- \throws InvalidMetaInfoException if the object is not valid
- */
-QObject *NodeMetaInfo::createInstance(QDeclarativeContext *context) const
-{
- if (!context) {
- Q_ASSERT_X(0, Q_FUNC_INFO, "Context cannot be null");
- throw InvalidArgumentException(__LINE__, __FUNCTION__, __FILE__, "context");
- }
-
- if (!isValid()) {
- qWarning() << "NodeMetaInfo is invalid";
- return 0; // maybe we should return a new QObject?
- }
-
- QObject *object = 0;
- if (isComponent()) {
- // qml component
- // TODO: This is maybe expensive ...
- QDeclarativeComponent component(context->engine(), QUrl::fromLocalFile(m_data->qmlFile));
- QDeclarativeContext *newContext = new QDeclarativeContext(context);
- object = component.create(newContext);
- newContext->setParent(object);
- } else {
- // primitive
- QDeclarativeType *type = QDeclarativeMetaType::qmlType(typeName().toAscii(), majorVersion(), minorVersion());
- if (type) {
- object = type->create();
- } else {
- qWarning() << "QuickDesigner: Cannot create an object of type"
- << QString("%1 %2,%3").arg(typeName(), majorVersion(), minorVersion())
- << "- type isn't known to declarative meta type system";
- }
-
- if (object && context)
- QDeclarativeEngine::setContextForObject(object, context);
- }
- return object;
-}
-
-/*!
\brief Returns all (direct and indirect) ancestor types.
\throws InvalidMetaInfoException if the object is not valid
@@ -592,6 +549,15 @@ void NodeMetaInfo::setIsContainer(bool isContainer)
m_data->isContainer = isContainer;
}
+QString NodeMetaInfo::componentString() const
+{
+ if (!isValid()) {
+ qWarning() << "NodeMetaInfo is invalid";
+ return QString();
+ }
+ return m_data->qmlFile;
+}
+
QIcon NodeMetaInfo::icon() const
{
if (!isValid()) {