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_fonts;
33 struct FD_form_printer;
35 struct FD_form_outer_tab;
37 /** This class provides an XForms implementation of the FormPreferences Dialog.
38 The preferences dialog allows users to set/save their preferences.
40 class FormPreferences : public FormBase {
42 /// #FormPreferences x(LyXFunc ..., Dialogs ...);#
43 FormPreferences(LyXView *, Dialogs *);
48 virtual void connect();
49 /// Update the dialog.
50 virtual void update();
55 /// Restore from dialog
56 virtual void restore();
57 /// Filter the inputs -- return true if entries are valid
58 virtual bool input(long);
62 virtual FL_FORM * form() const;
64 FD_form_preferences * build_preferences();
66 FD_form_outer_tab * build_outer_tab();
68 FD_form_lnf_general * build_lnf_general();
70 FD_form_screen_fonts * build_screen_fonts();
72 FD_form_interface_fonts * build_interface_fonts();
74 FD_form_printer * build_printer();
76 FD_form_paths * build_paths();
78 /// Real GUI implementation.
79 FD_form_preferences * dialog_;
81 FD_form_outer_tab * outputs_tab_;
83 FD_form_outer_tab * look_n_feel_tab_;
84 /// reLyX and other import/input stuff
85 FD_form_outer_tab * inputs_tab_;
87 FD_form_lnf_general * lnf_general_;
89 FD_form_screen_fonts * screen_fonts_;
91 FD_form_interface_fonts * interface_fonts_;
93 FD_form_printer * printer_;
95 FD_form_paths * paths_;
96 /// Overcome a dumb xforms sizing bug