From: Paul Davis Date: Mon, 15 Dec 2014 14:04:41 +0000 (-0500) Subject: Add UIConfiguration::color_mod (colorname, modifiername) to get a modified color X-Git-Tag: 4.0-rc1~1002 X-Git-Url: https://main.carlh.net/gitweb/?a=commitdiff_plain;h=dc934ab90dd9ed1a564681b7395c538957b69d49;p=ardour.git Add UIConfiguration::color_mod (colorname, modifiername) to get a modified color --- diff --git a/gtk2_ardour/ui_config.cc b/gtk2_ardour/ui_config.cc index 027d119c30..629b20dcdd 100644 --- a/gtk2_ardour/ui_config.cc +++ b/gtk2_ardour/ui_config.cc @@ -510,11 +510,12 @@ UIConfiguration::load_modifiers (XMLNode const & node) XMLProperty const *mod; modifiers.clear (); - + for (niter = nlist.begin(); niter != nlist.end(); ++niter) { if ((*niter)->name() != X_("Modifier")) { continue; } + name = (*niter)->property (X_("name")); mod = (*niter)->property (X_("modifier")); @@ -547,6 +548,12 @@ UIConfiguration::modifier (string const & name) const return SVAModifier (); } +ArdourCanvas::Color +UIConfiguration::color_mod (std::string const & colorname, std::string const & modifiername) const +{ + return HSV (color (colorname)).mod (modifier (modifiername)).color (); +} + ArdourCanvas::Color UIConfiguration::color (const std::string& name, bool* failed) const { diff --git a/gtk2_ardour/ui_config.h b/gtk2_ardour/ui_config.h index d6f917da02..b30c76fa11 100644 --- a/gtk2_ardour/ui_config.h +++ b/gtk2_ardour/ui_config.h @@ -69,6 +69,7 @@ class UIConfiguration : public PBD::Stateful ArdourCanvas::Color quantized (ArdourCanvas::Color) const; ArdourCanvas::Color color (const std::string&, bool* failed = 0) const; + ArdourCanvas::Color color_mod (std::string const & color, std::string const & modifier) const; ArdourCanvas::HSV color_hsv (const std::string&) const; ArdourCanvas::SVAModifier modifier (const std::string&) const;