blob: e3415d3eb47e79d941d26d29b413e3976baf6f49 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
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
|