]> git.lyx.org Git - lyx.git/blob - src/lyx_gui.h
Fix small bug in reading \set_color in lyxrc
[lyx.git] / src / lyx_gui.h
1 // -*- C++ -*-
2 /* This file is part of
3  * ======================================================
4  * 
5  *           LyX, The Document Processor
6  *       
7  *           Copyright 1995 Matthias Ettrich
8  *           Copyright 1995-2000 The LyX Team.
9  *
10  * ====================================================== */
11
12 #ifndef LYX_GUI_H
13 #define LYX_GUI_H
14
15 #ifdef __GNUG__
16 #pragma interface
17 #endif
18
19 class LyXView;
20 class LyX;
21 class Buffer;
22
23 /**
24   This class is going to be the entry point to {\em all} GUI funcionality.
25   From this object will all the things going on be initiated. However I
26   have not clearly figured out how this class is going to be, suggestions
27   are welcome. (Lgb)
28   */
29 class LyXGUI {
30 public:
31         /**@name Constructor */
32         //@{
33         
34         /** The only constructor allowed
35
36           If gui is false, LyX will operate in non-X mode
37           */
38         LyXGUI(LyX *owner, int *argc, char *argv[], bool gui);
39         ///
40         ~LyXGUI();
41         //@}
42         
43         /**@name Members */
44         //@{
45         /**
46           This functions starts the ball. For XForms it runs a loop of
47           fl_check_forms(). For QT this will probably be .exec().
48           */
49         void runTime();
50         /** This will take care of the initializaton done after the
51           main initialization.
52           */
53         void init();
54
55         /// Register the buffer with the first found LyXView in lyxViews
56         void regBuf(Buffer*);
57
58         /// Access to (first?) LyXView
59         LyXView * getLyXView() const;
60         
61         //@}
62 private:
63         /**@name Construcor */
64         //@{
65         /// not allowed
66         LyXGUI(); // don't allow this
67         /// not allowed
68         LyXGUI(const LyXGUI&); // nor this
69         //@}
70         
71         /**@name Members */
72         //@{
73         ///
74         void setDefaults();
75         ///
76         void create_forms();
77         //@}
78
79         /**@name Variables */
80         //@{
81         /// The LyX that owns this GUI.
82         LyX *_owner;
83         ///
84         LyXView *lyxViews; // or something so that several views
85         // on the same time can be allowed.
86         /// Do we have a gui?
87         bool gui;
88         //@}
89 };
90
91 #endif