summaryrefslogtreecommitdiff
path: root/plugins/qmlprofiler/qml
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/qmlprofiler/qml')
-rw-r--r--plugins/qmlprofiler/qml/Detail.qml59
-rw-r--r--plugins/qmlprofiler/qml/Label.qml168
-rw-r--r--plugins/qmlprofiler/qml/MainView.qml605
-rw-r--r--plugins/qmlprofiler/qml/Overview.js181
-rw-r--r--plugins/qmlprofiler/qml/Overview.qml126
-rw-r--r--plugins/qmlprofiler/qml/RangeDetails.qml235
-rw-r--r--plugins/qmlprofiler/qml/RangeMover.qml203
-rw-r--r--plugins/qmlprofiler/qml/SelectionRange.qml297
-rw-r--r--plugins/qmlprofiler/qml/SelectionRangeDetails.qml189
-rw-r--r--plugins/qmlprofiler/qml/TimeDisplay.qml140
-rw-r--r--plugins/qmlprofiler/qml/TimeMarks.qml148
-rw-r--r--plugins/qmlprofiler/qml/arrow_down.pngbin250 -> 0 bytes
-rw-r--r--plugins/qmlprofiler/qml/arrow_right.pngbin246 -> 0 bytes
-rw-r--r--plugins/qmlprofiler/qml/clean_pane_small.pngbin677 -> 0 bytes
-rw-r--r--plugins/qmlprofiler/qml/dialog_shadow.pngbin664 -> 0 bytes
-rw-r--r--plugins/qmlprofiler/qml/ico_next.pngbin715 -> 0 bytes
-rw-r--r--plugins/qmlprofiler/qml/ico_prev.pngbin745 -> 0 bytes
-rw-r--r--plugins/qmlprofiler/qml/ico_rangeselected.pngbin233 -> 0 bytes
-rw-r--r--plugins/qmlprofiler/qml/ico_rangeselection.pngbin224 -> 0 bytes
-rw-r--r--plugins/qmlprofiler/qml/ico_selectionmode.pngbin328 -> 0 bytes
-rw-r--r--plugins/qmlprofiler/qml/ico_zoom.pngbin584 -> 0 bytes
-rw-r--r--plugins/qmlprofiler/qml/lock_closed.pngbin276 -> 0 bytes
-rw-r--r--plugins/qmlprofiler/qml/lock_open.pngbin265 -> 0 bytes
-rw-r--r--plugins/qmlprofiler/qml/qmlprofiler.qrc30
-rw-r--r--plugins/qmlprofiler/qml/range_handle.pngbin197 -> 0 bytes
-rw-r--r--plugins/qmlprofiler/qml/recordOff.pngbin496 -> 0 bytes
-rw-r--r--plugins/qmlprofiler/qml/recordOn.pngbin614 -> 0 bytes
27 files changed, 0 insertions, 2381 deletions
diff --git a/plugins/qmlprofiler/qml/Detail.qml b/plugins/qmlprofiler/qml/Detail.qml
deleted file mode 100644
index 7bc28178d9..0000000000
--- a/plugins/qmlprofiler/qml/Detail.qml
+++ /dev/null
@@ -1,59 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of Qt Creator.
-**
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia. For licensing terms and
-** conditions see http://qt.digia.com/licensing. For further information
-** use the contact form at http://qt.digia.com/contact-us.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 2.1 requirements
-** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Digia gives you certain additional
-** rights. These rights are described in the Digia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-****************************************************************************/
-
-import QtQuick 1.0
-import Monitor 1.0
-
-Item {
- id: detail
- property string label
- property string content
-
- height: childrenRect.height+2
- width: childrenRect.width
- Item {
- id: guideline
- x: 70
- width: 5
- }
- Text {
- y: 1
- id: lbl
- text: label
- font.pixelSize: 12
- font.bold: true
- }
- Text {
- text: content
- font.pixelSize: 12
- anchors.baseline: lbl.baseline
- anchors.left: guideline.right
- textFormat: Text.PlainText
- }
-}
diff --git a/plugins/qmlprofiler/qml/Label.qml b/plugins/qmlprofiler/qml/Label.qml
deleted file mode 100644
index afc96b92f1..0000000000
--- a/plugins/qmlprofiler/qml/Label.qml
+++ /dev/null
@@ -1,168 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of Qt Creator.
-**
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia. For licensing terms and
-** conditions see http://qt.digia.com/licensing. For further information
-** use the contact form at http://qt.digia.com/contact-us.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 2.1 requirements
-** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Digia gives you certain additional
-** rights. These rights are described in the Digia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-****************************************************************************/
-
-import QtQuick 1.0
-
-Item {
- id: labelContainer
- property string text: qmlProfilerModelProxy.categoryLabel(modelIndex, categoryIndex)
- property bool expanded: false
- property int categoryIndex: qmlProfilerModelProxy.correctedCategoryIndexForModel(modelIndex, index)
- property int modelIndex: qmlProfilerModelProxy.modelIndexForCategory(index);
-
- property variant descriptions: []
- property variant extdescriptions: []
- property variant eventIds: []
-
- visible: qmlProfilerModelProxy.categoryDepth(modelIndex, categoryIndex) > 0;
-
- height: root.singleRowHeight
- width: 150
-
- onExpandedChanged: {
- qmlProfilerModelProxy.setExpanded(modelIndex, categoryIndex, expanded);
- backgroundMarks.requestRedraw();
- getDescriptions();
- updateHeight();
- }
-
- Component.onCompleted: {
- updateHeight();
- }
-
- function updateHeight() {
- if (expanded != qmlProfilerModelProxy.expanded(modelIndex, categoryIndex))
- expanded = qmlProfilerModelProxy.expanded(modelIndex, categoryIndex);
- height = root.singleRowHeight * qmlProfilerModelProxy.categoryDepth(modelIndex, categoryIndex);
- }
-
- function getDescriptions() {
- visible = qmlProfilerModelProxy.categoryDepth(modelIndex, categoryIndex) > 0;
- if (!visible)
- return;
-
- var desc=[];
- var ids=[];
- var extdesc=[];
- var labelList = qmlProfilerModelProxy.getLabelsForCategory(modelIndex, categoryIndex);
- for (var i = 0; i < labelList.length; i++ ) {
- desc[i] = labelList[i].description;
- ids[i] = labelList[i].id;
- extdesc[i] = labelList[i].displayName + ":" + labelList[i].description;
- }
- descriptions = desc;
- eventIds = ids;
- extdescriptions = extdesc;
- updateHeight();
- }
-
- Connections {
- target: qmlProfilerModelProxy
- onExpandedChanged: {
- updateHeight();
- }
-
- onStateChanged: {
- getDescriptions();
- }
- }
-
- Text {
- id: txt
- x: 5
- font.pixelSize: 12
- text: labelContainer.text
- color: "#232323"
- height: root.singleRowHeight
- width: 140
- verticalAlignment: Text.AlignVCenter
- }
-
- Rectangle {
- height: 1
- width: parent.width
- color: "#999999"
- anchors.bottom: parent.bottom
- z: 2
- }
-
- Column {
- y: root.singleRowHeight
- visible: expanded
- Repeater {
- model: descriptions.length
- Rectangle {
- width: labelContainer.width
- height: root.singleRowHeight
- color: "#eaeaea"
- border.width: 1
- border.color:"#c8c8c8"
- Text {
- height: root.singleRowHeight
- x: 5
- width: 140
- text: descriptions[index]
- textFormat: Text.PlainText
- elide: Text.ElideRight
- verticalAlignment: Text.AlignVCenter
- }
- MouseArea {
- anchors.fill: parent
- hoverEnabled: true
- onEntered: changeToolTip(extdescriptions[index]);
- onExited: changeToolTip("");
- onClicked: {
- if (mouse.modifiers & Qt.ShiftModifier)
- view.selectPrevFromId(modelIndex,eventIds[index]);
- else
- view.selectNextFromId(modelIndex,eventIds[index]);
- }
- }
- }
- }
- }
-
- Image {
- //visible: descriptions.length > 0
- visible: true
- source: expanded ? "arrow_down.png" : "arrow_right.png"
- x: parent.width - 12
- y: root.singleRowHeight / 2 - height / 2
- MouseArea {
- anchors.fill: parent
- anchors.rightMargin: -10
- anchors.leftMargin: -10
- anchors.topMargin: -10
- anchors.bottomMargin: -10
- onClicked: {
- expanded = !expanded;
- }
- }
- }
-}
diff --git a/plugins/qmlprofiler/qml/MainView.qml b/plugins/qmlprofiler/qml/MainView.qml
deleted file mode 100644
index 2c9c2df308..0000000000
--- a/plugins/qmlprofiler/qml/MainView.qml
+++ /dev/null
@@ -1,605 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of Qt Creator.
-**
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia. For licensing terms and
-** conditions see http://qt.digia.com/licensing. For further information
-** use the contact form at http://qt.digia.com/contact-us.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 2.1 requirements
-** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Digia gives you certain additional
-** rights. These rights are described in the Digia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-****************************************************************************/
-
-import QtQuick 1.0
-import Monitor 1.0
-
-Rectangle {
- id: root
-
- // ***** properties
-
- property int candidateHeight: 0
- property int scrollY: 0
- height: Math.max( candidateHeight, labels.height + 2 )
-
- property int singleRowHeight: 30
-
- property bool dataAvailable: true
- property int eventCount: 0
- property real progress: 0
-
- property alias selectionLocked : view.selectionLocked
- signal updateLockButton
- property alias selectedItem: view.selectedItem
- signal selectedEventChanged(int eventId)
- property bool lockItemSelection : false
-
-/* property variant names: [ qsTr("Painting"),
- qsTr("Compiling"),
- qsTr("Creating"),
- qsTr("Binding"),
- qsTr("Handling Signal")]
- property variant colors : [ "#99CCB3", "#99CCCC", "#99B3CC",
- "#9999CC", "#CC99B3", "#CC99CC", "#CCCC99", "#CCB399" ]
- */
-
- property variant mainviewTimePerPixel : 0
-
- signal updateCursorPosition
- property string fileName: ""
- property int lineNumber: -1
- property int columnNumber: 0
-
- signal updateRangeButton
- property bool selectionRangeMode: false
-
- property bool selectionRangeReady: selectionRange.ready
- property variant selectionRangeStart: selectionRange.startTime
- property variant selectionRangeEnd: selectionRange.startTime + selectionRange.duration
-
- signal changeToolTip(string text)
- signal updateVerticalScroll(int newPosition)
-
- property bool recordingEnabled: false
- property bool appKilled : false
-
- property date recordingStartDate
- property real elapsedTime
-
- // ***** connections with external objects
- Connections {
- target: zoomControl
- onRangeChanged: {
- var startTime = zoomControl.startTime();
- var endTime = zoomControl.endTime();
- var duration = Math.abs(endTime - startTime);
-
- mainviewTimePerPixel = duration / root.width;
-
- backgroundMarks.updateMarks(startTime, endTime);
- view.updateFlickRange(startTime, endTime);
- if (duration > 0) {
- var candidateWidth = qmlProfilerModelProxy.traceDuration() *
- flick.width / duration;
- if (flick.contentWidth !== candidateWidth)
- flick.contentWidth = candidateWidth;
- }
-
- }
- }
-
-
- Connections {
- target: qmlProfilerModelProxy
- onCountChanged: {
- eventCount = qmlProfilerModelProxy.count();
- if (eventCount === 0)
- root.clearAll();
- if (eventCount > 1) {
- root.progress = Math.min(1.0,
- (qmlProfilerModelProxy.lastTimeMark() -
- qmlProfilerModelProxy.traceStartTime()) / root.elapsedTime * 1e-9 );
- } else {
- root.progress = 0;
- }
- }
- onStateChanged: {
- switch (qmlProfilerModelProxy.getState()) {
- case 0: {
- root.clearAll();
- break;
- }
- case 1: {
- root.dataAvailable = false;
- break;
- }
- case 2: {
- root.progress = 0.9; // jump to 90%
- break;
- }
- }
- }
- onDataAvailable: {
- view.clearData();
- zoomControl.setRange(0,0);
- progress = 1.0;
- dataAvailable = true;
- view.visible = true;
- view.requestPaint();
- zoomControl.setRange(qmlProfilerModelProxy.traceStartTime(),
- qmlProfilerModelProxy.traceStartTime() +
- qmlProfilerModelProxy.traceDuration()/10);
- }
- }
-
-
- // ***** functions
- function gotoSourceLocation(file,line,column) {
- if (file !== undefined) {
- root.fileName = file;
- root.lineNumber = line;
- root.columnNumber = column;
- root.updateCursorPosition();
- }
- }
-
- function clearData() {
- view.clearData();
- dataAvailable = false;
- appKilled = false;
- eventCount = 0;
- hideRangeDetails();
- selectionRangeMode = false;
- updateRangeButton();
- zoomControl.setRange(0,0);
- }
-
- function clearDisplay() {
- clearData();
- view.visible = false;
- }
-
- function clearAll() {
- clearDisplay();
- elapsedTime = 0;
- }
-
- function nextEvent() {
- view.selectNext();
- }
-
- function prevEvent() {
- view.selectPrev();
- }
-
- function updateWindowLength(absoluteFactor) {
- var windowLength = view.endTime - view.startTime;
- if (qmlProfilerModelProxy.traceEndTime() <= qmlProfilerModelProxy.traceStartTime() ||
- windowLength <= 0)
- return;
- var currentFactor = windowLength / qmlProfilerModelProxy.traceDuration();
- updateZoom(absoluteFactor / currentFactor);
- }
-
- function updateZoom(relativeFactor) {
- var min_length = 1e5; // 0.1 ms
- var windowLength = view.endTime - view.startTime;
- if (windowLength < min_length)
- windowLength = min_length;
- var newWindowLength = windowLength * relativeFactor;
-
- if (newWindowLength > qmlProfilerModelProxy.traceDuration()) {
- newWindowLength = qmlProfilerModelProxy.traceDuration();
- relativeFactor = newWindowLength / windowLength;
- }
- if (newWindowLength < min_length) {
- newWindowLength = min_length;
- relativeFactor = newWindowLength / windowLength;
- }
-
- var fixedPoint = (view.startTime + view.endTime) / 2;
-
- if (view.selectedItem !== -1) {
- // center on selected item if it's inside the current screen
- var newFixedPoint = qmlProfilerModelProxy.getStartTime(view.selectedModel, view.selectedItem);
- if (newFixedPoint >= view.startTime && newFixedPoint < view.endTime)
- fixedPoint = newFixedPoint;
- }
-
-
- var startTime = fixedPoint - relativeFactor*(fixedPoint - view.startTime);
- zoomControl.setRange(startTime, startTime + newWindowLength);
- }
-
- function updateZoomCentered(centerX, relativeFactor)
- {
- var min_length = 1e5; // 0.1 ms
- var windowLength = view.endTime - view.startTime;
- if (windowLength < min_length)
- windowLength = min_length;
- var newWindowLength = windowLength * relativeFactor;
-
- if (newWindowLength > qmlProfilerModelProxy.traceDuration()) {
- newWindowLength = qmlProfilerModelProxy.traceDuration();
- relativeFactor = newWindowLength / windowLength;
- }
- if (newWindowLength < min_length) {
- newWindowLength = min_length;
- relativeFactor = newWindowLength / windowLength;
- }
-
- var fixedPoint = (centerX - flick.x) * windowLength / flick.width + view.startTime;
- var startTime = fixedPoint - relativeFactor*(fixedPoint - view.startTime);
- zoomControl.setRange(startTime, startTime + newWindowLength);
- }
-
- function recenter( centerPoint ) {
- var windowLength = view.endTime - view.startTime;
- var newStart = Math.floor(centerPoint - windowLength/2);
- if (newStart < 0)
- newStart = 0;
- if (newStart + windowLength > qmlProfilerModelProxy.traceEndTime())
- newStart = qmlProfilerModelProxy.traceEndTime() - windowLength;
- zoomControl.setRange(newStart, newStart + windowLength);
- }
-
- function recenterOnItem( modelIndex, itemIndex )
- {
- if (itemIndex === -1)
- return;
-
- // if item is outside of the view, jump back to its position
- if (qmlProfilerModelProxy.getEndTime(modelIndex, itemIndex) < view.startTime ||
- qmlProfilerModelProxy.getStartTime(modelIndex, itemIndex) > view.endTime) {
- recenter((qmlProfilerModelProxy.getStartTime(modelIndex, itemIndex) +
- qmlProfilerModelProxy.getEndTime(modelIndex, itemIndex)) / 2);
- }
-
- }
-
- function wheelZoom(wheelCenter, wheelDelta) {
- if (qmlProfilerModelProxy.traceEndTime() > qmlProfilerModelProxy.traceStartTime() &&
- wheelDelta !== 0) {
- if (wheelDelta>0)
- updateZoomCentered(wheelCenter, 1/1.2);
- else
- updateZoomCentered(wheelCenter, 1.2);
- }
- }
-
- function hideRangeDetails() {
- rangeDetails.visible = false;
- rangeDetails.duration = "";
- rangeDetails.label = "";
- //rangeDetails.type = "";
- rangeDetails.file = "";
- rangeDetails.line = -1;
- rangeDetails.column = 0;
- rangeDetails.isBindingLoop = false;
- }
-
- function selectNextByHash(hash) {
- var eventId = qmlProfilerModelProxy.getEventIdForHash(hash);
- if (eventId !== -1) {
- selectNextById(eventId);
- }
- }
-
- function selectNextById(eventId)
- {
- // this is a slot responding to events from the other pane
- // which tracks only events from the basic model
- if (!lockItemSelection) {
- lockItemSelection = true;
- var modelIndex = qmlProfilerModelProxy.basicModelIndex();
- var itemIndex = view.nextItemFromId( modelIndex, eventId );
- // select an item, lock to it, and recenter if necessary
- if (view.selectedItem != itemIndex || view.selectedModel != modelIndex) {
- view.selectedModel = modelIndex;
- view.selectedItem = itemIndex;
- if (itemIndex !== -1) {
- view.selectionLocked = true;
- recenterOnItem(modelIndex, itemIndex);
- }
- }
- lockItemSelection = false;
- }
- }
-
- // ***** slots
- onSelectionRangeModeChanged: {
- selectionRangeControl.enabled = selectionRangeMode;
- selectionRange.reset(selectionRangeMode);
- }
-
- onSelectionLockedChanged: {
- updateLockButton();
- }
-
- onSelectedItemChanged: {
- if (selectedItem != -1 && !lockItemSelection) {
- lockItemSelection = true;
- // update in other views
- var eventLocation = qmlProfilerModelProxy.getEventLocation(view.selectedModel, view.selectedItem);
- gotoSourceLocation(eventLocation.file, eventLocation.line, eventLocation.column);
- lockItemSelection = false;
- }
- }
-
- onRecordingEnabledChanged: {
- if (recordingEnabled) {
- recordingStartDate = new Date();
- elapsedTime = 0;
- } else {
- elapsedTime = (new Date() - recordingStartDate)/1000.0;
- }
- }
-
-
- // ***** child items
- TimeMarks {
- id: backgroundMarks
- y: labels.y
- height: flick.height
- anchors.left: flick.left
- anchors.right: flick.right
- }
-
- Flickable {
- id: flick
- anchors.top: parent.top
- anchors.topMargin: labels.y
- anchors.right: parent.right
- anchors.left: labels.right
- height: root.height
- contentWidth: 0;
- contentHeight: labels.height
- flickableDirection: Flickable.HorizontalFlick
-
- onContentXChanged: {
- if (Math.round(view.startX) !== contentX)
- view.startX = contentX;
- }
-
- clip:true
-
- MouseArea {
- id: selectionRangeDrag
- enabled: selectionRange.ready
- anchors.fill: selectionRange
- drag.target: selectionRange
- drag.axis: "XAxis"
- drag.minimumX: 0
- drag.maximumX: flick.contentWidth - selectionRange.width
- onPressed: {
- selectionRange.isDragging = true;
- }
- onReleased: {
- selectionRange.isDragging = false;
- }
- onDoubleClicked: {
- zoomControl.setRange(selectionRange.startTime,
- selectionRange.startTime + selectionRange.duration);
- root.selectionRangeMode = false;
- root.updateRangeButton();
- }
- }
-
-
- SelectionRange {
- id: selectionRange
- visible: root.selectionRangeMode
- height: root.height
- z: 2
- }
-
- TimelineRenderer {
- id: view
-
- profilerModelProxy: qmlProfilerModelProxy
-
- x: flick.contentX
- width: flick.width
- height: root.height
-
- property variant startX: 0
- onStartXChanged: {
- var newStartTime = Math.round(startX * (endTime - startTime) / flick.width) +
- qmlProfilerModelProxy.traceStartTime();
- if (Math.abs(newStartTime - startTime) > 1) {
- var newEndTime = Math.round((startX+flick.width) *
- (endTime - startTime) /
- flick.width) +
- qmlProfilerModelProxy.traceStartTime();
- zoomControl.setRange(newStartTime, newEndTime);
- }
-
- if (Math.round(startX) !== flick.contentX)
- flick.contentX = startX;
- }
-
- function updateFlickRange(start, end) {
- if (start !== startTime || end !== endTime) {
- startTime = start;
- endTime = end;
- var newStartX = (startTime - qmlProfilerModelProxy.traceStartTime()) *
- flick.width / (endTime-startTime);
- if (Math.abs(newStartX - startX) >= 1)
- startX = newStartX;
- }
- }
-
- onSelectedItemChanged: {
- if (selectedItem !== -1) {
- // display details
- rangeDetails.showInfo(qmlProfilerModelProxy.getEventDetails(selectedModel, selectedItem));
- rangeDetails.setLocation(qmlProfilerModelProxy.getEventLocation(selectedModel, selectedItem));
-
- // center view (horizontally)
- var windowLength = view.endTime - view.startTime;
- var eventStartTime = qmlProfilerModelProxy.getStartTime(selectedModel, selectedItem);
- var eventEndTime = eventStartTime +
- qmlProfilerModelProxy.getDuration(selectedModel, selectedItem);
-
- if (eventEndTime < view.startTime || eventStartTime > view.endTime) {
- var center = (eventStartTime + eventEndTime)/2;
- var from = Math.min(qmlProfilerModelProxy.traceEndTime()-windowLength,
- Math.max(0, Math.floor(center - windowLength/2)));
-
- zoomControl.setRange(from, from + windowLength);
-
- }
-
- // center view (vertically)
- var itemY = view.getYPosition(selectedModel, selectedItem);
- if (itemY < root.scrollY) {
- root.updateVerticalScroll(itemY);
- } else
- if (itemY + root.singleRowHeight >
- root.scrollY + root.candidateHeight) {
- root.updateVerticalScroll(itemY + root.singleRowHeight -
- root.candidateHeight);
- }
-
- } else {
- root.hideRangeDetails();
- }
- }
-
- onItemPressed: {
- var location = qmlProfilerModelProxy.getEventLocation(modelIndex, pressedItem);
- if (location.hasOwnProperty("file")) // not empty
- root.gotoSourceLocation(location.file, location.line, location.column);
- }
-
- // hack to pass mouse events to the other mousearea if enabled
- startDragArea: selectionRangeDrag.enabled ? selectionRangeDrag.x :
- -flick.contentX
- endDragArea: selectionRangeDrag.enabled ?
- selectionRangeDrag.x + selectionRangeDrag.width :
- -flick.contentX-1
- }
- MouseArea {
- id: selectionRangeControl
- enabled: false
- width: flick.width
- height: root.height
- x: flick.contentX
- hoverEnabled: enabled
- z: 2
-
- onReleased: {
- selectionRange.releasedOnCreation();
- }
- onPressed: {
- selectionRange.pressedOnCreation();
- }
- onMousePositionChanged: {
- selectionRange.movedOnCreation();
- }
- }
- }
-
- SelectionRangeDetails {
- id: selectionRangeDetails
- visible: root.selectionRangeMode
- startTime: selectionRange.startTimeString
- duration: selectionRange.durationString
- endTime: selectionRange.endTimeString
- showDuration: selectionRange.width > 1
- }
-
- RangeDetails {
- id: rangeDetails
- }
-
- Rectangle {
- id: labels
- width: 150
- color: "#dcdcdc"
- height: col.height
-
- property int rowCount: qmlProfilerModelProxy.categories();
-
- Column {
- id: col
- Repeater {
- model: labels.rowCount
- delegate: Label { }
- }
- }
- }
-
- Rectangle {
- id: labelsTail
- anchors.top: labels.bottom
- anchors.bottom: root.bottom
- width: labels.width
- color: labels.color
- }
-
- // Gradient borders
- Item {
- anchors.left: labels.right
- width: 6
- anchors.top: root.top
- anchors.bottom: root.bottom
- Rectangle {
- x: parent.width
- transformOrigin: Item.TopLeft
- rotation: 90
- width: parent.height
- height: parent.width
- gradient: Gradient {
- GradientStop { position: 0.0; color: "#00000000"; }
- GradientStop { position: 1.0; color: "#86000000"; }
- }
- }
- }
-
- Item {
- anchors.right: root.right
- width: 6
- anchors.top: root.top
- anchors.bottom: root.bottom
- Rectangle {
- x: parent.width
- transformOrigin: Item.TopLeft
- rotation: 90
- width: parent.height
- height: parent.width
- gradient: Gradient {
- GradientStop { position: 0.0; color: "#86000000"; }
- GradientStop { position: 1.0; color: "#00000000"; }
- }
- }
- }
-
- Rectangle {
- y: root.scrollY + root.candidateHeight - height
- height: 6
- width: root.width
- x: 0
- gradient: Gradient {
- GradientStop { position: 0.0; color: "#00000000"; }
- GradientStop { position: 1.0; color: "#86000000"; }
- }
- }
-}
diff --git a/plugins/qmlprofiler/qml/Overview.js b/plugins/qmlprofiler/qml/Overview.js
deleted file mode 100644
index 4ef2187b43..0000000000
--- a/plugins/qmlprofiler/qml/Overview.js
+++ /dev/null
@@ -1,181 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of Qt Creator.
-**
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia. For licensing terms and
-** conditions see http://qt.digia.com/licensing. For further information
-** use the contact form at http://qt.digia.com/contact-us.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 2.1 requirements
-** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Digia gives you certain additional
-** rights. These rights are described in the Digia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-****************************************************************************/
-
-.pragma library
-
-var qmlProfilerModelProxy = 0;
-
-//draw background of the graph
-function drawGraph(canvas, ctxt, region)
-{
- ctxt.fillStyle = "#eaeaea";
- ctxt.fillRect(0, 0, canvas.width, canvas.height);
-}
-
-//draw the actual data to be graphed
-function drawData(canvas, ctxt, region)
-{
- if ((!qmlProfilerModelProxy) || qmlProfilerModelProxy.count() == 0)
- return;
-
- var width = canvas.width;
- var bump = 10;
- var height = canvas.height - bump;
-
- var typeCount = qmlProfilerModelProxy.visibleCategories();
- var blockHeight = height / typeCount;
-
- var spacing = width / qmlProfilerModelProxy.traceDuration();
-
- var modelRowStart = 0;
- for (var modelIndex = 0; modelIndex < qmlProfilerModelProxy.modelCount(); modelIndex++) {
- for (var ii = 0; ii < qmlProfilerModelProxy.count(modelIndex); ++ii) {
-
- var xx = (qmlProfilerModelProxy.getStartTime(modelIndex,ii) -
- qmlProfilerModelProxy.traceStartTime()) * spacing;
- if (xx > region.x + region.width)
- continue;
-
- var eventWidth = qmlProfilerModelProxy.getDuration(modelIndex,ii) * spacing;
- if (xx + eventWidth < region.x)
- continue;
-
- if (eventWidth < 1)
- eventWidth = 1;
-
- xx = Math.round(xx);
-
- var rowNumber = modelRowStart + qmlProfilerModelProxy.getEventCategoryInModel(modelIndex, ii);
-
- var itemHeight = qmlProfilerModelProxy.getHeight(modelIndex,ii) * blockHeight;
- var yy = (rowNumber + 1) * blockHeight - itemHeight ;
-
- var itemColor = qmlProfilerModelProxy.getColorRGB(modelIndex, ii);
- ctxt.fillStyle = "rgb("+itemColor[0]+","+itemColor[1]+","+itemColor[2]+")";
- ctxt.fillRect(xx, bump + yy, eventWidth, itemHeight);
- }
- modelRowStart += qmlProfilerModelProxy.categoryCount(modelIndex);
- }
-
- // binding loops
- ctxt.strokeStyle = "orange";
- ctxt.lineWidth = 2;
- var radius = 1;
- modelRowStart = 0;
- for (modelIndex = 0; modelIndex < qmlProfilerModelProxy.modelCount(); modelIndex++) {
- for (ii = 0; ii < qmlProfilerModelProxy.count(modelIndex); ++ii) {
- if (qmlProfilerModelProxy.getBindingLoopDest(modelIndex,ii) >= 0) {
- var xcenter = Math.round(qmlProfilerModelProxy.getStartTime(modelIndex,ii) +
- qmlProfilerModelProxy.getDuration(modelIndex,ii) -
- qmlProfilerModelProxy.traceStartTime()) * spacing;
- var ycenter = Math.round(bump + (modelRowStart +
- qmlProfilerModelProxy.getEventCategoryInModel(modelIndex, ii)) *
- blockHeight + blockHeight/2);
- ctxt.arc(xcenter, ycenter, radius, 0, 2*Math.PI, true);
- ctxt.stroke();
- }
- }
- modelRowStart += qmlProfilerModelProxy.categoryCount(modelIndex);
- }
-
-}
-
-function drawTimeBar(canvas, ctxt, region)
-{
- if (!qmlProfilerModelProxy)
- return;
-
- var width = canvas.width;
- var height = 10;
- var startTime = qmlProfilerModelProxy.traceStartTime();
- var endTime = qmlProfilerModelProxy.traceEndTime();
-
- var totalTime = qmlProfilerModelProxy.traceDuration();
- var spacing = width / totalTime;
-
- var initialBlockLength = 120;
- var timePerBlock = Math.pow(2, Math.floor( Math.log( totalTime / width *
- initialBlockLength ) / Math.LN2 ) );
- var pixelsPerBlock = timePerBlock * spacing;
- var pixelsPerSection = pixelsPerBlock / 5;
- var blockCount = width / pixelsPerBlock;
-
- var realStartTime = Math.floor(startTime/timePerBlock) * timePerBlock;
- var realStartPos = (startTime-realStartTime) * spacing;
-
- var timePerPixel = timePerBlock/pixelsPerBlock;
-
- ctxt.fillStyle = "#000000";
- ctxt.font = "6px sans-serif";
-
- ctxt.fillStyle = "#cccccc";
- ctxt.fillRect(0, 0, width, height);
- for (var ii = 0; ii < blockCount+1; ii++) {
- var x = Math.floor(ii*pixelsPerBlock - realStartPos);
-
- // block boundary
- ctxt.strokeStyle = "#525252";
- ctxt.beginPath();
- ctxt.moveTo(x, height/2);
- ctxt.lineTo(x, height);
- ctxt.stroke();
-
- // block time label
- ctxt.fillStyle = "#000000";
- var timeString = prettyPrintTime((ii+0.5)*timePerBlock + realStartTime);
- ctxt.textAlign = "center";
- ctxt.fillText(timeString, x + pixelsPerBlock/2, height/2 + 3);
- }
-
- ctxt.fillStyle = "#808080";
- ctxt.fillRect(0, height-1, width, 1);
-}
-
-function prettyPrintTime( t )
-{
- if (t <= 0) return "0";
- if (t<1000) return t+" ns";
- t = t/1000;
- if (t<1000) return t+" μs";
- t = Math.floor(t/100)/10;
- if (t<1000) return t+" ms";
- t = Math.floor(t)/1000;
- if (t<60) return t+" s";
- var m = Math.floor(t/60);
- t = Math.floor(t - m*60);
- return m+"m"+t+"s";
-}
-
-function plot(canvas, ctxt, region)
-{
- drawGraph(canvas, ctxt, region);
- drawData(canvas, ctxt, region);
- drawTimeBar(canvas, ctxt, region);
-
-}
diff --git a/plugins/qmlprofiler/qml/Overview.qml b/plugins/qmlprofiler/qml/Overview.qml
deleted file mode 100644
index d90e1e6c7d..0000000000
--- a/plugins/qmlprofiler/qml/Overview.qml
+++ /dev/null
@@ -1,126 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of Qt Creator.
-**
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia. For licensing terms and
-** conditions see http://qt.digia.com/licensing. For further information
-** use the contact form at http://qt.digia.com/contact-us.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 2.1 requirements
-** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Digia gives you certain additional
-** rights. These rights are described in the Digia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-****************************************************************************/
-
-import QtQuick 1.0
-import Monitor 1.0
-import "Overview.js" as Plotter
-
-Canvas2D {
- id: canvas
-
- // ***** properties
- height: 50
- property bool dataReady: false
- property variant startTime : 0
- property variant endTime : 0
-
- // ***** functions
- function clearDisplay()
- {
- dataReady = false;
- requestRedraw();
- }
-
- function updateRange() {
- var newStartTime = Math.round(rangeMover.x * qmlProfilerModelProxy.traceDuration() / width) + qmlProfilerModelProxy.traceStartTime();
- var newEndTime = Math.round((rangeMover.x + rangeMover.width) * qmlProfilerModelProxy.traceDuration() / width) + qmlProfilerModelProxy.traceStartTime();
- if (startTime !== newStartTime || endTime !== newEndTime) {
- zoomControl.setRange(newStartTime, newEndTime);
- }
-
- }
-
- // ***** connections to external objects
- Connections {
- target: zoomControl
- onRangeChanged: {
- if (qmlProfilerModelProxy) {
- startTime = zoomControl.startTime();
- endTime = zoomControl.endTime();
- var newRangeX = (startTime - qmlProfilerModelProxy.traceStartTime()) * width / qmlProfilerModelProxy.traceDuration();
- if (rangeMover.x !== newRangeX)
- rangeMover.x = newRangeX;
- var newWidth = (endTime-startTime) * width / qmlProfilerModelProxy.traceDuration();
- if (rangeMover.width !== newWidth)
- rangeMover.width = newWidth;
- }
- }
- }
-
- Connections {
- target: qmlProfilerModelProxy
- onDataAvailable: {
- dataReady = true;
- requestRedraw();
- }
- }
-
-
- // ***** slots
- onDrawRegion: {
- Plotter.qmlProfilerModelProxy = qmlProfilerModelProxy;
- if (dataReady) {
- Plotter.plot(canvas, ctxt, region);
- } else {
- Plotter.drawGraph(canvas, ctxt, region) //just draw the background
- }
- }
-
- // ***** child items
- MouseArea {
- anchors.fill: canvas
- function jumpTo(posX) {
- var newX = posX - rangeMover.width/2;
- if (newX < 0)
- newX = 0;
- if (newX + rangeMover.width > canvas.width)
- newX = canvas.width - rangeMover.width;
- rangeMover.x = newX;
- updateRange();
- }
-
- onPressed: {
- jumpTo(mouse.x);
- }
- onMousePositionChanged: {
- jumpTo(mouse.x);
- }
- }
-
- RangeMover {
- id: rangeMover
- visible: dataReady
- }
-
- Rectangle {
- height: 1
- width: parent.width
- color: "#858585"
- }
-}
diff --git a/plugins/qmlprofiler/qml/RangeDetails.qml b/plugins/qmlprofiler/qml/RangeDetails.qml
deleted file mode 100644
index a0fb3e8d77..0000000000
--- a/plugins/qmlprofiler/qml/RangeDetails.qml
+++ /dev/null
@@ -1,235 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of Qt Creator.
-**
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia. For licensing terms and
-** conditions see http://qt.digia.com/licensing. For further information
-** use the contact form at http://qt.digia.com/contact-us.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 2.1 requirements
-** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Digia gives you certain additional
-** rights. These rights are described in the Digia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-****************************************************************************/
-
-import QtQuick 1.0
-import Monitor 1.0
-
-Item {
- id: rangeDetails
-
- property string duration
- property string label
- property string dialogTitle
- property string file
- property int line
- property int column
- property bool isBindingLoop
-
- property bool locked: view.selectionLocked
-
- width: col.width + 45
- height: col.height + 30
- z: 1
- visible: false
- x: 200
- y: 25
-
- property int yoffset: root.scrollY
- onYoffsetChanged: {
- y = relativey + yoffset
- fitInView();
- }
- property int relativey : y - yoffset
- onYChanged: relativey = y - yoffset
-
- // keep inside view
- Connections {
- target: root
- onWidthChanged: fitInView();
- onCandidateHeightChanged: fitInView();
- }
-
- //property variant eventInfo
-
- ListModel {
- id: eventInfo
- }
-
- function showInfo(eventData) {
- eventInfo.clear();
- rangeDetails.dialogTitle = eventData[0]["title"];
- for (var i = 1; i < eventData.length; i++) {
- for (var k in eventData[i]) {
- eventInfo.append({"key": k, "value":eventData[i][k]});
- }
- }
- rangeDetails.visible = true;
- }
-
- function setLocation(location) {
- if (location.hasOwnProperty("file")) { // not empty
- file = location.file;
- line = location.line;
- column = location.column;
- } else {
- // reset to default values
- file = "";
- line = 0;
- column = -1;
- }
- }
-
- function fitInView() {
- // don't reposition if it does not fit
- if (root.width < width || root.candidateHeight < height)
- return;
-
- if (x + width > root.width)
- x = root.width - width;
- if (x < 0)
- x = 0;
- if (y - yoffset + height > root.candidateHeight)
- y = root.candidateHeight - height + yoffset;
- if (y < yoffset)
- y = yoffset;
- }
-
- // shadow
- BorderImage {
- property int px: 4
- source: "dialog_shadow.png"
-
- border {
- left: px; top: px
- right: px; bottom: px
- }
- width: parent.width + 2*px - 1
- height: parent.height
- x: -px + 1
- y: px + 1
- }
-
- // title bar
- Rectangle {
- width: parent.width
- height: 20
- color: "#55a3b8"
- radius: 5
- border.width: 1
- border.color: "#a0a0a0"
- }
- Item {
- width: parent.width+1
- height: 11
- y: 10
- clip: true
- Rectangle {
- width: parent.width-1
- height: 15
- y: -5
- color: "#55a3b8"
- border.width: 1
- border.color: "#a0a0a0"
- }
- }
-
- //title
- Text {
- id: typeTitle
- text: " "+rangeDetails.dialogTitle
- font.bold: true
- height: 18
- y: 2
- verticalAlignment: Text.AlignVCenter
- width: parent.width
- color: "white"
- }
-
- // Details area
- Rectangle {
- color: "white"
- width: parent.width
- height: col.height + 10
- y: 20
- border.width: 1
- border.color: "#a0a0a0"
-
- //details
- Column {
- id: col
- x: 10
- y: 5
-
- Repeater {
- model: eventInfo
- Detail {
- label: key
- content: value
- }
- }
- }
- }
-
- MouseArea {
- width: col.width + 45
- height: col.height + 30
- drag.target: parent
- drag.minimumX: 0
- drag.maximumX: root.width - parent.width
- drag.minimumY: yoffset
- drag.maximumY: root.candidateHeight - parent.height + yoffset
- onClicked: {
- root.gotoSourceLocation(file, line, column);
- root.recenterOnItem(view.selectedModel, view.selectedItem);
- }
- }
-
- Image {
- id: lockIcon
- source: locked?"lock_closed.png" : "lock_open.png"
- anchors.top: closeIcon.top
- anchors.right: closeIcon.left
- anchors.rightMargin: 4
- width: 8
- height: 12
- MouseArea {
- anchors.fill: parent
- onClicked: {
- root.selectionLocked = !root.selectionLocked;
- }
- }
- }
-
-
- Text {
- id: closeIcon
- x: col.width + 30
- y: 4
- text:"X"
- color: "white"
- MouseArea {
- anchors.fill: parent
- onClicked: {
- root.hideRangeDetails();
- view.selectedItem = -1;
- }
- }
- }
-
-}
diff --git a/plugins/qmlprofiler/qml/RangeMover.qml b/plugins/qmlprofiler/qml/RangeMover.qml
deleted file mode 100644
index 18226d8d25..0000000000
--- a/plugins/qmlprofiler/qml/RangeMover.qml
+++ /dev/null
@@ -1,203 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of Qt Creator.
-**
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia. For licensing terms and
-** conditions see http://qt.digia.com/licensing. For further information
-** use the contact form at http://qt.digia.com/contact-us.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 2.1 requirements
-** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Digia gives you certain additional
-** rights. These rights are described in the Digia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-****************************************************************************/
-
-import QtQuick 1.0
-
-Rectangle {
- id: rangeMover
-
-
- property color rangeColor:"#444a64b8"
- property color borderColor:"#cc4a64b8"
- property color dragMarkerColor: "#4a64b8"
- width: 20
- height: 50
-
- color: rangeColor
-
- property bool dragStarted: false
- onXChanged: {
- if (dragStarted) canvas.updateRange()
- }
-
- MouseArea {
- anchors.fill: parent
- drag.target: rangeMover
- drag.axis: "XAxis"
- drag.minimumX: 0
- drag.maximumX: canvas.width - rangeMover.width
- onPressed: {
- parent.dragStarted = true;
- }
- onReleased: {
- parent.dragStarted = false;
- }
- }
-
- Rectangle {
- id: leftRange
-
- // used for dragging the borders
- property real initialX: 0
- property real initialWidth: 0
-
- x: 0
- height: parent.height
- width: 1
- color: borderColor
-
- Rectangle {
- id: leftBorderHandle
- height: parent.height
- x: -width
- width: 7
- color: "#869cd1"
- visible: false
- Image {
- source: "range_handle.png"
- x: 2
- width: 4
- height: 9
- fillMode: Image.Tile
- y: rangeMover.height / 2 - 4
- }
- }
-
- states: State {
- name: "highlighted"
- PropertyChanges {
- target: leftBorderHandle
- visible: true
- }
- }
-
- onXChanged: {
- if (x !== 0) {
- rangeMover.width = initialWidth - x;
- rangeMover.x = initialX + x;
- x = 0;
- canvas.updateRange();
- }
- }
-
- MouseArea {
- x: -10
- width: 13
- y: 0
- height: parent.height
-
- drag.target: leftRange
- drag.axis: "XAxis"
- drag.minimumX: -parent.initialX
- drag.maximumX: parent.initialWidth - 2
-
- hoverEnabled: true
-
- onEntered: {
- parent.state = "highlighted";
- }
- onExited: {
- if (!pressed) parent.state = "";
- }
- onReleased: {
- if (!containsMouse) parent.state = "";
- }
- onPressed: {
- parent.initialX = rangeMover.x;
- parent.initialWidth = rangeMover.width;
- }
- }
- }
-
- Rectangle {
- id: rightRange
-
- x: rangeMover.width
- height: parent.height
- width: 1
- color: borderColor
-
- Rectangle {
- id: rightBorderHandle
- height: parent.height
- x: 1
- width: 7
- color: "#869cd1"
- visible: false
- Image {
- source: "range_handle.png"
- x: 2
- width: 4
- height: 9
- fillMode: Image.Tile
- y: rangeMover.height / 2 - 4
- }
- }
-
- states: State {
- name: "highlighted"
- PropertyChanges {
- target: rightBorderHandle
- visible: true
- }
- }
-
- onXChanged: {
- if (x!=rangeMover.width) {
- rangeMover.width = x;
- canvas.updateRange();
- }
- }
-
- MouseArea {
- x: -3
- width: 13
- y: 0
- height: parent.height
-
- drag.target: rightRange
- drag.axis: "XAxis"
- drag.minimumX: 1
- drag.maximumX: canvas.width - rangeMover.x
-
- hoverEnabled: true
-
- onEntered: {
- parent.state = "highlighted";
- }
- onExited: {
- if (!pressed) parent.state = "";
- }
- onReleased: {
- if (!containsMouse) parent.state = "";
- }
- }
- }
-
-}
diff --git a/plugins/qmlprofiler/qml/SelectionRange.qml b/plugins/qmlprofiler/qml/SelectionRange.qml
deleted file mode 100644
index b302de614a..0000000000
--- a/plugins/qmlprofiler/qml/SelectionRange.qml
+++ /dev/null
@@ -1,297 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of Qt Creator.
-**
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia. For licensing terms and
-** conditions see http://qt.digia.com/licensing. For further information
-** use the contact form at http://qt.digia.com/contact-us.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 2.1 requirements
-** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Digia gives you certain additional
-** rights. These rights are described in the Digia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-****************************************************************************/
-
-import QtQuick 1.0
-
-Rectangle {
- id: selectionRange
-
- width: 1
- color: "transparent"
-
- property bool ready: visible && creationState === 3
-
- property color rangeColor:"#444a64b8"
- property color pressedColor:"#664a64b8"
- property color borderColor:"#aa4a64b8"
- property color dragMarkerColor: "#4a64b8"
- property color singleLineColor: "#4a64b8"
-
- property string startTimeString: detailedPrintTime(startTime)
- property string endTimeString: detailedPrintTime(startTime+duration)
- property string durationString: detailedPrintTime(duration)
-
- property variant startTime: x * selectionRange.viewTimePerPixel + qmlProfilerModelProxy.traceStartTime()
- property variant duration: width * selectionRange.viewTimePerPixel
- property variant viewTimePerPixel: 1
- property variant creationState : 0
-
- property variant x1
- property variant x2
- property variant x3: Math.min(x1, x2)
- property variant x4: Math.max(x1, x2)
-
- property bool isDragging: false
-
- Connections {
- target: zoomControl
- onRangeChanged: {
- var oldTimePerPixel = selectionRange.viewTimePerPixel;
- selectionRange.viewTimePerPixel = Math.abs(zoomControl.endTime() - zoomControl.startTime()) / flick.width;
- if (creationState === 3 && oldTimePerPixel != selectionRange.viewTimePerPixel) {
- selectionRange.x = x * oldTimePerPixel / selectionRange.viewTimePerPixel;
- selectionRange.width = width * oldTimePerPixel / selectionRange.viewTimePerPixel;
- }
- }
- }
-
- onCreationStateChanged: {
- switch (creationState) {
- case 0: color = "transparent"; break;
- case 1: color = singleLineColor; break;
- default: color = rangeColor; break;
- }
- }
-
- onIsDraggingChanged: {
- if (isDragging)
- color = pressedColor;
- else
- color = rangeColor;
- }
-
- function reset(setVisible) {
- width = 1;
- creationState = 0;
- visible = setVisible;
- }
-
- function setPos(pos) {
- switch (creationState) {
- case 1: {
- width = 1;
- x1 = pos;
- x2 = pos;
- x = pos;
- break;
- }
- case 2: {
- x2 = pos;
- x = x3;
- width = x4-x3;
- break;
- }
- default: return;
- }
- }
-
-
- function detailedPrintTime( t )
- {
- if (t <= 0) return "0";
- if (t<1000) return t+" ns";
- t = Math.floor(t/1000);
- if (t<1000) return t+" μs";
- if (t<1e6) return (t/1000) + " ms";
- return (t/1e6) + " s";
- }
-
- // creation control
- function releasedOnCreation() {
- if (selectionRange.creationState === 2) {
- flick.interactive = true;
- selectionRange.creationState = 3;
- selectionRangeControl.enabled = false;
- }
- }
-
- function pressedOnCreation() {
- if (selectionRange.creationState === 1) {
- flick.interactive = false;
- selectionRange.setPos(selectionRangeControl.mouseX + flick.contentX);
- selectionRange.creationState = 2;
- }
- }
-
- function movedOnCreation() {
- if (selectionRange.creationState === 0) {
- selectionRange.creationState = 1;
- }
-
- if (!root.eventCount)
- return;
-
- if (!selectionRangeControl.pressed && selectionRange.creationState==3)
- return;
-
- if (selectionRangeControl.pressed) {
- selectionRange.setPos(selectionRangeControl.mouseX + flick.contentX);
- } else {
- selectionRange.setPos(selectionRangeControl.mouseX + flick.contentX);
- }
- }
-
- Rectangle {
- id: leftBorder
-
- visible: selectionRange.creationState === 3
-
- // used for dragging the borders
- property real initialX: 0
- property real initialWidth: 0
-
- x: 0
- height: parent.height
- width: 1
- color: borderColor
-
- Rectangle {
- id: leftBorderHandle
- height: parent.height
- x: -width
- width: 9
- color: "#869cd1"
- visible: false
- Image {
- source: "range_handle.png"
- x: 4
- width: 4
- height: 63
- fillMode: Image.Tile
- y: root.scrollY + root.candidateHeight / 2 - 32
- }
- }
-
- states: State {
- name: "highlighted"
- PropertyChanges {
- target: leftBorderHandle
- visible: true
- }
- }
-
- onXChanged: if (x != 0) {
- selectionRange.width = initialWidth - x;
- selectionRange.x = initialX + x;
- x = 0;
- }
-
- MouseArea {
- x: -12
- width: 15
- y: 0
- height: parent.height
-
- drag.target: leftBorder
- drag.axis: "XAxis"
- drag.minimumX: -parent.initialX
- drag.maximumX: parent.initialWidth - 2
-
- hoverEnabled: true
-
- onEntered: parent.state = "highlighted"
- onExited: {
- if (!pressed) parent.state = "";
- }
- onReleased: {
- if (!containsMouse) parent.state = "" ;
- }
- onPressed: {
- parent.initialX = selectionRange.x;
- parent.initialWidth = selectionRange.width;
- }
- }
- }
-
- Rectangle {
- id: rightBorder
-
- visible: selectionRange.creationState === 3
-
- x: selectionRange.width
- height: parent.height
- width: 1
- color: borderColor
-
- Rectangle {
- id: rightBorderHandle
- height: parent.height
- x: 1
- width: 9
- color: "#869cd1"
- visible: false
- Image {
- source: "range_handle.png"
- x: 2
- width: 4
- height: 63
- fillMode: Image.Tile
- y: root.scrollY + root.candidateHeight / 2 - 32
- }
- }
-
- states: State {
- name: "highlighted"
- PropertyChanges {
- target: rightBorderHandle
- visible: true
- }
- }
-
- onXChanged: {
- if (x != selectionRange.width) {
- selectionRange.width = x;
- }
- }
-
- MouseArea {
- x: -3
- width: 15
- y: 0
- height: parent.height
-
- drag.target: rightBorder
- drag.axis: "XAxis"
- drag.minimumX: 1
- drag.maximumX: flick.contentWidth - selectionRange.x
-
- hoverEnabled: true
-
- onEntered: {
- parent.state = "highlighted";
- }
- onExited: {
- if (!pressed) parent.state = "";
- }
- onReleased: {
- if (!containsMouse) parent.state = "";
- }
- }
- }
-}
diff --git a/plugins/qmlprofiler/qml/SelectionRangeDetails.qml b/plugins/qmlprofiler/qml/SelectionRangeDetails.qml
deleted file mode 100644
index 5af24af14d..0000000000
--- a/plugins/qmlprofiler/qml/SelectionRangeDetails.qml
+++ /dev/null
@@ -1,189 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of Qt Creator.
-**
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia. For licensing terms and
-** conditions see http://qt.digia.com/licensing. For further information
-** use the contact form at http://qt.digia.com/contact-us.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 2.1 requirements
-** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Digia gives you certain additional
-** rights. These rights are described in the Digia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-****************************************************************************/
-
-import QtQuick 1.0
-import Monitor 1.0
-
-Item {
- id: selectionRangeDetails
-
- property string startTime
- property string endTime
- property string duration
- property bool showDuration
-
- width: 170
- height: col.height + 30
- z: 1
- visible: false
- x: 200
- y: 125
-
- property int yoffset: root.scrollY
- onYoffsetChanged: {
- y = relativey + yoffset
- fitInView();
- }
- property int relativey : y - yoffset
- onYChanged: relativey = y - yoffset
-
- // keep inside view
- Connections {
- target: root
- onWidthChanged: fitInView();
- onCandidateHeightChanged: fitInView();
- }
-
- function fitInView() {
- // don't reposition if it does not fit
- if (root.width < width || root.candidateHeight < height)
- return;
-
- if (x + width > root.width)
- x = root.width - width;
- if (x < 0)
- x = 0;
- if (y + height - yoffset > root.candidateHeight)
- y = root.candidateHeight - height + yoffset;
- if (y < yoffset)
- y = yoffset;
- }
-
- // shadow
- BorderImage {
- property int px: 4
- source: "dialog_shadow.png"
-
- border {
- left: px; top: px
- right: px; bottom: px
- }
- width: parent.width + 2*px - 1
- height: parent.height
- x: -px + 1
- y: px + 1
- }
-
- // title bar
- Rectangle {
- width: parent.width
- height: 20
- color: "#4a64b8"
- radius: 5
- border.width: 1
- border.color: "#a0a0a0"
- }
- Item {
- width: parent.width+1
- height: 11
- y: 10
- clip: true
- Rectangle {
- width: parent.width-1
- height: 15
- y: -5
- color: "#4a64b8"
- border.width: 1
- border.color: "#a0a0a0"
- }
- }
-
- //title
- Text {
- id: typeTitle
- text: " "+qsTr("Selection")
- font.bold: true
- height: 18
- y: 2
- verticalAlignment: Text.AlignVCenter
- width: parent.width
- color: "white"
- }
-
- // Details area
- Rectangle {
- color: "white"
- width: parent.width
- height: col.height + 10
- y: 20
- border.width: 1
- border.color: "#a0a0a0"
- Column {
- id: col
- x: 10
- y: 5
- Detail {
- label: qsTr("Start")
- content: selectionRangeDetails.startTime
- }
- Detail {
- label: qsTr("End")
- visible: selectionRangeDetails.showDuration
- content: selectionRangeDetails.endTime
- }
- Detail {
- label: qsTr("Duration")
- visible: selectionRangeDetails.showDuration
- content: selectionRangeDetails.duration
- }
- }
- }
-
- MouseArea {
- width: col.width + 45
- height: col.height + 30
- drag.target: parent
- drag.minimumX: 0
- drag.maximumX: root.width - parent.width
- drag.minimumY: yoffset
- drag.maximumY: root.candidateHeight - parent.height + yoffset
- onClicked: {
- if ((selectionRange.x < flick.contentX) ^ (selectionRange.x+selectionRange.width > flick.contentX + flick.width)) {
- root.recenter(selectionRange.startTime + selectionRange.duration/2);
- }
- }
- }
-
- Text {
- id: closeIcon
- x: selectionRangeDetails.width - 14
- y: 4
- text:"X"
- color: "white"
- MouseArea {
- anchors.fill: parent
- anchors.leftMargin: -8
- onClicked: {
- root.selectionRangeMode = false;
- root.updateRangeButton();
- }
- }
- }
-
-}
diff --git a/plugins/qmlprofiler/qml/TimeDisplay.qml b/plugins/qmlprofiler/qml/TimeDisplay.qml
deleted file mode 100644
index 2f5a8bfaaf..0000000000
--- a/plugins/qmlprofiler/qml/TimeDisplay.qml
+++ /dev/null
@@ -1,140 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of Qt Creator.
-**
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia. For licensing terms and
-** conditions see http://qt.digia.com/licensing. For further information
-** use the contact form at http://qt.digia.com/contact-us.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 2.1 requirements
-** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Digia gives you certain additional
-** rights. These rights are described in the Digia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-****************************************************************************/
-
-import QtQuick 1.0
-import Monitor 1.0
-
-Canvas2D {
- id: timeDisplay
-
- property variant startTime : 0
- property variant endTime : 0
- property variant timePerPixel: 0
-
-
- Component.onCompleted: {
- requestRedraw();
- }
- onWidthChanged: {
- requestRedraw();
- }
- onHeightChanged: {
- requestRedraw();
- }
-
- Connections {
- target: zoomControl
- onRangeChanged: {
- startTime = zoomControl.startTime();
- endTime = zoomControl.endTime();
- requestRedraw();
- }
- }
-
- onDrawRegion: {
- ctxt.fillStyle = "white";
- ctxt.fillRect(0, 0, width, height);
-
- var totalTime = endTime - startTime;
- var spacing = width / totalTime;
-
- var initialBlockLength = 120;
- var timePerBlock = Math.pow(2, Math.floor( Math.log( totalTime / width * initialBlockLength ) / Math.LN2 ) );
- var pixelsPerBlock = timePerBlock * spacing;
- var pixelsPerSection = pixelsPerBlock / 5;
- var blockCount = width / pixelsPerBlock;
-
- var realStartTime = Math.floor(startTime/timePerBlock) * timePerBlock;
- var realStartPos = (startTime-realStartTime) * spacing;
-
- timePerPixel = timePerBlock/pixelsPerBlock;
-
- var initialColor = Math.floor(realStartTime/timePerBlock) % 2;
-
- ctxt.fillStyle = "#000000";
- ctxt.font = "8px sans-serif";
- for (var ii = 0; ii < blockCount+1; ii++) {
- var x = Math.floor(ii*pixelsPerBlock - realStartPos);
-
- ctxt.fillStyle = (ii+initialColor)%2 ? "#E6E6E6":"white";
- ctxt.fillRect(x, 0, pixelsPerBlock, height);
-
- ctxt.strokeStyle = "#B0B0B0";
- ctxt.beginPath();
- ctxt.moveTo(x, 0);
- ctxt.lineTo(x, height);
- ctxt.stroke();
-
- ctxt.fillStyle = "#000000";
- ctxt.fillText(prettyPrintTime(ii*timePerBlock + realStartTime), x + 5, height/2 + 5);
- }
-
- ctxt.strokeStyle = "#525252";
- ctxt.beginPath();
- ctxt.moveTo(0, height-1);
- ctxt.lineTo(width, height-1);
- ctxt.stroke();
-
- // gradient borders
- var gradientDark = "rgba(0, 0, 0, 0.53125)";
- var gradientClear = "rgba(0, 0, 0, 0)";
- var grad = ctxt.createLinearGradient(0, 0, 0, 6);
- grad.addColorStop(0,gradientDark);
- grad.addColorStop(1,gradientClear);
- ctxt.fillStyle = grad;
- ctxt.fillRect(0, 0, width, 6);
-
- grad = ctxt.createLinearGradient(0, 0, 6, 0);
- grad.addColorStop(0,gradientDark);
- grad.addColorStop(1,gradientClear);
- ctxt.fillStyle = grad;
- ctxt.fillRect(0, 0, 6, height);
-
- grad = ctxt.createLinearGradient(width, 0, width-6, 0);
- grad.addColorStop(0,gradientDark);
- grad.addColorStop(1,gradientClear);
- ctxt.fillStyle = grad;
- ctxt.fillRect(width-6, 0, 6, height);
- }
-
- function prettyPrintTime( t )
- {
- if (t <= 0) return "0";
- if (t<1000) return t+" ns";
- t = t/1000;
- if (t<1000) return t+" μs";
- t = Math.floor(t/100)/10;
- if (t<1000) return t+" ms";
- t = Math.floor(t)/1000;
- if (t<60) return t+" s";
- var m = Math.floor(t/60);
- t = Math.floor(t - m*60);
- return m+"m"+t+"s";
- }
-}
diff --git a/plugins/qmlprofiler/qml/TimeMarks.qml b/plugins/qmlprofiler/qml/TimeMarks.qml
deleted file mode 100644
index 977e733e20..0000000000
--- a/plugins/qmlprofiler/qml/TimeMarks.qml
+++ /dev/null
@@ -1,148 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of Qt Creator.
-**
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia. For licensing terms and
-** conditions see http://qt.digia.com/licensing. For further information
-** use the contact form at http://qt.digia.com/contact-us.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 as published by the Free Software
-** Foundation and appearing in the file LICENSE.LGPL included in the
-** packaging of this file. Please review the following information to
-** ensure the GNU Lesser General Public License version 2.1 requirements
-** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Digia gives you certain additional
-** rights. These rights are described in the Digia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-****************************************************************************/
-
-import QtQuick 1.0
-import Monitor 1.0
-
-Canvas2D {
- id: timeDisplay
-
- property variant startTime
- property variant endTime
- property variant timePerPixel
-
- Component.onCompleted: {
- requestRedraw();
- }
-
- onWidthChanged: {
- requestRedraw();
- }
- onHeightChanged: {
- requestRedraw();
- }
-
- Connections {
- target: labels
- onHeightChanged: { requestRedraw(); }
- }
-
- onDrawRegion: {
- drawBackgroundBars( ctxt, region );
-
- var totalTime = endTime - startTime;
- var spacing = width / totalTime;
-
- var initialBlockLength = 120;
- var timePerBlock = Math.pow(2, Math.floor( Math.log( totalTime / width * initialBlockLength ) / Math.LN2 ) );
- var pixelsPerBlock = timePerBlock * spacing;
- var pixelsPerSection = pixelsPerBlock / 5;
- var blockCount = width / pixelsPerBlock;
-
- var realStartTime = Math.floor(startTime/timePerBlock) * timePerBlock;
- var realStartPos = (startTime-realStartTime) * spacing;
-
- timePerPixel = timePerBlock/pixelsPerBlock;
-
-
- ctxt.fillStyle = "#000000";
- ctxt.font = "8px sans-serif";
- for (var ii = 0; ii < blockCount+1; ii++) {
- var x = Math.floor(ii*pixelsPerBlock - realStartPos);
- ctxt.strokeStyle = "#B0B0B0";
- ctxt.beginPath();
- ctxt.moveTo(x, 0);
- ctxt.lineTo(x, height);
- ctxt.stroke();
-
- ctxt.strokeStyle = "#CCCCCC";
- for (var jj=1; jj < 5; jj++) {
- var xx = Math.floor(ii*pixelsPerBlock + jj*pixelsPerSection - realStartPos);
- ctxt.beginPath();
- ctxt.moveTo(xx, 0);
- ctxt.lineTo(xx, height);
- ctxt.stroke();
- }
- }
-
-
- // gray off out-of-bounds areas
- var rectWidth;
- if (startTime < qmlProfilerModelProxy.traceStartTime()) {
- ctxt.fillStyle = "rgba(127,127,127,0.2)";
- rectWidth = (qmlProfilerModelProxy.traceStartTime() - startTime) * spacing;
- ctxt.fillRect(0, 0, rectWidth, height);
- }
- if (endTime > qmlProfilerModelProxy.traceEndTime()) {
- ctxt.fillStyle = "rgba(127,127,127,0.2)";
- var rectX = (qmlProfilerModelProxy.traceEndTime() - startTime) * spacing;
- rectWidth = (endTime - qmlProfilerModelProxy.traceEndTime()) * spacing;
- ctxt.fillRect(rectX, 0, rectWidth, height);
- }
-
- }
-
- function updateMarks(start, end) {
- if (startTime !== start || endTime !== end) {
- startTime = start;
- endTime = end;
- requestRedraw();
- }
- }
-
- function drawBackgroundBars( ctxt, region ) {
- // TODO: redraw when amount of data changes
- var colorIndex = true;
- // row background
- for (var y=0; y < labels.height; y+= root.singleRowHeight) {
- ctxt.fillStyle = colorIndex ? "#f0f0f0" : "white";
- ctxt.strokeStyle = colorIndex ? "#f0f0f0" : "white";
- ctxt.fillRect(0, y, width, root.singleRowHeight);
- colorIndex = !colorIndex;
- }
-
- // separators
- var cumulatedHeight = 0;
- for (var modelIndex = 0; modelIndex < qmlProfilerModelProxy.modelCount(); modelIndex++) {
- for (var i=0; i<qmlProfilerModelProxy.categoryCount(modelIndex); i++) {
- cumulatedHeight += root.singleRowHeight * qmlProfilerModelProxy.categoryDepth(modelIndex, i);
-
- ctxt.strokeStyle = "#B0B0B0";
- ctxt.beginPath();
- ctxt.moveTo(0, cumulatedHeight);
- ctxt.lineTo(width, cumulatedHeight);
- ctxt.stroke();
- }
- }
-
- // bottom
- ctxt.fillStyle = "#f5f5f5";
- ctxt.fillRect(0, labels.height, width, height - labels.height);
- }
-}
diff --git a/plugins/qmlprofiler/qml/arrow_down.png b/plugins/qmlprofiler/qml/arrow_down.png
deleted file mode 100644
index 94300b5944..0000000000
--- a/plugins/qmlprofiler/qml/arrow_down.png
+++ /dev/null
Binary files differ
diff --git a/plugins/qmlprofiler/qml/arrow_right.png b/plugins/qmlprofiler/qml/arrow_right.png
deleted file mode 100644
index e124813da3..0000000000
--- a/plugins/qmlprofiler/qml/arrow_right.png
+++ /dev/null
Binary files differ
diff --git a/plugins/qmlprofiler/qml/clean_pane_small.png b/plugins/qmlprofiler/qml/clean_pane_small.png
deleted file mode 100644
index 583b567703..0000000000
--- a/plugins/qmlprofiler/qml/clean_pane_small.png
+++ /dev/null
Binary files differ
diff --git a/plugins/qmlprofiler/qml/dialog_shadow.png b/plugins/qmlprofiler/qml/dialog_shadow.png
deleted file mode 100644
index 2d697325c3..0000000000
--- a/plugins/qmlprofiler/qml/dialog_shadow.png
+++ /dev/null
Binary files differ
diff --git a/plugins/qmlprofiler/qml/ico_next.png b/plugins/qmlprofiler/qml/ico_next.png
deleted file mode 100644
index dad2f241c2..0000000000
--- a/plugins/qmlprofiler/qml/ico_next.png
+++ /dev/null
Binary files differ
diff --git a/plugins/qmlprofiler/qml/ico_prev.png b/plugins/qmlprofiler/qml/ico_prev.png
deleted file mode 100644
index 7794d3d291..0000000000
--- a/plugins/qmlprofiler/qml/ico_prev.png
+++ /dev/null
Binary files differ
diff --git a/plugins/qmlprofiler/qml/ico_rangeselected.png b/plugins/qmlprofiler/qml/ico_rangeselected.png
deleted file mode 100644
index c6a422461a..0000000000
--- a/plugins/qmlprofiler/qml/ico_rangeselected.png
+++ /dev/null
Binary files differ
diff --git a/plugins/qmlprofiler/qml/ico_rangeselection.png b/plugins/qmlprofiler/qml/ico_rangeselection.png
deleted file mode 100644
index f303a21c8c..0000000000
--- a/plugins/qmlprofiler/qml/ico_rangeselection.png
+++ /dev/null
Binary files differ
diff --git a/plugins/qmlprofiler/qml/ico_selectionmode.png b/plugins/qmlprofiler/qml/ico_selectionmode.png
deleted file mode 100644
index ac23d47b26..0000000000
--- a/plugins/qmlprofiler/qml/ico_selectionmode.png
+++ /dev/null
Binary files differ
diff --git a/plugins/qmlprofiler/qml/ico_zoom.png b/plugins/qmlprofiler/qml/ico_zoom.png
deleted file mode 100644
index 9235535eaa..0000000000
--- a/plugins/qmlprofiler/qml/ico_zoom.png
+++ /dev/null
Binary files differ
diff --git a/plugins/qmlprofiler/qml/lock_closed.png b/plugins/qmlprofiler/qml/lock_closed.png
deleted file mode 100644
index e6f86fa753..0000000000
--- a/plugins/qmlprofiler/qml/lock_closed.png
+++ /dev/null
Binary files differ
diff --git a/plugins/qmlprofiler/qml/lock_open.png b/plugins/qmlprofiler/qml/lock_open.png
deleted file mode 100644
index ab6c820dfb..0000000000
--- a/plugins/qmlprofiler/qml/lock_open.png
+++ /dev/null
Binary files differ
diff --git a/plugins/qmlprofiler/qml/qmlprofiler.qrc b/plugins/qmlprofiler/qml/qmlprofiler.qrc
deleted file mode 100644
index ab3f8598da..0000000000
--- a/plugins/qmlprofiler/qml/qmlprofiler.qrc
+++ /dev/null
@@ -1,30 +0,0 @@
-<RCC>
- <qresource prefix="/qmlprofiler">
- <file>Detail.qml</file>
- <file>Label.qml</file>
- <file>MainView.qml</file>
- <file>RangeDetails.qml</file>
- <file>RangeMover.qml</file>
- <file>TimeDisplay.qml</file>
- <file>clean_pane_small.png</file>
- <file>recordOff.png</file>
- <file>recordOn.png</file>
- <file>lock_closed.png</file>
- <file>lock_open.png</file>
- <file>TimeMarks.qml</file>
- <file>Overview.qml</file>
- <file>Overview.js</file>
- <file>SelectionRange.qml</file>
- <file>SelectionRangeDetails.qml</file>
- <file>arrow_down.png</file>
- <file>arrow_right.png</file>
- <file>dialog_shadow.png</file>
- <file>range_handle.png</file>
- <file>ico_selectionmode.png</file>
- <file>ico_zoom.png</file>
- <file>ico_prev.png</file>
- <file>ico_next.png</file>
- <file>ico_rangeselection.png</file>
- <file>ico_rangeselected.png</file>
- </qresource>
-</RCC>
diff --git a/plugins/qmlprofiler/qml/range_handle.png b/plugins/qmlprofiler/qml/range_handle.png
deleted file mode 100644
index f44fb3337f..0000000000
--- a/plugins/qmlprofiler/qml/range_handle.png
+++ /dev/null
Binary files differ
diff --git a/plugins/qmlprofiler/qml/recordOff.png b/plugins/qmlprofiler/qml/recordOff.png
deleted file mode 100644
index d50c0183c0..0000000000
--- a/plugins/qmlprofiler/qml/recordOff.png
+++ /dev/null
Binary files differ
diff --git a/plugins/qmlprofiler/qml/recordOn.png b/plugins/qmlprofiler/qml/recordOn.png
deleted file mode 100644
index ed5e8912c3..0000000000
--- a/plugins/qmlprofiler/qml/recordOn.png
+++ /dev/null
Binary files differ