Ian Jauslin
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'src/pdfWindow.h')
-rw-r--r--src/pdfWindow.h68
1 files changed, 68 insertions, 0 deletions
diff --git a/src/pdfWindow.h b/src/pdfWindow.h
new file mode 100644
index 0000000..e3415d3
--- /dev/null
+++ b/src/pdfWindow.h
@@ -0,0 +1,68 @@
+/*
+Copyright 2015 Ian Jauslin
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+*/
+
+#ifndef PDFWINDOW_H
+#define PDFWINDOW_H
+
+#include <QMainWindow>
+#include <poppler/qt4/poppler-qt4.h>
+#include <iostream>
+#include <QGraphicsScene>
+#include <QGraphicsView>
+#include <QBoxLayout>
+
+
+class pdfWindow : public QMainWindow
+{
+ Q_OBJECT
+
+public:
+ // PDF document path
+ char* doc;
+ // current page
+ int curpage;
+ int totalpages;
+ // is fullscreen ?
+ bool fullscreen;
+ // offset for pdfView
+ int verticalOffset;
+
+ // constructor
+ explicit pdfWindow(QWidget *parent = 0);
+ void setDoc(char* file);
+ void gotoPage(int page);
+ void nextPage();
+ void previousPage();
+ // toggle fullscreen
+ void fullscreenPDF();
+ // destructor
+ ~pdfWindow();
+
+
+protected:
+ // document
+ Poppler::Document* document;
+ // to draw the view
+ QGraphicsScene* pdfViewScene;
+ QGraphicsView* pdfView;
+
+ // display PDF
+ void updatePDF();
+ // respond to window resize
+ void resizeEvent(QResizeEvent* event);
+};
+
+#endif // PDFWINDOW_H