BALL 1.5.0
interactionMode.h
Go to the documentation of this file.
1#ifndef BALL_VIEW_KERNEL_MODES_INTERACTIONMODE_H
2#define BALL_VIEW_KERNEL_MODES_INTERACTIONMODE_H
3
5
6#include <QtCore/QPoint>
7#include <QtCore/QSize>
8#include <QtCore/QObject>
9
10class QAction;
11class QKeyEvent;
12class QMouseEvent;
13class QWheelEvent;
14class QToolBar;
15class QMenu;
16
17namespace BALL
18{
19 namespace VIEW
20 {
21 class Scene;
22 class MainControl;
23
25 {
26 Q_OBJECT
27
28 public:
30
32 virtual void keyPressEvent(QKeyEvent* evt);
33 virtual void keyReleaseEvent(QKeyEvent* evt);
34
39
40 virtual void wheelEvent(QWheelEvent* evt);
41
42 virtual void addToolBarEntries(QToolBar* tb);
43 virtual void populateContextMenu(QMenu*) {};
44
45 virtual Qt::Key getKey() const = 0;
46 virtual QString getName() const = 0;
47
48 virtual void deactivate();
49 virtual void activate();
50
51 void setMouseSensitivity(float sens);
52 void setMouseWheelSensitivity(float sens);
53
54 QAction* getMainAction();
55
56 bool isCurrent() const { return is_current_; }
57 void setCurrent(bool current) { is_current_ = current; }
58
59 Q_SIGNALS:
61 protected Q_SLOTS:
63
64 protected:
71 QAction* main_action_;
73
74 virtual void mouseMoveEventImpl_ (QMouseEvent* evt);
75 virtual void mousePressEventImpl_ (QMouseEvent* evt);
77
78 float getXDiff_() const;
79 float getYDiff_() const;
81 };
82
83 }
84}
85
86#endif //BALL_VIEW_KERNEL_MODES_INTERACTIONMODE_H
Definition: constants.h:13
virtual void mouseReleaseEventImpl_(QMouseEvent *evt)
virtual void mouseMoveEventImpl_(QMouseEvent *evt)
virtual void wheelEvent(QWheelEvent *evt)
virtual Qt::Key getKey() const =0
void mousePressEvent(QMouseEvent *evt)
virtual void mousePressEventImpl_(QMouseEvent *evt)
void setCurrent(bool current)
void requestModeChange(InteractionMode *mode)
void setMouseWheelSensitivity(float sens)
void setMouseSensitivity(float sens)
virtual QString getName() const =0
void mouseReleaseEvent(QMouseEvent *evt)
void mouseMoveEvent(QMouseEvent *evt)
virtual void keyReleaseEvent(QKeyEvent *evt)
virtual void populateContextMenu(QMenu *)
virtual void keyPressEvent(QKeyEvent *evt)
virtual void addToolBarEntries(QToolBar *tb)
virtual void mouseDoubleClickEvent(QMouseEvent *evt)
#define BALL_VIEW_EXPORT
Definition: COMMON/global.h:52