Spaces:
Running
Running
/* | |
* Copyright (C) 2008, Pino Toscano <[email protected]> | |
* Copyright (C) 2018, Albert Astals Cid <[email protected]> | |
* | |
* This program is free software; you can redistribute it and/or modify | |
* it under the terms of the GNU General Public License as published by | |
* the Free Software Foundation; either version 2, or (at your option) | |
* any later version. | |
* | |
* This program is distributed in the hope that it will be useful, | |
* but WITHOUT ANY WARRANTY; without even the implied warranty of | |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
* GNU General Public License for more details. | |
* | |
* You should have received a copy of the GNU General Public License | |
* along with this program; if not, write to the Free Software | |
* Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. | |
*/ | |
class PdfViewer; | |
namespace Poppler { | |
class Document; | |
} | |
class DocumentObserver | |
{ | |
friend class PdfViewer; | |
public: | |
virtual ~DocumentObserver(); | |
DocumentObserver(const DocumentObserver &) = delete; | |
DocumentObserver &operator=(const DocumentObserver &) = delete; | |
virtual void documentLoaded() = 0; | |
virtual void documentClosed() = 0; | |
virtual void pageChanged(int page) = 0; | |
protected: | |
DocumentObserver(); | |
Poppler::Document *document() const; | |
void setPage(int page); | |
int page() const; | |
void reloadPage(); | |
private: | |
PdfViewer *m_viewer; | |
}; | |