Solve the gamma problem (corrected locale when loading/saving settings file)
[synfig.git] / synfig-core / trunk / src / synfig / surface.cpp
index fb905b7..eb55068 100644 (file)
@@ -1,18 +1,19 @@
 /* ========================================================================
-** Sinfg
+** Synfig
 ** Template File
 ** $Id: surface.cpp,v 1.1.1.1 2005/01/04 01:23:14 darco Exp $
 **
-** Copyright (c) 2002 Robert B. Quattlebaum Jr.
+**     Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley
 **
-** This software and associated documentation
-** are CONFIDENTIAL and PROPRIETARY property of
-** the above-mentioned copyright holder.
+**     This package is free software; you can redistribute it and/or
+**     modify it under the terms of the GNU General Public License as
+**     published by the Free Software Foundation; either version 2 of
+**     the License, or (at your option) any later version.
 **
-** You may not copy, print, publish, or in any
-** other way distribute this software without
-** a prior written agreement with
-** the copyright holder.
+**     This package is distributed in the hope that it will be useful,
+**     but WITHOUT ANY WARRANTY; without even the implied warranty of
+**     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+**     General Public License for more details.
 **
 ** === N O T E S ===========================================================
 **
@@ -20,7 +21,7 @@
 
 /* === H E A D E R S ======================================================= */
 
-#define SINFG_NO_ANGLE
+#define SYNFIG_NO_ANGLE
 
 #ifdef USING_PCH
 #      include "pch.h"
@@ -40,7 +41,7 @@
 
 #endif
 
-using namespace sinfg;
+using namespace synfig;
 using namespace std;
 using namespace etl;
 
@@ -48,7 +49,7 @@ using namespace etl;
 
 /* === G L O B A L S ======================================================= */
 
-class target2surface : public sinfg::Target_Scanline
+class target2surface : public synfig::Target_Scanline
 {
 public:
        Surface *surface;
@@ -57,9 +58,9 @@ public:
        target2surface(Surface *surface);
        virtual ~target2surface();
 
-       virtual bool set_rend_desc(sinfg::RendDesc *newdesc);
+       virtual bool set_rend_desc(synfig::RendDesc *newdesc);
        
-       virtual bool start_frame(sinfg::ProgressCallback *cb);
+       virtual bool start_frame(synfig::ProgressCallback *cb);
        
        virtual void end_frame();
 
@@ -77,16 +78,16 @@ target2surface::~target2surface()
 }
 
 bool
-target2surface::set_rend_desc(sinfg::RendDesc *newdesc)
+target2surface::set_rend_desc(synfig::RendDesc *newdesc)
 {
        assert(newdesc);
        assert(surface);
        desc=*newdesc;
-       return sinfg::Target_Scanline::set_rend_desc(newdesc);
+       return synfig::Target_Scanline::set_rend_desc(newdesc);
 }
        
 bool
-target2surface::start_frame(sinfg::ProgressCallback *cb) 
+target2surface::start_frame(synfig::ProgressCallback *cb) 
 { 
        if(surface->get_w() != desc.get_w() || surface->get_h() != desc.get_h())
        {
@@ -118,13 +119,13 @@ target2surface::end_scanline()
 /* === M E T H O D S ======================================================= */
 
 Target_Scanline::Handle
-sinfg::surface_target(Surface *surface)
+synfig::surface_target(Surface *surface)
 {
        return Target_Scanline::Handle(new target2surface(surface));
 }
 
 void
-sinfg::Surface::clear()
+synfig::Surface::clear()
 {
 #ifdef HAS_VIMAGE
        fill(Color(0.5,0.5,0.5,0.0000001));
@@ -134,7 +135,7 @@ sinfg::Surface::clear()
 }
 
 void
-sinfg::Surface::blit_to(alpha_pen& pen, int x, int y, int w, int h)
+synfig::Surface::blit_to(alpha_pen& pen, int x, int y, int w, int h)
 {
        static const float epsilon(0.00001);
        const float alpha(pen.get_alpha());
@@ -157,12 +158,12 @@ sinfg::Surface::blit_to(alpha_pen& pen, int x, int y, int w, int h)
                }
                                
                //clip width against dest width
-               w = min(w,pen.end_x()-pen.x());
-               h = min(h,pen.end_y()-pen.y());
+               w = min((long)w,(long)(pen.end_x()-pen.x()));
+               h = min((long)h,(long)(pen.end_y()-pen.y()));
                
                //clip width against src width
-               w = min(w,get_w()-x);           
-               h = min(h,get_h()-y);   
+               w = min(w,get_w()-x);
+               h = min(h,get_h()-y);
 
                if(w<=0 || h<=0)
                        return;