Author: Carlos Lopez <[email protected]>
Date:   Tue Jun  5 19:38:40 2012 +0200

Color: Conversor constructor from CairoColor

---

 synfig-core/src/synfig/color.cpp |    9 +++++++++
 synfig-core/src/synfig/color.h   |    6 ++++--
 2 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/synfig-core/src/synfig/color.cpp b/synfig-core/src/synfig/color.cpp
index c26598c..eff3868 100644
--- a/synfig-core/src/synfig/color.cpp
+++ b/synfig-core/src/synfig/color.cpp
@@ -234,6 +234,15 @@ Color::clamped()const
        return(ret);
 }
 
+Color::Color(const CairoColor& c)
+       {
+               
set_r((ceil()-floor())*c.get_r()/(CairoColor::ceil()-CairoColor::floor()));
+               
set_g((ceil()-floor())*c.get_g()/(CairoColor::ceil()-CairoColor::floor()));
+               
set_b((ceil()-floor())*c.get_b()/(CairoColor::ceil()-CairoColor::floor()));
+               
set_a((ceil()-floor())*c.get_a()/(CairoColor::ceil()-CairoColor::floor()));
+       }
+
+
 typedef Color (*blendfunc)(Color &,Color &,float);
 typedef CairoColor (*cairoblendfunc)(CairoColor&, CairoColor&, float);
 
diff --git a/synfig-core/src/synfig/color.h b/synfig-core/src/synfig/color.h
index de0586b..7e9802b 100644
--- a/synfig-core/src/synfig/color.h
+++ b/synfig-core/src/synfig/color.h
@@ -98,7 +98,7 @@ class ColorAccumulator;
 #endif
 
 
-
+class CairoColor;
 
 /*!    \class Color
 **     \ ARGB 128 bits Color class implementation 
@@ -240,7 +240,6 @@ public:
                g_(c.g_),
                b_(c.b_) { }
 
-
        //!     Copy constructor
        Color(const Color& c):
                a_(c.a_),
@@ -248,6 +247,9 @@ public:
                g_(c.g_),
                b_(c.b_) { }
 
+       //! Convert from CairoColor to Color
+       Color(const CairoColor& c);
+       
 #ifdef USE_HALF_TYPE
        friend class ColorAccumulator;
        //!     Convert constructor


------------------------------------------------------------------------------
Live Security Virtual Conference
Exclusive live event will cover all the ways today's security and 
threat landscape has changed and how IT managers can respond. Discussions 
will include endpoint security, mobile security and the latest in malware 
threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/
_______________________________________________
Synfig-devl mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/synfig-devl

Reply via email to