2 /* This file is part of
3 * ======================================================
5 * LyX, The Document Processor
7 * Copyright 1995 Matthias Ettrich
8 * Copyright 1995-2000 The LyX Team.
10 * This file copyright 1999-2000
12 *======================================================*/
14 * FormPreferences Interface Class
17 #ifndef FORMPREFERENCES_H
18 #define FORMPREFERENCES_H
29 struct FD_form_preferences;
30 struct FD_form_lnf_general;
31 struct FD_form_screen_fonts;
32 struct FD_form_interface;
33 struct FD_form_printer;
35 struct FD_form_outer_tab;
36 struct FD_form_outputs_general;
37 struct FD_form_spellchecker;
39 /** This class provides an XForms implementation of the FormPreferences Dialog.
40 The preferences dialog allows users to set/save their preferences.
42 class FormPreferences : public FormBaseBI {
44 /// #FormPreferences x(LyXFunc ..., Dialogs ...);#
45 FormPreferences(LyXView *, Dialogs *);
49 /// Update the dialog.
50 virtual void update();
57 /// Restore from dialog
58 virtual void restore();
59 /// Filter the inputs -- return true if entries are valid
60 virtual bool input(FL_OBJECT *, long);
64 virtual FL_FORM * form() const;
66 void applySpellChecker();
68 void updateSpellChecker();
70 bool inputSpellChecker();
72 FD_form_preferences * build_preferences();
74 FD_form_outer_tab * build_outer_tab();
76 FD_form_lnf_general * build_lnf_general();
78 FD_form_screen_fonts * build_screen_fonts();
80 FD_form_interface * build_interface();
82 FD_form_printer * build_printer();
84 FD_form_paths * build_paths();
86 FD_form_outputs_general * build_outputs_general();
88 FD_form_spellchecker * build_spellchecker();
90 /// Real GUI implementation.
91 FD_form_preferences * dialog_;
93 FD_form_outer_tab * outputs_tab_;
95 FD_form_outer_tab * look_n_feel_tab_;
96 /// reLyX and other import/input stuff
97 FD_form_outer_tab * inputs_tab_;
99 FD_form_spellchecker * spellchecker_tab_;
101 FD_form_lnf_general * lnf_general_;
103 FD_form_screen_fonts * screen_fonts_;
105 FD_form_interface * interface_;
107 FD_form_printer * printer_;
109 FD_form_paths * paths_;
111 FD_form_outputs_general * outputs_general_;