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;
38 /** This class provides an XForms implementation of the FormPreferences Dialog.
39 The preferences dialog allows users to set/save their preferences.
41 class FormPreferences : public FormBaseBI {
43 /// #FormPreferences x(LyXFunc ..., Dialogs ...);#
44 FormPreferences(LyXView *, Dialogs *);
49 virtual void connect();
50 /// Update the dialog.
51 virtual void update(bool = false);
58 /// Restore from dialog
59 virtual void restore();
60 /// Filter the inputs -- return true if entries are valid
61 virtual bool input(FL_OBJECT *, long);
65 virtual FL_FORM * form() const;
67 FD_form_preferences * build_preferences();
69 FD_form_outer_tab * build_outer_tab();
71 FD_form_lnf_general * build_lnf_general();
73 FD_form_screen_fonts * build_screen_fonts();
75 FD_form_interface * build_interface();
77 FD_form_printer * build_printer();
79 FD_form_paths * build_paths();
81 FD_form_outputs_general * build_outputs_general();
83 /// Real GUI implementation.
84 FD_form_preferences * dialog_;
86 FD_form_outer_tab * outputs_tab_;
88 FD_form_outer_tab * look_n_feel_tab_;
89 /// reLyX and other import/input stuff
90 FD_form_outer_tab * inputs_tab_;
92 FD_form_lnf_general * lnf_general_;
94 FD_form_screen_fonts * screen_fonts_;
96 FD_form_interface * interface_;
98 FD_form_printer * printer_;
100 FD_form_paths * paths_;
102 FD_form_outputs_general * outputs_general_;
103 /// Overcome a dumb xforms sizing bug