4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
7 * \author Angus Leeming
9 * Full author contact details are available in file CREDITS
15 #include "ButtonController.h"
17 #include <boost/utility.hpp>
19 /** This class makes a whole out of the disparate parts of a dialog.
21 template <typename Controller, typename GUIview,
22 typename Policy, typename GUIbc>
23 class GUI : boost::noncopyable {
26 GUI(LyXView & lv, Dialogs & d);
28 Controller & controller() { return controller_; }
30 Controller const & controller() const { return controller_; }
33 Controller controller_;
35 ButtonController<Policy, GUIbc> bc_;
41 template <typename Controller, typename GUIview,
42 typename Policy, typename GUIbc>
43 GUI<Controller, GUIview, Policy, GUIbc>::GUI(LyXView & lv, Dialogs & d)
47 controller_.setView(view_);
48 controller_.setButtonController(bc_);
49 view_.setController(controller_);