]> git.lyx.org Git - lyx.git/blob - src/frontends/controllers/ControlConnections.C
0ec1080609f58e7deec980687f819bd45eda39a1
[lyx.git] / src / frontends / controllers / ControlConnections.C
1 // -*- C++ -*-
2 /* This file is part of
3  * ====================================================== 
4  *
5  *           LyX, The Document Processor
6  *
7  *           Copyright 2000 The LyX Team.
8  *
9  * ======================================================
10  *
11  * \file ControlConnections.C
12  * \author Angus Leeming <a.leeming@ic.ac.uk>
13  */
14
15 #ifdef __GNUG__
16 #pragma implementation
17 #endif
18
19 #include <config.h>
20
21 #include "ControlConnections.h"
22 #include "Dialogs.h"
23 #include "ViewBase.h"
24 #include "insets/lyxinset.h"
25
26 using SigC::slot;
27
28 ControlConnectBase::ControlConnectBase(LyXView & lv, Dialogs & d)
29         : ControlBase(lv),
30           d_(d), h_(0), r_(0)
31 {}
32
33
34 void ControlConnectBase::connect()
35 {
36         r_ = Dialogs::redrawGUI.
37                 connect(slot(this, &ControlConnectBase::redraw));
38 }
39
40 void ControlConnectBase::disconnect()
41 {
42         h_.disconnect();
43         r_.disconnect();
44 }
45
46
47 void ControlConnectBase::redraw()
48 {
49         view().redraw();
50 }
51
52
53 ControlConnectBI::ControlConnectBI(LyXView & lv, Dialogs & d)
54         : ControlConnectBase(lv, d)
55 {}
56
57
58 void ControlConnectBI::connect()
59 {
60         h_ = d_.hideAll.connect(slot(this, &ControlConnectBI::hide));
61         ControlConnectBase::connect();
62 }
63
64 ControlConnectBD::ControlConnectBD(LyXView & lv, Dialogs & d)
65         : ControlConnectBase(lv, d),
66           u_(0)
67 {}
68
69
70 void ControlConnectBD::connect()
71 {
72         u_ = d_.updateBufferDependent.
73                 connect(slot(this, &ControlConnectBD::updateSlot));
74         h_ = d_.hideBufferDependent.
75                 connect(slot(this, &ControlConnectBD::hide));
76         ControlConnectBase::connect();
77 }
78
79 void ControlConnectBD::disconnect()
80 {
81         u_.disconnect();
82         ControlConnectBase::disconnect();
83 }
84