X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=gtk%2Fgtkhsla.c;h=78ccaec19f8242e9c2c18114ccad99e616204aba;hb=ea043cab5718304d9b6170afa2d3f959fc99c718;hp=a78849789d1ea78f40a447305eb177a067ba200f;hpb=e063a0fdf13a09ca44588862d6b0b4f04232759f;p=~andy%2Fgtk diff --git a/gtk/gtkhsla.c b/gtk/gtkhsla.c index a78849789..78ccaec19 100644 --- a/gtk/gtkhsla.c +++ b/gtk/gtkhsla.c @@ -183,3 +183,21 @@ _gdk_rgba_init_from_hsla (GdkRGBA *rgba, } } +void +_gtk_hsla_shade (GtkHSLA *dest, + const GtkHSLA *src, + double factor) +{ + g_return_if_fail (dest != NULL); + g_return_if_fail (src != NULL); + + dest->hue = src->hue; + + dest->lightness = src->lightness * factor; + dest->lightness = CLAMP (dest->lightness, 0.0, 1.0); + + dest->saturation = src->saturation * factor; + dest->saturation = CLAMP (dest->saturation, 0.0, 1.0); + + dest->alpha = src->alpha; +}