Lumiera 0.pre.04~rc.1
»edit your freedom«
Loading...
Searching...
No Matches
notification-service.hpp
Go to the documentation of this file.
1/*
2 NOTIFICATION-SERVICE.hpp - public service allowing to push information into the GUI
3
4 Copyright (C)
5 2008, 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
30#ifndef STAGE_NOTIFICATION_SERVICE_H
31#define STAGE_NOTIFICATION_SERVICE_H
32
33
37
38#include <memory>
39
40
41
42namespace lib {
43 namespace diff { class GenNode; }
44}
45namespace stage {
46
47 namespace ctrl {
48 class UiManager;
49 class UiDispatcher;
50 }
51
52
53
54 /**************************************************/
68 : public GuiNotification
69 , public ctrl::BusTerm
70 {
71
72 std::unique_ptr<ctrl::UiDispatcher> dispatch_;
74
76
77
78 /* === Interface Lifecycle === */
79
82 > ;
84
85
86 public:
89
90 /* === Implementation of the Facade Interface === */
91
92 void displayInfo (NotifyLevel,string const& text) override;
93 void markError (ID uiElement, string const& text) override;
94 void markNote (ID uiElement, string const& text) override;
95 void mark (ID uiElement, GenNode&&) override;
96 void mutate (ID uiElement, MutationMessage&&) override;
97 void triggerGuiShutdown (string const& cause) override;
98 };
99
100
101
102} // namespace stage
103#endif
Attachment point to the UI-Bus.
Global access point to push state update and notification of events from the lower layers into the Lu...
Actual implementation of the GuiNotification service within the Lumiera GTK GUI.
void mutate(ID uiElement, MutationMessage &&) override
ServiceInstanceHandle serviceInstance_
void triggerGuiShutdown(string const &cause) override
causes the GUI to shut down unconditionally
void markError(ID uiElement, string const &text) override
void mark(ID uiElement, GenNode &&) override
void displayInfo(NotifyLevel, string const &text) override
push a user visible notification text
void markNote(ID uiElement, string const &text) override
std::unique_ptr< ctrl::UiDispatcher > dispatch_
void dispatchMsg(ID, lib::diff::GenNode &&)
connection point at the UI-Bus.
Definition bus-term.hpp:98
EntryID const & ID
Definition bus-term.hpp:107
The Lumiera UI framework and backbone object.
Major public Interface of the Lumiera GUI.
A handle template for automatically dealing with interface and plugin registration and deregistration...
#define LUMIERA_INTERFACE_INAME(name, version)
Construct a type identifier for an interface.
Definition interface.h:93
Implementation namespace for support and library code.
Lumiera GTK UI implementation root.
Definition guifacade.cpp:37
generic data element node within a tree
Definition gen-node.hpp:224
Opaque message to effect a structural change on a target, which is likewise only known in an abstract...