Pencil2D Animation
Download
Community
News
Docs
Contribute
Overview
Articles
Code
Class List
Class Index
Class Hierarchy
Class Members
File List
Loading...
Searching...
No Matches
core_lib
src
tool
handtool.h
1
/*
2
3
Pencil2D - Traditional Animation Software
4
Copyright (C) 2005-2007 Patrick Corrieri & Pascal Naidon
5
Copyright (C) 2012-2020 Matthew Chiawen Chang
6
7
This program is free software; you can redistribute it and/or
8
modify it under the terms of the GNU General Public License
9
as published by the Free Software Foundation; version 2 of the License.
10
11
This program is distributed in the hope that it will be useful,
12
but WITHOUT ANY WARRANTY; without even the implied warranty of
13
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14
GNU General Public License for more details.
15
16
*/
17
18
#ifndef HANDTOOL_H
19
#define HANDTOOL_H
20
21
#include "basetool.h"
22
#include "preferencemanager.h"
23
24
25
class
HandTool
:
public
BaseTool
26
{
27
Q_OBJECT
28
public
:
29
explicit
HandTool
(
QObject
*
parent
= 0 );
30
ToolType type()
override
{
return
HAND; }
31
void
loadSettings()
override
;
32
QCursor
cursor()
override
;
33
34
void
pointerPressEvent(
PointerEvent
*)
override
;
35
void
pointerReleaseEvent(
PointerEvent
*)
override
;
36
void
pointerMoveEvent(
PointerEvent
*)
override
;
37
void
pointerDoubleClickEvent(
PointerEvent
*)
override
;
38
39
private
:
40
void
updateSettings(
const
SETTING setting);
41
void
transformView(
Qt::KeyboardModifiers
keyMod,
const
QPointF
& pos,
Qt::MouseButtons
buttons);
42
43
QPointF
mLastPixel;
44
QPointF
mStartPoint;
45
bool
mIsHeld =
false
;
46
int
mDeltaFactor = 1;
47
};
48
49
#endif
BaseTool
Definition:
basetool.h:70
HandTool
Definition:
handtool.h:26
PointerEvent
Definition:
pointerevent.h:8
QCursor
QObject
QObject::Q_OBJECT
Q_OBJECTQ_OBJECT
QObject::parent
QObject * parent() const const
QPointF
Qt::KeyboardModifiers
typedef KeyboardModifiers
Qt::MouseButtons
typedef MouseButtons