fall back on "generic button" colors in ArdourButton if specifically named fills...
authorPaul Davis <paul@linuxaudiosystems.com>
Thu, 11 Dec 2014 22:04:21 +0000 (17:04 -0500)
committerPaul Davis <paul@linuxaudiosystems.com>
Thu, 11 Dec 2014 22:04:21 +0000 (17:04 -0500)
gtk2_ardour/ardour_button.cc

index f4dbc830f6c3c70996616dd3df02af8164615e5a..5a13dd751f28e522108ae407118529b95c064baf 100644 (file)
@@ -662,15 +662,28 @@ ArdourButton::set_colors ()
                return;
        }
        std::string name = get_name();
+       bool failed = false;
 
-       fill_active_color = ARDOUR_UI::config()->color (string_compose ("%1: fill active", name));
-       fill_inactive_color = ARDOUR_UI::config()->color (string_compose ("%1: fill", name));
+       fill_active_color = ARDOUR_UI::config()->color (string_compose ("%1: fill active", name), &failed);
+       if (failed) {
+               fill_active_color = ARDOUR_UI::config()->color ("generic button: fill active");
+       }
+       fill_inactive_color = ARDOUR_UI::config()->color (string_compose ("%1: fill", name), &failed);
+       if (failed) {
+               fill_inactive_color = ARDOUR_UI::config()->color ("generic button: fill");
+       }
 
        text_active_color = ArdourCanvas::contrasting_text_color (fill_active_color);
        text_inactive_color = ArdourCanvas::contrasting_text_color (fill_inactive_color);
 
-       led_active_color = ARDOUR_UI::config()->color (string_compose ("%1: led active", name));
-       led_inactive_color = ARDOUR_UI::config()->color (string_compose ("%1: led", name));
+       led_active_color = ARDOUR_UI::config()->color (string_compose ("%1: led active", name), &failed);
+       if (failed) {
+               led_active_color = ARDOUR_UI::config()->color ("generic button: led active");
+       }
+       led_inactive_color = ARDOUR_UI::config()->color (string_compose ("%1: led", name), &failed);
+       if (failed) {
+               led_inactive_color = ARDOUR_UI::config()->color ("generic button: led");
+       }
 }
 
 /**