Setting the 'In Interpolation' of a waypoint to 'Constant' causes the left hand side...
[synfig.git] / synfig-studio / trunk / src / gtkmm / widget_timeslider.cpp
index ff3ce57..d350d4a 100644 (file)
@@ -2,7 +2,7 @@
 /*!    \file widget_timeslider.cpp
 **     \brief Time Slider Widget Implementation File
 **
-**     $Id: widget_timeslider.cpp,v 1.1.1.1 2005/01/07 03:34:37 darco Exp $
+**     $Id$
 **
 **     \legal
 **     Copyright (c) 2004 Adrian Bentley
@@ -87,11 +87,14 @@ Gdk::Color get_interp_color(synfig::Interpolation x)
 static Gdk::Color
 color_darken(Gdk::Color x, float amount)
 {
-       x.set_rgb_p(
-               x.get_red_p()*amount,
-               x.get_green_p()*amount,
-               x.get_blue_p()*amount
-       );
+       double   red = x.get_red_p()   * amount;
+       double green = x.get_green_p() * amount;
+       double  blue = x.get_blue_p()  * amount;
+
+       x.set_rgb_p(  red > 1 ? 1 : red,
+                               green > 1 ? 1 : green,
+                                blue > 1 ? 1 : blue);
+
        return x;
 }