4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
8 * \author Abdelrazak Younes
10 * Full author contact details are available in file CREDITS.
13 #ifndef QPREFSDIALOG_H
14 #define QPREFSDIALOG_H
19 #include "ui/QPrefsUi.h"
24 #include <QCloseEvent>
26 #include "ui/QPrefAsciiUi.h"
27 #include "ui/QPrefDateUi.h"
28 #include "ui/QPrefKeyboardUi.h"
29 #include "ui/QPrefLatexUi.h"
30 #include "ui/QPrefScreenFontsUi.h"
31 #include "ui/QPrefColorsUi.h"
32 #if defined(__CYGWIN__) || defined(__CYGWIN32__)
33 #include "ui/QPrefCygwinPathUi.h"
35 #include "ui/QPrefDisplayUi.h"
36 #include "ui/QPrefPathsUi.h"
37 #include "ui/QPrefSpellcheckerUi.h"
38 #include "ui/QPrefConvertersUi.h"
39 #include "ui/QPrefCopiersUi.h"
40 #include "ui/QPrefFileformatsUi.h"
41 #include "ui/QPrefLanguageUi.h"
42 #include "ui/QPrefPrinterUi.h"
43 #include "ui/QPrefUi.h"
44 #include "ui/QPrefIdentityUi.h"
47 class UiWidget: public QWidget, public UI
50 UiWidget(QWidget * Parent = 0): QWidget(Parent)
62 class QPrefsDialog : public QDialog, public Ui::QPrefsUi {
65 QPrefsDialog(QPrefs *);
69 void apply(LyXRC & rc) const;
70 void update(LyXRC const & rc);
73 void updateConverters();
74 void updateConverterButtons();
76 void updateCopierButtons();
78 void updateFormatsButtons();
81 void change_adaptor();
83 void switch_format(int);
84 void fileformat_changed();
89 void switch_converter(int);
90 void converter_changed();
92 void modify_converter();
93 void remove_converter();
95 void switch_copierLB(int nr);
96 void switch_copierCO(int nr);
97 void copiers_changed();
100 void remove_copier();
106 void select_keymap1();
107 void select_keymap2();
109 void select_templatedir();
110 void select_tempdir();
111 void select_backupdir();
112 void select_workingdir();
113 void select_lyxpipe();
115 void select_roman(const QString&);
116 void select_sans(const QString&);
117 void select_typewriter(const QString&);
120 void closeEvent(QCloseEvent * e);
125 std::vector<std::string> lang_;
127 std::vector<LColor_color> colors_;
129 UiWidget<Ui::QPrefAsciiUi> * asciiModule;
130 UiWidget<Ui::QPrefDateUi> * dateModule;
131 UiWidget<Ui::QPrefKeyboardUi> * keyboardModule;
132 UiWidget<Ui::QPrefLatexUi> * latexModule;
133 UiWidget<Ui::QPrefScreenFontsUi> * screenfontsModule;
134 UiWidget<Ui::QPrefColorsUi> * colorsModule;
135 #if defined(__CYGWIN__) || defined(__CYGWIN32__)
136 UiWidget<Ui::QPrefCygwinPathUi> * cygwinpathModule;
138 UiWidget<Ui::QPrefDisplayUi> * displayModule;
139 UiWidget<Ui::QPrefPathsUi> * pathsModule;
140 UiWidget<Ui::QPrefSpellcheckerUi> * spellcheckerModule;
141 UiWidget<Ui::QPrefConvertersUi> * convertersModule;
142 UiWidget<Ui::QPrefCopiersUi> * copiersModule;
143 UiWidget<Ui::QPrefFileformatsUi> * fileformatsModule;
144 UiWidget<Ui::QPrefLanguageUi> * languageModule;
145 UiWidget<Ui::QPrefPrinterUi> * printerModule;
146 UiWidget<Ui::QPrefUi> * uiModule;
147 UiWidget<Ui::QPrefIdentityUi> * identityModule;
152 } // namespace frontend
155 #endif // PREFSDIALOG_H