Keep track of unacknowledged log-level (error-indicator)
[ardour.git] / gtk2_ardour / ardour_ui2.cc
index b200f82a83af5129c97bab21e82d5ecea33a6803..f791259af75645174f664e8034b2539cc7c3ff03 100644 (file)
@@ -108,6 +108,24 @@ ARDOUR_UI::status_bar_button_press (GdkEventButton* ev)
        return handled;
 }
 
+void
+ARDOUR_UI::display_message (const char* prefix, gint prefix_len, RefPtr<TextBuffer::Tag> ptag, RefPtr<TextBuffer::Tag> mtag, const char* msg)
+{
+       UI::display_message (prefix, prefix_len, ptag, mtag, msg);
+
+       ArdourLogLevel ll = LogLevelNone;
+
+       if (strcmp (prefix, _("[ERROR]: ")) == 0) {
+               ll = LogLevelError;
+       } else if (strcmp (prefix, _("[WARNING]: ")) == 0) {
+               ll = LogLevelWarning;
+       } else if (strcmp (prefix, _("[INFO]: ")) == 0) {
+               ll = LogLevelInfo;
+       }
+
+       _log_not_acknowledged = std::max(_log_not_acknowledged, ll);
+}
+
 XMLNode*
 ARDOUR_UI::tearoff_settings (const char* name) const
 {