]> git.lyx.org Git - lyx.git/blob - src/frontends/controllers/Kernel.C
Port the tabular dialog to the new scheme based on class Dialog.
[lyx.git] / src / frontends / controllers / Kernel.C
1 #include "Kernel.h"
2
3 #include "buffer.h"
4 #include "BufferView.h"
5 #include "funcrequest.h"
6 #include "lyxfunc.h"
7 #include "frontends/Dialogs.h"
8 #include "frontends/LyXView.h"
9
10 Kernel::Kernel(LyXView & lyxview)
11         : lyxview_(lyxview)
12 {}
13
14
15 void Kernel::dispatch(FuncRequest const & fr, bool verbose) const
16 {
17         lyxview_.getLyXFunc().dispatch(fr, verbose);
18 }
19
20
21 void Kernel::updateDialog(string const & name) const
22 {
23         dispatch(FuncRequest(LFUN_DIALOG_UPDATE, name));
24 }
25
26
27 void Kernel::disconnect(string const & name) const
28 {
29         lyxview_.getDialogs().disconnect(name);
30 }
31
32 bool Kernel::isBufferAvailable() const
33 {
34         if (!lyxview_.view().get())
35                 return false;
36         return lyxview_.view()->available();
37 }
38
39
40 bool Kernel::isBufferReadonly() const
41 {
42         if (!lyxview_.buffer())
43                 return true;
44         return lyxview_.buffer()->isReadonly();
45 }
46
47
48 Kernel::DocTypes Kernel::docType() const
49 {
50         if (!buffer())
51                 return LATEX;
52
53         if (buffer()->isLatex())
54                 return LATEX;
55         if (buffer()->isLiterate())
56                 return LITERATE;
57         if (buffer()->isLinuxDoc())
58                 return LINUXDOC;
59
60         return DOCBOOK;
61 }
62
63 BufferView * Kernel::bufferview()
64 {
65         return lyxview_.view().get();
66 }
67
68
69 BufferView const * Kernel::bufferview() const
70 {
71         return lyxview_.view().get();
72 }
73
74
75 Buffer * Kernel::buffer()
76 {
77         return lyxview_.buffer();
78 }
79
80
81 Buffer const * Kernel::buffer() const
82 {
83         return lyxview_.buffer();
84 }