Only use gamma correction on R,G,B & Y, and only when it's turned on!
[synfig.git] / synfig-studio / trunk / src / gtkmm / workarea.cpp
index d662c55..661774f 100644 (file)
@@ -787,7 +787,7 @@ WorkArea::WorkArea(etl::loose_handle<synfigapp::CanvasInterface> canvas_interfac
                if(!data.empty())
                {
                        if(!load_sketch(data))
-                               load_sketch(dirname(canvas->get_file_name())+ETL_DIRECTORY_SEPERATOR+basename(data));
+                               load_sketch(dirname(canvas->get_file_name())+ETL_DIRECTORY_SEPARATOR+basename(data));
                }
        }
 
@@ -2119,6 +2119,8 @@ WorkArea::set_quality(int x)
 }
 
 
+namespace studio
+{
 class WorkAreaProgress : public synfig::ProgressCallback
 {
        WorkArea *work_area;
@@ -2156,6 +2158,7 @@ public:
                return cb->amount_complete(current,total);
        }
 };
+}
 
 bool
 studio::WorkArea::async_update_preview()
@@ -2315,7 +2318,6 @@ again:
        dirty=false;
        get_canvas_view()->reset_cancel_status();
 
-       bool ret=false;
        RendDesc desc=get_canvas()->rend_desc();
        //newdesc->set_flags(RendDesc::PX_ASPECT|RendDesc::IM_SPAN);
 
@@ -2342,7 +2344,7 @@ again:
        if(cb)
                cb->task(strprintf("Rendering canvas %s...",get_canvas()->get_name().c_str()));
 
-       target->render(cb);
+       bool ret = target->render(cb);
 
        if(!ret && !get_canvas_view()->get_cancel_status() && dirty)
        {
@@ -2534,7 +2536,12 @@ studio::WorkArea::queue_render_preview()
        {
                //synfig::info("queue_render_preview(): (re)queuing...");
                //render_idle_func_id=g_idle_add_full(G_PRIORITY_DEFAULT,__render_preview,this,NULL);
-               render_idle_func_id=g_timeout_add_full(G_PRIORITY_DEFAULT,queue_time,__render_preview,this,NULL);
+               render_idle_func_id=g_timeout_add_full(
+                       G_PRIORITY_DEFAULT,     // priority - 
+                       queue_time,                     // interval - the time between calls to the function, in milliseconds (1/1000ths of a second)
+                       __render_preview,       // function - function to call
+                       this,                           // data     - data to pass to function
+                       NULL);                          // notify   - function to call when the idle is removed, or NULL
                queued=true;
        }
 /*     else if(rendering)