]> git.lyx.org Git - features.git/blob - src/frontends/qt2/QPrefsDialog.h
4ad1ad26e6a8a352e62ed191c85aa15edb5b8f16
[features.git] / src / frontends / qt2 / QPrefsDialog.h
1 // -*- C++ -*-
2 /**
3  * \file QPrefsDialog.h
4  * This file is part of LyX, the document processor.
5  * Licence details can be found in the file COPYING.
6  *
7  * \author John Levon
8  *
9  * Full author contact details are available in file CREDITS.
10  */
11
12 #ifndef QPREFSDIALOG_H
13 #define QPREFSDIALOG_H
14
15 #include "ui/QPrefsDialogBase.h"
16
17 #include <vector>
18
19 class LColor_color;
20 class QPrefAsciiModule;
21 class QPrefDateModule;
22 class QPrefKeyboardModule;
23 class QPrefLatexModule;
24 class QPrefScreenFontsModule;
25 class QPrefColorsModule;
26 class QPrefDisplayModule;
27 class QPrefPathsModule;
28 class QPrefSpellcheckerModule;
29 class QPrefConvertersModule;
30 class QPrefCopiersModule;
31 class QPrefFileformatsModule;
32 class QPrefLanguageModule;
33 class QPrefPrinterModule;
34 class QPrefUIModule;
35 class QPrefIdentityModule;
36
37 namespace lyx {
38 namespace frontend {
39
40 class QPrefs;
41
42 class QPrefsDialog : public QPrefsDialogBase {
43         Q_OBJECT
44 public:
45         friend class QPrefs;
46
47         QPrefsDialog(QPrefs *);
48
49         ~QPrefsDialog();
50
51         void updateConverters();
52         void updateConverterButtons();
53         void updateCopiers();
54         void updateFormats();
55
56 public slots:
57         void change_adaptor();
58
59         void switch_format(int);
60         void new_format();
61         void modify_format();
62         void remove_format();
63
64         void switch_converter(int);
65         void converter_changed();
66         void new_converter();
67         void modify_converter();
68         void remove_converter();
69
70         void switch_copierLB(int nr);
71         void switch_copierCO(int nr);
72         void new_copier();
73         void modify_copier();
74         void remove_copier();
75
76         void change_color();
77
78         void select_ui();
79         void select_bind();
80         void select_keymap1();
81         void select_keymap2();
82         void select_dict();
83         void select_templatedir();
84         void select_tempdir();
85         void select_backupdir();
86         void select_workingdir();
87         void select_lyxpipe();
88
89         void select_roman(const QString&);
90         void select_sans(const QString&);
91         void select_typewriter(const QString&);
92
93 protected:
94         void closeEvent(QCloseEvent * e);
95
96 private:
97
98         std::vector<LColor_color> colors_;
99
100         QPrefAsciiModule * asciiModule;
101         QPrefDateModule * dateModule;
102         QPrefKeyboardModule * keyboardModule;
103         QPrefLatexModule * latexModule;
104         QPrefScreenFontsModule * screenfontsModule;
105         QPrefColorsModule * colorsModule;
106         QPrefDisplayModule * displayModule;
107         QPrefPathsModule * pathsModule;
108         QPrefSpellcheckerModule * spellcheckerModule;
109         QPrefConvertersModule * convertersModule;
110         QPrefCopiersModule * copiersModule;
111         QPrefFileformatsModule * fileformatsModule;
112         QPrefLanguageModule * languageModule;
113         QPrefPrinterModule * printerModule;
114         QPrefUIModule * uiModule;
115         QPrefIdentityModule * identityModule;
116
117         QPrefs * form_;
118 };
119
120 } // namespace frontend
121 } // namespace lyx
122
123 #endif // PREFSDIALOG_H