index ef95b87e5fe2eb425a5fcacc234804dfc10f719f..fd0600cdbbc6b7130e494b50d513f3bf8a550d12 100644 (file)
* feFlood filter primitive renderer
*
* Authors:
- * Felipe CorrĂȘa da Silva Sanches <felipe.sanches@gmail.com>
+ * Felipe CorrĂȘa da Silva Sanches <juca@members.fsf.org>
*
* Copyright (C) 2007 authors
*
* Released under GNU GPL, read the file 'COPYING' for more information
*/
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
+
#include "display/nr-filter-flood.h"
#include "display/nr-filter-utils.h"
+#include "svg/svg-icc-color.h"
+#include "svg/svg-color.h"
-namespace NR {
+namespace Inkscape {
+namespace Filters {
FilterFlood::FilterFlood()
{}
{}
int FilterFlood::render(FilterSlot &slot, FilterUnits const &/*units*/) {
+//g_message("rendering feflood");
NRPixBlock *in = slot.get(_input);
if (!in) {
g_warning("Missing source image for feFlood (in=%d)", _input);
true);
unsigned char *out_data = NR_PIXBLOCK_PX(out);
-
unsigned char r,g,b,a;
- r = CLAMP_D_TO_U8((color >> 24) % 256);
- g = CLAMP_D_TO_U8((color >> 16) % 256);
- b = CLAMP_D_TO_U8((color >> 8) % 256);
- a = CLAMP_D_TO_U8(opacity*255);
+
+
+ r = CLAMP_D_TO_U8((color >> 24) % 256);
+ g = CLAMP_D_TO_U8((color >> 16) % 256);
+ b = CLAMP_D_TO_U8((color >> 8) % 256);
+ a = CLAMP_D_TO_U8(opacity*255);
+
+#if ENABLE_LCMS
+ icc_color_to_sRGB(icc, &r, &g, &b);
+//g_message("result: r:%d g:%d b:%d", r, g, b);
+#endif //ENABLE_LCMS
for(i=0; i < 4*in_h*in_w; i+=4){
out_data[i]=r;
opacity = o;
}
-void FilterFlood::area_enlarge(NRRectL &/*area*/, Matrix const &/*trans*/)
+void FilterFlood::set_icc(SVGICCColor *icc_color) {
+ icc = icc_color;
+}
+
+void FilterFlood::area_enlarge(NRRectL &/*area*/, Geom::Matrix const &/*trans*/)
{
}
-} /* namespace NR */
+} /* namespace Filters */
+} /* namespace Inkscape */
/*
Local Variables: