Lumiera 0.pre.04
»edit your freedom«
Loading...
Searching...
No Matches
stage/ctrl/facade.hpp
Go to the documentation of this file.
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
37#include "lib/depend-inject.hpp"
38#include "lib/nocopy.hpp"
39
40
41
42namespace stage {
43namespace ctrl {
44
45
53 class Facade
55 {
57
59
60
61 public:
65 Facade (UiBus& bus, UiManager& manager)
66 : notificationService_{bus.getAccessPoint(), manager} // opens the GuiNotificationService instance
67 {
68 INFO (stage, "UI-Facade Interfaces activated.");
69 }
70
71 private:
72 };
73
74
75
76}}// namespace stage::ctrl
77#endif /*STAGE_CTRL_FACADE_H*/
Configuration handle to expose a service implementation through the Depend<SRV> front-end.
Backbone of the Lumiera GTK GUI.
Definition ui-bus.hpp:124
A context to hold and manage the implementation of all UI facade interfaces.
Facade(UiBus &bus, UiManager &manager)
Activate all external UI facade interfaces.
Instance_Notification notificationService_
The Lumiera UI framework and backbone object.
Any copy and copy construction prohibited.
Definition nocopy.hpp:38
Per type specific configuration of instances created as service dependencies.
Lumiera GTK UI implementation root.
Definition guifacade.cpp:37
Mix-Ins to allow or prohibit various degrees of copying and cloning.
A public service provided by the GUI, implementing the stage::GuiNotification facade interface.