diff --git a/src/gui/ctrl/notification-hub.hpp b/src/gui/ctrl/notification-hub.hpp index 0676f742e..7b58221d5 100644 --- a/src/gui/ctrl/notification-hub.hpp +++ b/src/gui/ctrl/notification-hub.hpp @@ -37,35 +37,53 @@ #ifndef GUI_CTRL_NOTIFICATION_HUB_H #define GUI_CTRL_NOTIFICATION_HUB_H -#include "gui/gtk-base.hpp" -#include "lib/nocopy.hpp" +#include "gui/widget/error-log-widget.hpp" +#include "gui/model/controller.hpp" +#include "lib/diff/tree-mutator.hpp" -#include -#include +//#include +//#include namespace gui { -namespace workspace { class WorkspaceWindow; } namespace ctrl { + using lib::diff::TreeMutator; - using std::list; /** * Service to receive and display error, warning and notification messages. * These are sent over the UI-Bus through the NotificationService; after receiving - * such a message, this controller ensures to display the message and altert the + * such a message, this controller ensures to display the message and alert the * user, while not blocking the overall UI. */ class NotificationHub - : util::NonCopyable + : public model::Controller { + /** content population and manipulation via UI-Bus */ + void + buildMutator (lib::diff::TreeMutator::Handle buffer) override + { + // using Attrib = std::pair; + // using lib::diff::collection; + + buffer.create ( + TreeMutator::build() + ); + UNIMPLEMENTED ("create a sensible binding between AssetManager in the section and AssetController in the UI"); + } + + public: public: - NotificationHub (); + NotificationHub (ID identity, ctrl::BusTerm& nexus)////////////////////////////////////TODO #1099 : define the ID hard-wired at an appropriate location, so it can be used from the NotificationService impl as well + : model::Controller{identity, nexus} + { } + + ~NotificationHub() { }; private: diff --git a/src/gui/model/controller.hpp b/src/gui/model/controller.hpp index 8ebdfea29..e9accebb8 100644 --- a/src/gui/model/controller.hpp +++ b/src/gui/model/controller.hpp @@ -25,6 +25,8 @@ ** Common Abstraction of all sub-controller, coordinated by the UI-Bus. ** ** @todo as of 1/2015 this is complete WIP-WIP-WIP + ** @todo as of 8/2018 we should consider to distill a common default implementation usable for most controllers. + ** especially, there might be a default (NOP) implementation of the diff mutator builder ** ** @see model::Tangible ** @see gui::UIBus diff --git a/wiki/thinkPad.ichthyo.mm b/wiki/thinkPad.ichthyo.mm index 94882dfe8..93b63d0a7 100644 --- a/wiki/thinkPad.ichthyo.mm +++ b/wiki/thinkPad.ichthyo.mm @@ -1490,6 +1490,9 @@ + + + @@ -1620,7 +1623,7 @@ - + @@ -1632,9 +1635,11 @@ + - + +