2 /* This file is part of
3 * ======================================================
5 * LyX, The Document Processor
7 * Copyright 1995 Matthias Ettrich
8 * Copyright 1995-2001 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
54 /// in the case of failure
55 static void emergencyCleanup();
58 LyXGUI * lyxGUI; // should be only one of this
60 /// does this user start lyx for the first time?
69 void defaultKeyBindings(kb_keymap * kbmap);
71 void deadKeyBindings(kb_keymap * kbmap);
73 void queryUserLyXDir(bool explicit_userdir);
74 /** Search for and read the LyXRC file name, return
77 bool readRcFile(string const & name);
78 /// Read the ui file `name'
79 void readUIFile(string const & name);
80 /// Read the languages file `name'
81 void readLanguagesFile(string const & name);
82 /// Read the encodings file `name'
83 void readEncodingsFile(string const & name);
85 bool easyParse(int * argc, char * argv[]);