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

0001 /*
0002     SPDX-FileCopyrightText: 2006 Albert Astals Cid <aacid@kde.org>
0003 
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #ifndef _EMBEDDEDFILESDIALOG_H_
0008 #define _EMBEDDEDFILESDIALOG_H_
0009 
0010 #include <QDialog>
0011 
0012 class QTreeWidget;
0013 class QPushButton;
0014 class QTemporaryFile;
0015 class QTreeWidgetItem;
0016 
0017 namespace Okular
0018 {
0019 class Document;
0020 class EmbeddedFile;
0021 }
0022 
0023 class EmbeddedFilesDialog : public QDialog
0024 {
0025     Q_OBJECT
0026 public:
0027     EmbeddedFilesDialog(QWidget *parent, const Okular::Document *document);
0028 
0029 private Q_SLOTS:
0030     void saveFileFromButton();
0031     void attachViewContextMenu();
0032     void updateSaveButton();
0033     void viewFileFromButton();
0034     void viewFileItem(QTreeWidgetItem *item, int column);
0035 
0036 private:
0037     void saveFile(Okular::EmbeddedFile *);
0038     void viewFile(Okular::EmbeddedFile *);
0039 
0040     QTreeWidget *m_tw;
0041 
0042     QPushButton *mUser1Button;
0043     QPushButton *mUser2Button;
0044     QList<QSharedPointer<QTemporaryFile>> m_openedFiles;
0045 };
0046 
0047 #endif