diff options
| author | craig <craig@11d20701-8431-0410-a711-e3c959e3b870> | 2012-01-01 11:40:09 +0000 |
|---|---|---|
| committer | craig <craig@11d20701-8431-0410-a711-e3c959e3b870> | 2012-01-01 11:40:09 +0000 |
| commit | 7ed83b6c6666eb8b6b104c211ae7e52907350372 (patch) | |
| tree | 4430b556abac0ad660a0aacf1887d77f85d8be02 /scribus/canvasgesture_pan.cpp | |
| download | scribus-7ed83b6c6666eb8b6b104c211ae7e52907350372.tar.gz scribus-7ed83b6c6666eb8b6b104c211ae7e52907350372.tar.xz scribus-7ed83b6c6666eb8b6b104c211ae7e52907350372.zip | |
Branch 1.3.5 tree to 1.4.x tree, goodbye 1.3.x
git-svn-id: svn://scribus.net/branches/Version14x/Scribus@17163 11d20701-8431-0410-a711-e3c959e3b870
Diffstat (limited to 'scribus/canvasgesture_pan.cpp')
| -rw-r--r-- | scribus/canvasgesture_pan.cpp | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/scribus/canvasgesture_pan.cpp b/scribus/canvasgesture_pan.cpp new file mode 100644 index 0000000..c37a52c --- /dev/null +++ b/scribus/canvasgesture_pan.cpp @@ -0,0 +1,77 @@ +/*
+ For general Scribus (>=1.3.2) copyright and licensing information please refer
+ to the COPYING file provided with the program. Following this notice may exist
+ a copyright and/or license notice that predates the release of Scribus 1.3.2
+ for which a new license (GPL+exception) is in place.
+ */
+/***************************************************************************
+* *
+* This program is free software; you can redistribute it and/or modify *
+* it under the terms of the GNU General Public License as published by *
+* the Free Software Foundation; either version 2 of the License, or *
+* (at your option) any later version. *
+* *
+***************************************************************************/
+
+#include <QEvent>
+#include <QMouseEvent>
+
+#include "canvasgesture_pan.h"
+
+#include "canvas.h"
+#include "scribusapp.h" // for qApp
+#include "scribusview.h"
+#include "util_icon.h"
+
+PanGesture::PanGesture (CanvasMode* parent) : CanvasGesture(parent)
+{
+ m_haveCursor = false;
+}
+
+void PanGesture::activate(bool fromGesture)
+{
+// qDebug() << "PanGesture::activate" << flag;
+ m_haveCursor = (qApp->overrideCursor() != NULL);
+ if ( (!fromGesture) && qApp->overrideCursor())
+ {
+ m_haveCursor = true;
+ m_cursor = *(qApp->overrideCursor());
+ }
+ else
+ {
+ m_haveCursor = false;
+ }
+ qApp->changeOverrideCursor(QCursor(loadIcon("HandC.xpm")));
+}
+
+void PanGesture::deactivate(bool forgesture)
+{
+// qDebug() << "PanGesture::deactivate" << forgesture;
+ if (m_haveCursor)
+ qApp->changeOverrideCursor(m_cursor);
+}
+
+void PanGesture::drawControls(QPainter* p)
+{
+ m_delegate->drawControls(p);
+}
+
+void PanGesture::mousePressEvent(QMouseEvent* m)
+{
+ FPoint m_canvasPoint = m_canvas->globalToCanvas(m->globalPos());
+ m_canvasRefPoint = QPointF(m_canvasPoint.x(), m_canvasPoint.y());
+}
+
+void PanGesture::mouseMoveEvent(QMouseEvent* m)
+{
+ FPoint m_canvasPoint = m_canvas->globalToCanvas(m->globalPos());
+ double scale = m_canvas->scale();
+ double dx = (m_canvasRefPoint.x() - m_canvasPoint.x()) * scale;
+ double dy = (m_canvasRefPoint.y() - m_canvasPoint.y()) * scale;
+ m_view->scrollBy(dx, dy);
+}
+
+void PanGesture::mouseReleaseEvent(QMouseEvent* m)
+{
+ m_view->stopGesture();
+}
|
