#ifndef INTERACTIONCANVAS_H #define INTERACTIONCANVAS_H #include #include #include #include #include #include #include "line.h" class InteractionCanvas : public QLabel { public: InteractionCanvas(); ~InteractionCanvas(); // QWidget interface protected: void mouseMoveEvent(QMouseEvent *mouseEvent); void mousePressEvent(QMouseEvent *mouseEvent); void mouseReleaseEvent(QMouseEvent *mouseEvent); void keyPressEvent(QKeyEvent *keyEvent); void keyReleaseEvent(QKeyEvent *keyEvent); private: void changeSelectedLine(Line *newSelectedLine); QList m_Lines; Line *m_NewLine; Line *m_SelectedLine; QPoint m_MousePressPoint; QPoint m_MouseReleasePoint; QPoint m_LastMousePosition; // QWidget interface protected: void paintEvent(QPaintEvent *paintEvent); }; #endif // INTERACTIONCANVAS_H