Lumiera  0.pre.03
»edit your freedom«
stage/ctrl/facade.hpp
1 /*
2  FACADE.hpp - Manage the public facade interfaces of the UI
3 
4  Copyright (C)
5  2017, Hermann Vosseler <Ichthyostega@web.de>
6 
7   **Lumiera** is free software; you can redistribute it and/or modify it
8   under the terms of the GNU General Public License as published by the
9   Free Software Foundation; either version 2 of the License, or (at your
10   option) any later version. See the file COPYING for further details.
11 
12 */
13 
14 
33 #ifndef STAGE_CTRL_FACADE_H
34 #define STAGE_CTRL_FACADE_H
35 
38 #include "lib/depend-inject.hpp"
39 #include "lib/nocopy.hpp"
40 
41 
42 
43 namespace stage {
44 namespace ctrl {
45 
46 
54  class Facade
56  {
59 
60  Instance_Notification notificationService_;
61  Instance_DisplayService displayService_;
62 
63 
64  public:
68  Facade (UiBus& bus, UiManager& manager)
69  : notificationService_{bus.getAccessPoint(), manager} // opens the GuiNotificationService instance
70  , displayService_{} // opens the DisplayService instance ////////TICKET #82 obsolete
71  {
72  INFO (stage, "UI-Facade Interfaces activated.");
73  }
74 
75  private:
76  };
77 
78 
79 
80 }}// namespace stage::ctrl
81 #endif /*STAGE_CTRL_FACADE_H*/
A public service provided by the GUI, implementing the lumiera::Display facade interface.
Configuration handle to expose a service implementation through the Depend<SRV> front-end.
Any copy and copy construction prohibited.
Definition: nocopy.hpp:37
Per type specific configuration of instances created as service dependencies.
A context to hold and manage the implementation of all UI facade interfaces.
A public service provided by the GUI, implementing the stage::GuiNotification facade interface...
Backbone of the Lumiera GTK GUI.
Definition: ui-bus.hpp:150
Facade(UiBus &bus, UiManager &manager)
Activate all external UI facade interfaces.
Mix-Ins to allow or prohibit various degrees of copying and cloning.
Lumiera GTK UI implementation root.
Definition: guifacade.cpp:37
The Lumiera UI framework and backbone object.
Definition: ui-manager.hpp:88