File indexing completed on 2024-04-28 15:51:45

0001 /*
0002     SPDX-FileCopyrightText: 2015 Saheb Preet Singh <saheb.preet@gmail.com>
0003 
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #ifndef _OKULAR_LAYERS_H_
0008 #define _OKULAR_LAYERS_H_
0009 
0010 #include "core/observer.h"
0011 #include <qwidget.h>
0012 
0013 #include "okularpart_export.h"
0014 
0015 class PageView;
0016 class QTreeView;
0017 class KTreeViewSearchLine;
0018 
0019 namespace Okular
0020 {
0021 class Document;
0022 class PartTest;
0023 }
0024 
0025 class OKULARPART_EXPORT Layers : public QWidget, public Okular::DocumentObserver
0026 {
0027     Q_OBJECT
0028     friend class Okular::PartTest;
0029 
0030 public:
0031     Layers(QWidget *parent, Okular::Document *document);
0032     ~Layers() override;
0033 
0034     // inherited from DocumentObserver
0035     void notifySetup(const QVector<Okular::Page *> &pages, int setupFlags) override;
0036 
0037     void setPageView(PageView *pageView);
0038 
0039 Q_SIGNALS:
0040     void hasLayers(bool has);
0041 
0042 private Q_SLOTS:
0043     void saveSearchOptions();
0044 
0045 private:
0046     Okular::Document *m_document;
0047     QTreeView *m_treeView;
0048     KTreeViewSearchLine *m_searchLine;
0049     PageView *m_pageView;
0050 };
0051 
0052 #endif