Scribus
Open source desktop publishing at your fingertips
prefs_documentsetup.h
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 
8 #ifndef PREFS_DOCUMENTSETUP_H
9 #define PREFS_DOCUMENTSETUP_H
10 
11 #include "ui_prefs_documentsetupbase.h"
12 #include "prefs_pane.h"
13 #include "scribusapi.h"
14 #include "scribusstructs.h"
15 
16 class ScribusDoc;
17 
18 class SCRIBUS_API Prefs_DocumentSetup : public Prefs_Pane, Ui::Prefs_DocumentSetup
19 {
20  Q_OBJECT
21 
22  public:
23  Prefs_DocumentSetup(QWidget* parent, ScribusDoc* doc=NULL);
24  ~Prefs_DocumentSetup();
25  virtual void restoreDefaults(struct ApplicationPrefs *prefsData);
26  virtual void saveGuiToPrefs(struct ApplicationPrefs *prefsData) const;
27  void getResizeDocumentPages(bool &resizePages, bool &resizeMasterPages, bool &resizePageMargins, bool &resizeMasterPageMargins);
28  void setupPageSizes(struct ApplicationPrefs *prefsData);
29 
30  public slots:
31  void languageChange();
32  void pageLayoutChanged(int);
33 
34  protected slots:
35  void setPageWidth(double);
41  void setPageHeight(double);
47  void setPageOrientation(int);
53  void setSize(const QString & gr);
54  void setPageSize();
55  void slotUndo(bool);
56  void unitChange();
57  void emitSectionChange();
58 
59  protected:
60  void setupPageSets();
61  ScribusDoc* m_doc;
62 
63  double unitRatio;
64  int choosenLayout;
65  double pageW;
66  double pageH;
67  QString prefsPageSizeName;
68  QList<PageSet> pageSets;
69 
70  signals:
71  void changeToOtherSection(const QString&);
72  void prefsChangeUnits(int unit);
73  };
74 
75 #endif // PREFS_DOCUMENTSETUP_H
76 
Definition: prefsstructs.h:453
the Document Class
Definition: scribusdoc.h:90
Definition: prefs_pane.h:14