From 9d1ea1e7cfa256c7f5cac027382d92f658734ccb Mon Sep 17 00:00:00 2001 From: Bent Bisballe Nyeng Date: Thu, 25 Jul 2019 17:49:16 +0200 Subject: Add generic logger interface for propagating messages while loading drumkits to the commandline and/or plugin UI. --- src/settings.h | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src/settings.h') diff --git a/src/settings.h b/src/settings.h index 64d27b7..97b1cf1 100644 --- a/src/settings.h +++ b/src/settings.h @@ -145,6 +145,9 @@ struct Settings Atomic audition_counter{0}; Atomic audition_instrument; Atomic audition_velocity; + + // Notify UI about load errors + Atomic load_status_text; }; //! Settings getter class. @@ -206,6 +209,8 @@ struct SettingsGetter SettingRef audition_instrument; SettingRef audition_velocity; + SettingRef load_status_text; + SettingsGetter(Settings& settings) : drumkit_file(settings.drumkit_file) , drumkit_load_status(settings.drumkit_load_status) @@ -250,6 +255,7 @@ struct SettingsGetter , audition_counter{settings.audition_counter} , audition_instrument{settings.audition_instrument} , audition_velocity{settings.audition_velocity} + , load_status_text{settings.load_status_text} { } }; @@ -312,6 +318,8 @@ public: Notifier audition_instrument; Notifier audition_velocity; + Notifier load_status_text; + void evaluate() { #define EVAL(x) if(settings.x.hasChanged()) { x(settings.x.getValue()); } @@ -369,6 +377,8 @@ public: EVAL(audition_counter); EVAL(audition_instrument); EVAL(audition_velocity); + + EVAL(load_status_text); } SettingsNotifier(Settings& settings) -- cgit v1.2.3