1
// vim: set tabstop=4 shiftwidth=4 expandtab:
3
Gwenview: an image viewer
4
Copyright 2007 Aurélien Gâteau <agateau@kde.org>
6
This program is free software; you can redistribute it and/or
7
modify it under the terms of the GNU General Public License
8
as published by the Free Software Foundation; either version 2
9
of the License, or (at your option) any later version.
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.
16
You should have received a copy of the GNU General Public License
17
along with this program; if not, write to the Free Software
18
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
21
#ifndef ABSTRACTRASTERIMAGEVIEWTOOL_H
22
#define ABSTRACTRASTERIMAGEVIEWTOOL_H
24
#include <lib/gwenviewlib_export.h>
34
class QGraphicsSceneHoverEvent;
35
class QGraphicsSceneMouseEvent;
36
class QGraphicsSceneWheelEvent;
42
class RasterImageView;
44
struct AbstractRasterImageViewToolPrivate;
45
class GWENVIEWLIB_EXPORT AbstractRasterImageViewTool : public QObject
48
AbstractRasterImageViewTool(RasterImageView* view);
49
virtual ~AbstractRasterImageViewTool();
51
RasterImageView* imageView() const;
53
virtual void paint(QPainter*) {}
55
virtual void mousePressEvent(QGraphicsSceneMouseEvent*) {}
56
virtual void mouseMoveEvent(QGraphicsSceneMouseEvent*) {}
57
virtual void mouseReleaseEvent(QGraphicsSceneMouseEvent*) {}
58
virtual void hoverMoveEvent(QGraphicsSceneHoverEvent*) {}
59
virtual void wheelEvent(QGraphicsSceneWheelEvent*) {}
60
virtual void keyPressEvent(QKeyEvent*) {}
61
virtual void keyReleaseEvent(QKeyEvent*) {}
63
virtual void toolActivated() {}
64
virtual void toolDeactivated() {}
66
virtual QWidget* widget() const {
71
AbstractRasterImageViewToolPrivate * const d;
76
#endif /* ABSTRACTRASTERIMAGEVIEWTOOL_H */