Krita Source Code Documentation
Loading...
Searching...
No Matches
kis_tool_pan.cpp
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2017 Victor Wåhlström <victor.wahlstrom@initiali.se>
3 *
4 * SPDX-License-Identifier: GPL-2.0-or-later
5 */
6
7#include <QKeyEvent>
8
9#include "kis_tool_pan.h"
10#include "kis_cursor.h"
11#include "kis_canvas2.h"
12
13#include <KoCanvasController.h>
14
15#include <KoIcon.h>
16#include <klocalizedstring.h>
17
18
20 : KisTool(canvas, KisCursor::openHandCursor())
21{
22}
23
27
33
35{
36 QPoint pos = event->pos();
37 QPoint delta = m_lastPosition - pos;
38 canvas()->canvasController()->pan(delta);
39 m_lastPosition = pos;
40}
41
47
48void KisToolPan::keyPressEvent(QKeyEvent *event)
49{
50 switch (event->key()) {
51 case Qt::Key_Up:
53 break;
54 case Qt::Key_Down:
56 break;
57 case Qt::Key_Left:
59 break;
60 case Qt::Key_Right:
62 break;
63 }
64 event->accept();
65}
66
67void KisToolPan::paint(QPainter &painter, const KoViewConverter &converter)
68{
69 Q_UNUSED(painter);
70 Q_UNUSED(converter);
71}
72
74{
75 return false;
76}
77
87
91
static QCursor openHandCursor()
static QCursor closedHandCursor()
KoToolBase * createTool(KoCanvasBase *canvas) override
~KisToolPanFactory() override
void continuePrimaryAction(KoPointerEvent *event) override
QPoint m_lastPosition
bool wantsAutoScroll() const override
~KisToolPan() override
void keyPressEvent(QKeyEvent *event) override
KisToolPan(KoCanvasBase *canvas)
void paint(QPainter &painter, const KoViewConverter &converter) override
void beginPrimaryAction(KoPointerEvent *event) override
void endPrimaryAction(KoPointerEvent *event) override
KoCanvasController * canvasController() const
virtual void panLeft()=0
virtual void panRight()=0
virtual void pan(const QPoint &distance)=0
virtual void panDown()=0
virtual void panUp()=0
void useCursor(const QCursor &cursor)
void setSection(const QString &section)
void setActivationShapeId(const QString &activationShapeId)
void setIconName(const char *iconName)
void setToolTip(const QString &tooltip)
void setPriority(int newPriority)
#define koIconNameCStr(name)
Definition kis_icon.h:28
static const QString KRITA_TOOL_ACTIVATION_ID
Definition kis_tool.h:37
static const QString Navigation
Tools that affect the canvas: pan, zoom, etc.
KisCanvas2 * canvas