]> git.lyx.org Git - lyx.git/blob - src/frontends/WorkAreaManager.h
Move Color::color enum to ColorCode.h
[lyx.git] / src / frontends / WorkAreaManager.h
1 // -*- C++ -*-
2 /**
3  * \file WorkAreaManager.h
4  * This file is part of LyX, the document processor.
5  * Licence details can be found in the file COPYING.
6  *
7  * \author Abdelrazak Younes
8  *
9  * Full author contact details are available in file CREDITS.
10  */
11
12 #ifndef WORKAREA_MANAGER_H
13 #define WORKAREA_MANAGER_H
14
15 #include <list>
16
17 namespace lyx {
18 namespace frontend {
19
20 class WorkArea;
21
22 /// \c WorkArea Manager.
23 /**
24   * This is a helper class designed to avoid signal/slot connections
25   * between a \c Buffer and the potentially multiple \c WorkArea(s)
26   * used to visualize this Buffer contents.
27   */
28 class WorkAreaManager
29 {
30 public:
31         WorkAreaManager() {}
32
33         ///
34         void add(WorkArea * wa);
35
36         ///
37         void remove(WorkArea * wa);
38
39         ///
40         void redrawAll();
41
42         ///
43         void closeAll();
44
45 private:
46         std::list<WorkArea *> work_areas_;
47 };
48
49 } // namespace frontend
50 } // namespace lyx
51
52 #endif // BASE_WORKAREA_H