From c3bbf389d900565bfe9743995056fac6a6f87b67 Mon Sep 17 00:00:00 2001
From: Ulf Hermann <ulf.hermann@theqtcompany.com>
Date: Mon, 8 Feb 2016 14:11:41 +0100
Subject: [PATCH] QmlProfiler: Make flame graph view compatible with Qt 5.4

Change-Id: I88495cb51f1f28e168290137930aaf949e83b4c5
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
---
 src/plugins/qmlprofilerextension/FlameGraphView.qml | 2 +-
 src/plugins/qmlprofilerextension/flamegraphmodel.h  | 2 +-
 src/plugins/qmlprofilerextension/flamegraphview.cpp | 2 ++
 3 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/plugins/qmlprofilerextension/FlameGraphView.qml b/src/plugins/qmlprofilerextension/FlameGraphView.qml
index 7cb4fb5f5fc..9cd8c9a674b 100644
--- a/src/plugins/qmlprofilerextension/FlameGraphView.qml
+++ b/src/plugins/qmlprofilerextension/FlameGraphView.qml
@@ -24,7 +24,7 @@
 ****************************************************************************/
 
 import QtQuick 2.0
-import QtQuick.Controls 1.4
+import QtQuick.Controls 1.3
 import FlameGraph 1.0
 import FlameGraphModel 1.0
 
diff --git a/src/plugins/qmlprofilerextension/flamegraphmodel.h b/src/plugins/qmlprofilerextension/flamegraphmodel.h
index 06b5b042e15..38d04743fe2 100644
--- a/src/plugins/qmlprofilerextension/flamegraphmodel.h
+++ b/src/plugins/qmlprofilerextension/flamegraphmodel.h
@@ -78,7 +78,7 @@ public:
 
     QModelIndex index(int row, int column, const QModelIndex &parent) const override;
     QModelIndex parent(const QModelIndex &child) const override;
-    int rowCount(const QModelIndex &parent) const override;
+    Q_INVOKABLE int rowCount(const QModelIndex &parent = QModelIndex()) const override;
     int columnCount(const QModelIndex &parent) const override;
     QVariant data(const QModelIndex &index, int role) const override;
     QHash<int, QByteArray> roleNames() const override;
diff --git a/src/plugins/qmlprofilerextension/flamegraphview.cpp b/src/plugins/qmlprofilerextension/flamegraphview.cpp
index 532f9718bbc..26b08d99402 100644
--- a/src/plugins/qmlprofilerextension/flamegraphview.cpp
+++ b/src/plugins/qmlprofilerextension/flamegraphview.cpp
@@ -46,6 +46,8 @@ FlameGraphView::FlameGraphView(QWidget *parent, QmlProfiler::QmlProfilerModelMan
     qmlRegisterType<FlameGraph>("FlameGraph", 1, 0, "FlameGraph");
     qmlRegisterUncreatableType<FlameGraphModel>("FlameGraphModel", 1, 0, "FlameGraphModel",
                                                 QLatin1String("use the context property"));
+    qmlRegisterUncreatableType<QAbstractItemModel>("AbstractItemModel", 1, 0, "AbstractItemModel",
+                                                   QLatin1String("only for Qt 5.4"));
 
     m_content->rootContext()->setContextProperty(QStringLiteral("flameGraphModel"), m_model);
     m_content->setSource(QUrl(QStringLiteral("qrc:/FlameGraphView.qml")));
-- 
GitLab