diff options
-rw-r--r-- | pictureviewer2.cpp | 10 | ||||
-rw-r--r-- | pictureviewer2.h | 12 |
2 files changed, 19 insertions, 3 deletions
diff --git a/pictureviewer2.cpp b/pictureviewer2.cpp index 6568128..f57cab6 100644 --- a/pictureviewer2.cpp +++ b/pictureviewer2.cpp @@ -17,6 +17,7 @@ #include <QDateTime> #include <QPainter> #include <QStyleOptionGraphicsItem> +#include <QGraphicsSceneMouseEvent> #include <QSettings> #include <QTextDocument> #include <QTextCursor> @@ -68,7 +69,7 @@ PictureViewer2::PictureViewer2(QWidget *parent) : QGraphicsView(parent), mCur(0) mNewPicsDlg = new NewPicsDialog(this); //setup gui - mScene = new QGraphicsScene(this); + mScene = new PictureViewerGraphicsScene(this); setScene(mScene); readSettings(); setMinimumSize(QSize(800, 600)); @@ -743,3 +744,10 @@ void PictureViewer2Item::paint(QPainter *painter, const QStyleOptionGraphicsItem painter->restore(); } +void PictureViewerGraphicsScene::mousePressEvent(QGraphicsSceneMouseEvent *e){ + QGraphicsScene::mousePressEvent(e); + QGraphicsItem *item = itemAt(e->scenePos(), QTransform()); + if(item){ + //do something! + } +} diff --git a/pictureviewer2.h b/pictureviewer2.h index c9a1f2a..5b78982 100644 --- a/pictureviewer2.h +++ b/pictureviewer2.h @@ -14,7 +14,7 @@ #include <QGraphicsItem> #include <QStaticText> -class QGraphicsScene; +class PictureViewerGraphicsScene; class QGraphicsPixmapItem; class QWheelEvent; class QContextMenuEvent; @@ -95,7 +95,7 @@ class PictureViewer2 : public QGraphicsView { QString constructWindowTitle() const; PicDataList mFiles; PicDataList mMarkedFiles; - QGraphicsScene *mScene; + PictureViewerGraphicsScene *mScene; QGraphicsPixmapItem *mCur; int mCurPos; int mConfigInfoPos; @@ -143,4 +143,12 @@ class PictureViewer2Item : public QGraphicsItem { QTextDocument *mDoc; }; +class PictureViewerGraphicsScene : public QGraphicsScene { + public: + explicit PictureViewerGraphicsScene(QObject *parent = 0) : QGraphicsScene(parent) {} + + protected: + virtual void mousePressEvent(QGraphicsSceneMouseEvent *e); +}; + #endif // PICTUREVIEWER2_H |