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 "support/utility.hpp"
33 extern string system_lyxdir;
34 extern string user_lyxdir;
35 extern string system_tempdir;
37 extern LastFiles * lastfiles; /* we should hopefully be able to move this
38 * inside the LyX class */
42 This is the main LyX object it encapsulates most of the other objects.
44 class LyX : public noncopyable {
46 /**@name Constructors and Deconstructors */
48 /// the only allowed constructor
49 LyX(int * argc, char * argv[]); // constructor
50 // Always is useful a destructor
54 /**@name Pointers to... */
57 LyXGUI * lyxGUI; // should be only one of this
60 /**@name Private variables */
62 /// does this user start lyx for the first time?
67 /**@name Private Members */
72 void init(int * argc, char * argv[], bool);
74 void defaultKeyBindings(kb_keymap * kbmap);
76 void deadKeyBindings(kb_keymap * kbmap);
78 void queryUserLyXDir(bool explicit_userdir);
79 /** Search for and read the LyXRC file name, return
82 bool ReadRcFile(string const & name);
83 /// Read the ui file `name'
84 void ReadUIFile(string const & name);
86 bool easyParse(int * argc, char * argv[]);