centerOn(sceneCoordinate);
}
+void MapView::mouseDoubleClickEvent(QMouseEvent *event)
+{
+ qWarning() << __PRETTY_FUNCTION__ << event->pos().x() << event->pos().y();
+
+ emit zoomIn();
+}
+
void MapView::mouseMoveEvent(QMouseEvent *event)
{
m_scenePosition += m_mousePosition - mapToScene(event->pos()).toPoint();
******************************************************************************/
protected:
/**
+ * @brief Event handler for mouse double click event
+ *
+ * Emits zoomIn signal.
+ * @param event QMouseEvent
+ */
+ void mouseDoubleClickEvent(QMouseEvent *event);
+
+ /**
* @brief Called when view is resized.
*
* @param event resize event
*/
void resizeEvent(QResizeEvent *event);
-private:
/**
* @brief Event handler for mouse move events
*
*/
void viewZoomFinished();
+ /**
+ * @brief Signal for zooming in.
+ */
+ void zoomIn();
+
/*******************************************************************************
* DATA MEMBERS
******************************************************************************/
connect(m_mapView, SIGNAL(viewZoomFinished()),
this, SIGNAL(viewZoomFinished()));
+
+ connect(m_mapView, SIGNAL(zoomIn()),
+ this, SIGNAL(zoomIn()));
}
void MainWindow::buildMapScale()
private slots:
void init();
void cleanup();
+ void doubleClick();
void zoomLevelChange_data();
void zoomLevelChange();
}
/**
+ * @brief Test view double click
+ */
+void TestMapView::doubleClick()
+{
+ QSignalSpy doubleClickSpy(m_mapView, SIGNAL(zoomIn()));
+ QVERIFY(doubleClickSpy.isValid());
+
+ QTest::mouseDClick(m_mapView, Qt::LeftButton);
+ QCOMPARE(doubleClickSpy.count(), 1);
+}
+
+/**
* @brief Test data for zoom level change test
*/
void TestMapView::zoomLevelChange_data()