X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftrunk%2Fsrc%2Fsynfig%2Fcanvas.cpp;h=f56393debd649774cf8707e0c078941d2cae070e;hb=01665fbe64b429c0c752c4d02eedd6c12532a44a;hp=68751556b5927b3cdb960179f92076fe5dc69aa3;hpb=5ddcf36f04cfbd10fabda4e3c5633cb27cdd4c0a;p=synfig.git diff --git a/synfig-core/trunk/src/synfig/canvas.cpp b/synfig-core/trunk/src/synfig/canvas.cpp index 6875155..f56393d 100644 --- a/synfig-core/trunk/src/synfig/canvas.cpp +++ b/synfig-core/trunk/src/synfig/canvas.cpp @@ -2,7 +2,7 @@ /*! \file canvas.cpp ** \brief Canvas Class Member Definitions ** -** $Id: canvas.cpp,v 1.1.1.1 2005/01/04 01:23:14 darco Exp $ +** $Id$ ** ** \legal ** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley @@ -510,7 +510,7 @@ Canvas::surefind_canvas(const String &id) if(id[0]=='#') return surefind_canvas(String(id,1)); - //! \todo This needs alot more optimization + //! \todo This needs a lot more optimization String file_name(id,0,id.find_first_of('#')); String external_id(id,id.find_first_of('#')+1); @@ -526,7 +526,7 @@ Canvas::surefind_canvas(const String &id) if(is_absolute_path(file_name)) external_canvas=open_canvas(file_name); else - external_canvas=open_canvas(get_file_path()+ETL_DIRECTORY_SEPERATOR+file_name); + external_canvas=open_canvas(get_file_path()+ETL_DIRECTORY_SEPARATOR+file_name); if(!external_canvas) throw Exception::FileNotFound(file_name); @@ -553,7 +553,7 @@ Canvas::surefind_canvas(const String &id) return new_child_canvas(id); } - // If the first character is the seperator, then + // If the first character is the separator, then // this references the root canvas. if(id[0]==':') return get_root()->surefind_canvas(string(id,1)); @@ -595,7 +595,7 @@ Canvas::find_canvas(const String &id)const if(id[0]=='#') return find_canvas(String(id,1)); - //! \todo This needs alot more optimization + //! \todo This needs a lot more optimization String file_name(id,0,id.find_first_of('#')); String external_id(id,id.find_first_of('#')+1); @@ -611,7 +611,7 @@ Canvas::find_canvas(const String &id)const if(is_absolute_path(file_name)) external_canvas=open_canvas(file_name); else - external_canvas=open_canvas(get_file_path()+ETL_DIRECTORY_SEPERATOR+file_name); + external_canvas=open_canvas(get_file_path()+ETL_DIRECTORY_SEPARATOR+file_name); if(!external_canvas) throw Exception::FileNotFound(file_name); @@ -636,7 +636,7 @@ Canvas::find_canvas(const String &id)const throw Exception::IDNotFound("Child Canvas in Parent Canvas: (child)"+id); } - // If the first character is the seperator, then + // If the first character is the separator, then // this references the root canvas. if(id.find_first_of(':')==0) return get_root()->find_canvas(string(id,1)); @@ -1036,10 +1036,12 @@ synfig::optimize_layers(Context context, Canvas::Handle op_canvas) continue; Layer_PasteCanvas* paste_canvas(static_cast(layer.get())); - if(layer->get_name()=="PasteCanvas" && paste_canvas->get_time_offset()==0) + if(layer->get_name()=="paste_canvas" && paste_canvas->get_time_offset()==0) { Canvas::Handle sub_canvas(Canvas::create_inline(op_canvas)); - optimize_layers(paste_canvas->get_sub_canvas()->get_context(),sub_canvas); + Canvas::Handle paste_sub_canvas = paste_canvas->get_sub_canvas(); + if(paste_sub_canvas) + optimize_layers(paste_sub_canvas->get_context(),sub_canvas); //#define SYNFIG_OPTIMIZE_PASTE_CANVAS 1 #ifdef SYNFIG_OPTIMIZE_PASTE_CANVAS @@ -1074,13 +1076,13 @@ synfig::optimize_layers(Context context, Canvas::Handle op_canvas) continue; }catch(int) { } #endif - Layer::Handle new_layer(Layer::create("PasteCanvas")); - dynamic_cast(new_layer.get())->set_do_not_muck_with_time(true); + Layer::Handle new_layer(Layer::create("paste_canvas")); + dynamic_cast(new_layer.get())->set_muck_with_time(false); Layer::ParamList param_list(paste_canvas->get_param_list()); //param_list.erase("canvas"); new_layer->set_param_list(param_list); dynamic_cast(new_layer.get())->set_sub_canvas(sub_canvas); - dynamic_cast(new_layer.get())->set_do_not_muck_with_time(false); + dynamic_cast(new_layer.get())->set_muck_with_time(true); layer=new_layer; }