]> git.lyx.org Git - lyx.git/blob - src/frontends/controllers/ControlPreamble.C
ws cleanup
[lyx.git] / src / frontends / controllers / ControlPreamble.C
1 /**
2  * \file FormPreamble.C
3  * Copyright 2001 The LyX Team.
4  * See the file COPYING.
5  *
6  * \author Edwin Leuven, leuven@fee.uva.nl
7  */
8
9 #include <config.h>
10
11 #ifdef __GNUG__
12 #pragma implementation
13 #endif
14
15 #include "ViewBase.h"
16 #include "ButtonControllerBase.h"
17 #include "ControlPreamble.h"
18 #include "LyXView.h"
19 #include "Dialogs.h"
20 #include "buffer.h"
21 #include "lyxrc.h"
22 #include "Liason.h"
23 #include "gettext.h"
24 #include "BufferView.h"
25 #include "support/LAssert.h"
26
27 ControlPreamble::ControlPreamble(LyXView & lv, Dialogs & d)
28         : ControlDialogBD(lv, d),
29           params_(0)
30 {
31         d_.showPreamble.connect(SigC::slot(this, &ControlPreamble::show));
32 }
33
34
35 void ControlPreamble::apply()
36 {
37         if (!lv_.view()->available())
38                 return;
39
40         view().apply();
41
42         lv_.buffer()->params.preamble = params();
43         lv_.buffer()->markDirty();
44         Liason::setMinibuffer(&lv_, _("LaTeX preamble set"));
45 }
46
47
48 string & ControlPreamble::params() const
49 {
50         lyx::Assert(params_);
51         return *params_;
52 }
53
54
55 void ControlPreamble::setParams()
56 {
57         if (params_) delete params_;
58         params_ = new string(lv_.buffer()->params.preamble);
59 }
60
61
62 void ControlPreamble::clearParams()
63 {
64         if (params_) {
65                 delete params_;
66                 params_ = 0;
67         }
68 }