Geometrize  1.0
An application for geometrizing images into geometric primitives
imagetaskgraphicsview.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <memory>
4 
5 #include <QGraphicsView>
6 #include <QObject>
7 
8 class QEvent;
9 class QKeyEvent;
10 class QWheelEvent;
11 
12 namespace geometrize
13 {
14 
15 namespace scene
16 {
17 
21 class ImageTaskGraphicsView : public QGraphicsView
22 {
23  Q_OBJECT
24 
25 public:
26  explicit ImageTaskGraphicsView(QWidget* parent = nullptr);
27  virtual ~ImageTaskGraphicsView();
28 
29 protected:
30  void changeEvent(QEvent*) override;
31 
32 private:
33  void populateUi();
34 
35  bool viewportEvent(QEvent* event) override;
36  void wheelEvent(QWheelEvent* event) override;
37  void mousePressEvent(QMouseEvent* event) override;
38  void mouseReleaseEvent(QMouseEvent* event) override;
39  void mouseMoveEvent(QMouseEvent* event) override;
40  void keyPressEvent(QKeyEvent* event) override;
41  void keyReleaseEvent(QKeyEvent* event) override;
42 
44  std::unique_ptr<ImageTaskGraphicsViewImpl> d;
45 };
46 
47 }
48 
49 }
geometrize::scene::ImageTaskGraphicsView::ImageTaskGraphicsView
ImageTaskGraphicsView(QWidget *parent=nullptr)
Definition: imagetaskgraphicsview.cpp:113
geometrize::scene::ImageTaskGraphicsView::populateUi
void populateUi()
Definition: imagetaskgraphicsview.cpp:261
geometrize::scene::ImageTaskGraphicsView::ImageTaskGraphicsViewImpl::operator=
ImageTaskGraphicsViewImpl operator=(const ImageTaskGraphicsViewImpl &)=delete
geometrize::scene::TabletEventPointerType
TabletEventPointerType
The TabletEventPointerType enum represents the type of pointer generating the tablet event.
Definition: customtabletevent.h:38
geometrize::scene::TabletEventData
The TabletEventData class represents data produced from a Wacom pen/tablet event (in the context of a...
Definition: customtabletevent.h:56
geometrize::scene::TabletEventData::yViewPos
float yViewPos
Definition: customtabletevent.h:66
geometrize::scene::TabletEventData::tangentialPressure
float tangentialPressure
Definition: customtabletevent.h:70
geometrize::scene::ImageTaskGraphicsView::keyReleaseEvent
void keyReleaseEvent(QKeyEvent *event) override
Definition: imagetaskgraphicsview.cpp:248
geometrize::scene::TabletEventData::yScenePos
float yScenePos
Definition: customtabletevent.h:68
geometrize::scene::TabletEventData::yTilt
float yTilt
Definition: customtabletevent.h:73
geometrize::scene::ImageTaskGraphicsView::changeEvent
void changeEvent(QEvent *) override
Definition: imagetaskgraphicsview.cpp:253
geometrize::scene::TabletEventData::xTilt
float xTilt
Definition: customtabletevent.h:72
geometrize::scene::TabletEventType
TabletEventType
The TabletEventType enum represents the ids of tablet events the Wacom pen/tablet generates.
Definition: customtabletevent.h:18
geometrize::scene::ImageTaskGraphicsView::d
std::unique_ptr< ImageTaskGraphicsViewImpl > d
Definition: imagetaskgraphicsview.h:43
geometrize::scene::ImageTaskGraphicsView::viewportEvent
bool viewportEvent(QEvent *event) override
Definition: imagetaskgraphicsview.cpp:131
geometrize::scene::ImageTaskGraphicsView::ImageTaskGraphicsViewImpl
Definition: imagetaskgraphicsview.cpp:99
geometrize::scene::CustomTabletEvent
The CustomTabletEvent class represents a tablet event (specifically from a Wacom Pro pen) that can be...
Definition: customtabletevent.h:88
geometrize::scene::TabletEventData::xViewPos
float xViewPos
Definition: customtabletevent.h:65
geometrize::scene::ImageTaskGraphicsView::ImageTaskGraphicsViewImpl::ImageTaskGraphicsViewImpl
ImageTaskGraphicsViewImpl(const ImageTaskGraphicsViewImpl &)=delete
geometrize::scene::ImageTaskGraphicsView::ImageTaskGraphicsViewImpl::q
ImageTaskGraphicsView * q
Definition: imagetaskgraphicsview.cpp:108
geometrize::scene::ImageTaskGraphicsView
The ImageTaskGraphicsView class models a graphics view for viewing the images and shapes used and/or ...
Definition: imagetaskgraphicsview.h:22
geometrize
Definition: commandlineparser.cpp:73
geometrize::scene::TabletEventPointerType::UnknownPointer
@ UnknownPointer
geometrize::scene::ImageTaskGraphicsView::mouseReleaseEvent
void mouseReleaseEvent(QMouseEvent *event) override
Definition: imagetaskgraphicsview.cpp:233
geometrize::scene::TabletEventType::Move
@ Move
geometrize::scene::ImageTaskGraphicsView::mousePressEvent
void mousePressEvent(QMouseEvent *event) override
Definition: imagetaskgraphicsview.cpp:228
geometrize::scene::ImageTaskGraphicsView::wheelEvent
void wheelEvent(QWheelEvent *event) override
Definition: imagetaskgraphicsview.cpp:182
geometrize::scene::ImageTaskGraphicsView::ImageTaskGraphicsViewImpl::m_totalScaleFactor
float m_totalScaleFactor
Definition: imagetaskgraphicsview.cpp:110
imagetaskgraphicsview.h
geometrize::scene::ImageTaskGraphicsView::keyPressEvent
void keyPressEvent(QKeyEvent *event) override
Definition: imagetaskgraphicsview.cpp:243
geometrize::scene::ImageTaskScene
The ImageTaskScene class models a graphics scene for viewing the results of image tasks.
Definition: imagetaskscene.h:25
customtabletevent.h
geometrize::scene::TabletEventData::pointerType
TabletEventPointerType pointerType
Definition: customtabletevent.h:64
geometrize::scene::ImageTaskGraphicsView::mouseMoveEvent
void mouseMoveEvent(QMouseEvent *event) override
Definition: imagetaskgraphicsview.cpp:238
geometrize::scene::TabletEventData::pressure
float pressure
Definition: customtabletevent.h:69
geometrize::scene::ImageTaskGraphicsView::ImageTaskGraphicsViewImpl::~ImageTaskGraphicsViewImpl
~ImageTaskGraphicsViewImpl()=default
geometrize::scene::TabletEventData::xScenePos
float xScenePos
Definition: customtabletevent.h:67
geometrize::scene::TabletEventData::eventType
TabletEventType eventType
Definition: customtabletevent.h:63
imagetaskscene.h
geometrize::scene::ImageTaskGraphicsView::ImageTaskGraphicsViewImpl::ImageTaskGraphicsViewImpl
ImageTaskGraphicsViewImpl(ImageTaskGraphicsView *pQ)
Definition: imagetaskgraphicsview.cpp:101
geometrize::scene::ImageTaskGraphicsView::~ImageTaskGraphicsView
virtual ~ImageTaskGraphicsView()
Definition: imagetaskgraphicsview.cpp:127