3 * \file GuiImplementation.h
4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
8 * \author Abdelrazak Younes
10 * Full author contact details are available in file CREDITS.
16 #include "frontends/Gui.h"
17 #include "GuiClipboard.h"
18 #include "GuiSelection.h"
20 #include <boost/shared_ptr.hpp>
33 * The GuiImplementation class is the interface to all Qt4 components.
35 class GuiImplementation: public Gui
39 virtual ~GuiImplementation() {}
41 Clipboard& clipboard();
42 Selection& selection();
44 int newView(unsigned int width, unsigned int height);
45 LyXView& view(int id);
46 void destroyView(int id);
47 int newWorkArea(unsigned int width, unsigned int height, int view_id);
48 int newWorkArea(int w, int h);
49 WorkArea& workArea(int id);
50 void destroyWorkArea(int id);
55 GuiClipboard clipboard_;
57 GuiSelection selection_;
59 std::map<int, boost::shared_ptr<GuiView> > views_;
61 std::map<int, boost::shared_ptr<GuiWorkArea> > work_areas_;
68 } // namespace frontend