4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
9 * Full author contact details are available in file CREDITS.
15 #include "QDialogView.h"
16 #include "BulletsModule.h"
18 #include "ui/DocumentUi.h"
19 #include "ui/FontUi.h"
20 #include "ui/TextLayoutUi.h"
21 #include "ui/MathsUi.h"
22 #include "ui/LaTeXUi.h"
23 #include "ui/PageLayoutUi.h"
24 #include "ui/LanguageUi.h"
25 #include "ui/BiblioUi.h"
26 #include "ui/NumberingUi.h"
27 #include "ui/MarginsUi.h"
28 #include "ui/PreambleUi.h"
30 #include <QCloseEvent>
38 class UiWidget: public QWidget, public UI
41 UiWidget(QWidget * parent = 0) : QWidget(parent)
53 class QDocumentDialog : public QDialog, public Ui::QDocumentUi {
56 friend class QDocument;
58 QDocumentDialog(QDocument *);
60 void updateParams(BufferParams const & params);
61 void apply(BufferParams & params);
63 void updateFontsize(std::string const &, std::string const &);
64 void updatePagestyle(std::string const &, std::string const &);
69 void updateNumbering();
70 void change_adaptor();
71 void saveDefaultClicked();
72 void useDefaultsClicked();
75 void setLSpacing(int);
76 void setMargins(bool);
77 void setCustomPapersize(int);
78 void setCustomMargins(bool);
79 void romanChanged(int);
80 void sansChanged(int);
83 void enableSkip(bool);
84 void portraitChanged();
88 void closeEvent(QCloseEvent * e);
92 UiWidget<Ui::TextLayoutUi> *textLayoutModule;
93 UiWidget<Ui::FontUi> *fontModule;
94 UiWidget<Ui::PageLayoutUi> *pageLayoutModule;
95 UiWidget<Ui::MarginsUi> *marginsModule;
96 UiWidget<Ui::LanguageUi> *langModule;
97 UiWidget<Ui::NumberingUi> *numberingModule;
98 UiWidget<Ui::BiblioUi> *biblioModule;
99 UiWidget<Ui::MathsUi> *mathsModule;
100 UiWidget<Ui::LaTeXUi> *latexModule;
101 UiWidget<Ui::PreambleUi> *preambleModule;
103 QBranches *branchesModule;
105 BulletsModule * bulletsModule;
106 FloatPlacement * floatModule;
111 std::vector<std::string> lang_;
116 class ControlDocument;
119 : public QController<ControlDocument, QView<QDocumentDialog> >
123 friend class QDocumentDialog;
133 void update_contents();
136 /// save as default template
137 void saveDocDefault();
138 /// reset to default params
139 void useClassDefaults();
142 } // namespace frontend
145 #endif // QDOCUMENT_H