forked from qt-creator/qt-creator
QmlDesigner: Adding simple performance logging to property editor
Change-Id: Idc8adce4ce245a9e470b898473ec9b02143827b2 Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
This commit is contained in:
@@ -46,6 +46,9 @@
|
|||||||
#include <QDir>
|
#include <QDir>
|
||||||
#include <QFileInfo>
|
#include <QFileInfo>
|
||||||
|
|
||||||
|
#include <QLoggingCategory>
|
||||||
|
|
||||||
|
static Q_LOGGING_CATEGORY(propertyEditorBenchmark, "qtc.propertyeditor.load")
|
||||||
|
|
||||||
static QmlJS::SimpleReaderNode::Ptr s_templateConfiguration = QmlJS::SimpleReaderNode::Ptr();
|
static QmlJS::SimpleReaderNode::Ptr s_templateConfiguration = QmlJS::SimpleReaderNode::Ptr();
|
||||||
|
|
||||||
@@ -269,6 +272,13 @@ void PropertyEditorQmlBackend::setup(const QmlObjectNode &qmlObjectNode, const Q
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
if (qmlObjectNode.isValid()) {
|
if (qmlObjectNode.isValid()) {
|
||||||
|
|
||||||
|
qCInfo(propertyEditorBenchmark) << Q_FUNC_INFO;
|
||||||
|
|
||||||
|
QTime time;
|
||||||
|
if (propertyEditorBenchmark().isInfoEnabled())
|
||||||
|
time.start();
|
||||||
|
|
||||||
foreach (const PropertyName &propertyName, qmlObjectNode.modelNode().metaInfo().propertyNames())
|
foreach (const PropertyName &propertyName, qmlObjectNode.modelNode().metaInfo().propertyNames())
|
||||||
createPropertyEditorValue(qmlObjectNode, propertyName, qmlObjectNode.instanceValue(propertyName), propertyEditor);
|
createPropertyEditorValue(qmlObjectNode, propertyName, qmlObjectNode.instanceValue(propertyName), propertyEditor);
|
||||||
|
|
||||||
@@ -301,12 +311,18 @@ void PropertyEditorQmlBackend::setup(const QmlObjectNode &qmlObjectNode, const Q
|
|||||||
|
|
||||||
context()->setContextProperty(QLatin1String("transaction"), m_propertyEditorTransaction.data());
|
context()->setContextProperty(QLatin1String("transaction"), m_propertyEditorTransaction.data());
|
||||||
|
|
||||||
|
qCInfo(propertyEditorBenchmark) << "anchors:" << time.elapsed();
|
||||||
|
|
||||||
// model node
|
// model node
|
||||||
m_backendModelNode.setup(qmlObjectNode.modelNode());
|
m_backendModelNode.setup(qmlObjectNode.modelNode());
|
||||||
context()->setContextProperty(QLatin1String("modelNodeBackend"), &m_backendModelNode);
|
context()->setContextProperty(QLatin1String("modelNodeBackend"), &m_backendModelNode);
|
||||||
|
|
||||||
|
qCInfo(propertyEditorBenchmark) << "context:" << time.elapsed();
|
||||||
|
|
||||||
contextObject()->setSpecificsUrl(qmlSpecificsFile);
|
contextObject()->setSpecificsUrl(qmlSpecificsFile);
|
||||||
|
|
||||||
|
qCInfo(propertyEditorBenchmark) << "specifics:" << time.elapsed();
|
||||||
|
|
||||||
contextObject()->setStateName(stateName);
|
contextObject()->setStateName(stateName);
|
||||||
if (!qmlObjectNode.isValid())
|
if (!qmlObjectNode.isValid())
|
||||||
return;
|
return;
|
||||||
@@ -333,6 +349,8 @@ void PropertyEditorQmlBackend::setup(const QmlObjectNode &qmlObjectNode, const Q
|
|||||||
|
|
||||||
contextObject()->setMajorQtQuickVersion(qmlObjectNode.view()->majorQtQuickVersion());
|
contextObject()->setMajorQtQuickVersion(qmlObjectNode.view()->majorQtQuickVersion());
|
||||||
contextObject()->setMinorQtQuickVersion(qmlObjectNode.view()->minorQtQuickVersion());
|
contextObject()->setMinorQtQuickVersion(qmlObjectNode.view()->minorQtQuickVersion());
|
||||||
|
|
||||||
|
qCInfo(propertyEditorBenchmark) << "final:" << time.elapsed();
|
||||||
} else {
|
} else {
|
||||||
qWarning() << "PropertyEditor: invalid node for setup";
|
qWarning() << "PropertyEditor: invalid node for setup";
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user