From 7b3ca486a49d09611149a9b31139d3ea762e1a0c Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Sun, 1 Sep 2019 16:57:48 +0200 Subject: [PATCH] Allow to un-set custom Ardour-button colors --- libs/widgets/ardour_button.cc | 11 +++++++++++ libs/widgets/widgets/ardour_button.h | 1 + 2 files changed, 12 insertions(+) diff --git a/libs/widgets/ardour_button.cc b/libs/widgets/ardour_button.cc index 2ccded83c0..4c1ac05a93 100644 --- a/libs/widgets/ardour_button.cc +++ b/libs/widgets/ardour_button.cc @@ -827,6 +827,16 @@ void ArdourButton::set_inactive_color (const uint32_t color) CairoWidget::set_dirty (); } +void ArdourButton::reset_fixed_colors () +{ + if (_fixed_colors_set == 0) { + return; + } + _fixed_colors_set = 0; + _update_colors = true; + CairoWidget::set_dirty (); +} + void ArdourButton::build_patterns () { @@ -1096,6 +1106,7 @@ ArdourButton::set_active_state (Gtkmm2ext::ActiveState s) bool changed = (_active_state != s); CairoWidget::set_active_state (s); if (changed) { + _update_colors = true; CairoWidget::set_dirty (); } } diff --git a/libs/widgets/widgets/ardour_button.h b/libs/widgets/widgets/ardour_button.h index a7fc4a6b2d..0cbd61bb0d 100644 --- a/libs/widgets/widgets/ardour_button.h +++ b/libs/widgets/widgets/ardour_button.h @@ -124,6 +124,7 @@ class LIBWIDGETS_API ArdourButton : public CairoWidget , public Gtkmm2ext::Activ void set_fixed_colors (const uint32_t active_color, const uint32_t inactive_color); void set_active_color (const uint32_t active_color); void set_inactive_color (const uint32_t inactive_color); + void reset_fixed_colors (); void set_fallthrough_to_parent(bool fall) { _fallthrough_to_parent = fall; }