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 * ====================================================== */
12 /* This is the declaration of the LyX class, there should only
13 * exist _one_ instance of this in the application. */
25 #include <boost/utility.hpp>
34 extern string system_lyxdir;
36 extern string user_lyxdir;
38 extern string system_tempdir;
40 extern LastFiles * lastfiles; /* we should hopefully be able to move this
41 * inside the LyX class */
45 This is the main LyX object it encapsulates most of the other objects.
47 class LyX : boost::noncopyable {
49 /// the only allowed constructor
50 LyX(int * argc, char * argv[]); // constructor
51 /// Always is useful a destructor
55 LyXGUI * lyxGUI; // should be only one of this
57 /// does this user start lyx for the first time?
64 void init(int * argc, char * argv[], bool);
66 void defaultKeyBindings(kb_keymap * kbmap);
68 void deadKeyBindings(kb_keymap * kbmap);
70 void queryUserLyXDir(bool explicit_userdir);
71 /** Search for and read the LyXRC file name, return
74 bool ReadRcFile(string const & name);
75 /// Read the ui file `name'
76 void ReadUIFile(string const & name);
77 /// Read the languages file `name'
78 void ReadLanguagesFile(string const & name);
79 /// Read the encodings file `name'
80 void ReadEncodingsFile(string const & name);
82 bool easyParse(int * argc, char * argv[]);