aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/qmltooling/qmldbg_qtquick2/inspecttool.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/qmltooling/qmldbg_qtquick2/inspecttool.cpp')
-rw-r--r--src/plugins/qmltooling/qmldbg_qtquick2/inspecttool.cpp36
1 files changed, 24 insertions, 12 deletions
diff --git a/src/plugins/qmltooling/qmldbg_qtquick2/inspecttool.cpp b/src/plugins/qmltooling/qmldbg_qtquick2/inspecttool.cpp
index 0ef609d7fd..67b12822be 100644
--- a/src/plugins/qmltooling/qmldbg_qtquick2/inspecttool.cpp
+++ b/src/plugins/qmltooling/qmldbg_qtquick2/inspecttool.cpp
@@ -61,40 +61,52 @@ namespace QtQuick2 {
InspectTool::InspectTool(QQuickViewInspector *inspector, QQuickView *view) :
AbstractTool(inspector),
+ m_originalSmooth(view->rootItem()->smooth()),
m_dragStarted(false),
m_pinchStarted(false),
m_didPressAndHold(false),
m_tapEvent(false),
+ m_rootItem(view->rootItem()),
+ m_originalPosition(view->rootItem()->pos()),
m_currentScale(1.0f),
m_smoothScaleFactor(Constants::ZoomSnapDelta),
m_minScale(0.125f),
m_maxScale(48.0f),
+ m_originalScale(view->rootItem()->scale()),
m_touchTimestamp(0),
m_hoverHighlight(new HoverHighlight(inspector->overlay())),
m_lastItem(0),
m_lastClickedItem(0)
{
- m_rootItem = view->rootItem();
- m_originalSmooth = m_rootItem->smooth();
- if (!m_originalSmooth)
- m_rootItem->setSmooth(true);
- m_originalPosition = m_rootItem->pos();
- m_originalScale = m_rootItem->scale();
-
//Press and Hold Timer
m_pressAndHoldTimer.setSingleShot(true);
m_pressAndHoldTimer.setInterval(Constants::PressAndHoldTimeout);
connect(&m_pressAndHoldTimer, SIGNAL(timeout()), SLOT(zoomTo100()));
+ enable(true);
}
InspectTool::~InspectTool()
{
- // restoring the original states.
- if (m_rootItem) {
- m_rootItem->setScale(m_originalScale);
- m_rootItem->setPos(m_originalPosition);
- if (!m_originalSmooth)
+ enable(false);
+}
+
+void InspectTool::enable(bool enable)
+{
+ if (!enable) {
+ inspector()->setSelectedItems(QList<QQuickItem*>());
+ // restoring the original states.
+ if (m_rootItem) {
+ m_rootItem->setScale(m_originalScale);
+ m_rootItem->setPos(m_originalPosition);
m_rootItem->setSmooth(m_originalSmooth);
+ }
+ } else {
+ if (m_rootItem) {
+ m_originalSmooth = m_rootItem->smooth();
+ m_originalScale = m_rootItem->scale();
+ m_originalPosition = m_rootItem->pos();
+ m_rootItem->setSmooth(true);
+ }
}
}