1 /* 2 For general Scribus (>=1.3.2) copyright and licensing information please refer 3 to the COPYING file provided with the program. Following this notice may exist 4 a copyright and/or license notice that predates the release of Scribus 1.3.2 5 for which a new license (GPL+exception) is in place. 6 */ 7 #ifndef PDF_OPTS_H 8 #define PDF_OPTS_H 9 10 #include <QDialog> 11 #include <QList> 12 class QHBoxLayout; 13 class QGridLayout; 14 class QVBoxLayout; 15 class QGroupBox; 16 class QLineEdit; 17 class QToolButton; 18 class QCheckBox; 19 class QPushButton; 20 21 #include "scribusapi.h" 22 #include "scribusstructs.h" 23 #include "ui/tabpdfoptions.h" 24 class ScribusView; 25 26 /** 27 * @file pdfopts.h 28 * @brief PDF export GUI code 29 */ 30 31 class PDFOptions; 32 class ScribusDoc; 33 34 /** 35 * @brief PDF export dialog 36 * 37 * Most of the guts of the dialog actually come from TabPDFOptions, which 38 * is also used by the preferences dialog. 39 */ 40 class SCRIBUS_API PDFExportDialog : public QDialog 41 { 42 Q_OBJECT 43 44 public: 45 PDFExportDialog( QWidget* parent, const QString & docFileName, 46 const QMap<QString, int > & DocFonts, 47 ScribusView * currView, PDFOptions & pdfOptions, 48 const ProfilesL & PDFXProfiles, const SCFonts & AllFonts, 49 const ProfilesL & printerProfiles); ~PDFExportDialog()50 ~PDFExportDialog() {}; 51 52 void updateDocOptions(); 53 QString getPagesString(); 54 55 protected slots: 56 void DoExport(); 57 void ChangeFile(); 58 void fileNameChanged(); 59 void enableSave(); 60 void disableSave(); 61 62 protected: 63 // Widgets 64 QVBoxLayout* PDFExportLayout; 65 QGridLayout* NameLayout; 66 QHBoxLayout* Layout7; 67 QGroupBox* Name; 68 QCheckBox* multiFile; 69 QCheckBox* openAfterExportCheckBox; 70 QPushButton* changeButton; 71 QPushButton* okButton; 72 QPushButton* cancelButton; 73 QLineEdit* fileNameLineEdit; 74 TabPDFOptions* Options; 75 76 // Other members 77 ScribusDoc* m_doc; 78 QList<PDFPresentationData> m_presEffects; 79 PDFOptions & m_opts; 80 double m_unitRatio; 81 const ProfilesL & m_printerProfiles; 82 }; 83 84 #endif // PDF_OPTS_H 85