summaryrefslogtreecommitdiff
path: root/tagview.h
diff options
context:
space:
mode:
Diffstat (limited to 'tagview.h')
-rw-r--r--tagview.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/tagview.h b/tagview.h
new file mode 100644
index 0000000..eedd019
--- /dev/null
+++ b/tagview.h
@@ -0,0 +1,38 @@
+#ifndef TAGVIEW_H
+#define TAGVIEW_H
+
+#include "sqlitebackend.h"
+#include "tagscene.h"
+
+#include <QGraphicsView>
+#include <QTimer>
+
+
+class TagView : public QGraphicsView
+{
+public:
+ TagView(SQLiteSaveFile &proj);
+
+public slots:
+ void zoomToFit();
+ void setZoom(qreal zoom);
+ void zoomIn(qreal delta);
+ void rotate(int angle);
+
+protected:
+ void wheelEvent(QWheelEvent *evt) override;
+
+private slots:
+ void saveCenter();
+
+private:
+ void restoreViewport();
+
+ TagScene scene;
+ SQLiteSaveFile &proj;
+ QTimer saveCenterTimer;
+ int rotation;
+ double zoom;
+};
+
+#endif // TAGVIEW_H