From d7b57a6fd0f4d97799f9ebdc6cdec4a0703d1ca8 Mon Sep 17 00:00:00 2001 From: goldenhawking Date: Fri, 5 Feb 2016 22:21:07 +0800 Subject: [PATCH] Change the "goto center" mouse key from right click to left double click. --- qtviewer_planetosm/osmtiles/layer_tiles.cpp | 23 ++++++++++++++------- qtviewer_planetosm/osmtiles/layer_tiles.h | 1 + 2 files changed, 16 insertions(+), 8 deletions(-) diff --git a/qtviewer_planetosm/osmtiles/layer_tiles.cpp b/qtviewer_planetosm/osmtiles/layer_tiles.cpp index f279485..0384f12 100644 --- a/qtviewer_planetosm/osmtiles/layer_tiles.cpp +++ b/qtviewer_planetosm/osmtiles/layer_tiles.cpp @@ -135,14 +135,7 @@ namespace QTVOSM{ { this->m_nStartPosX = event->pos().x(); this->m_nStartPosY = event->pos().y(); - } - else if (event->button()==Qt::RightButton) - { - int nOffsetX = event->pos().x()-m_pViewer->windowWidth()/2; - int nOffsetY = event->pos().y()-m_pViewer->windowHeight()/2; - m_pViewer->DragView(-nOffsetX,-nOffsetY); - res = true; - } + } return res; } @@ -164,6 +157,20 @@ namespace QTVOSM{ return res; } + bool layer_tiles::cb_mouseDoubleClickEvent( QMouseEvent * event ) + { + if (!m_pViewer || m_bVisible==false || m_bActive==false) return false; + bool res = false; + if (event->button()==Qt::LeftButton) + { + int nOffsetX = event->pos().x()-m_pViewer->windowWidth()/2; + int nOffsetY = event->pos().y()-m_pViewer->windowHeight()/2; + m_pViewer->DragView(-nOffsetX,-nOffsetY); + res = true; + } + return res; + } + bool layer_tiles::cb_mouseMoveEvent(QMouseEvent * /*event*/) { return false; diff --git a/qtviewer_planetosm/osmtiles/layer_tiles.h b/qtviewer_planetosm/osmtiles/layer_tiles.h index f3c375a..f30c0d9 100644 --- a/qtviewer_planetosm/osmtiles/layer_tiles.h +++ b/qtviewer_planetosm/osmtiles/layer_tiles.h @@ -38,6 +38,7 @@ namespace QTVOSM{ virtual bool cb_mousePressEvent ( QMouseEvent * event ); virtual bool cb_mouseReleaseEvent ( QMouseEvent * event ); virtual bool cb_mouseMoveEvent(QMouseEvent * event); + virtual bool cb_mouseDoubleClickEvent(QMouseEvent *); virtual bool cb_wheelEvent ( QWheelEvent * event ); virtual void cb_resizeEvent ( QResizeEvent * event); virtual void cb_levelChanged(int nLevel); -- GitLab