X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-core%2Ftrunk%2Fsrc%2Fsynfig%2Flistimporter.cpp;h=01ef02f4963f6ebb2a53f3a9c98f6bdfc5ef4ba7;hb=34491670843d9e4df3edb5c7183bb6919abdab8a;hp=d32fbc84252de09645f90bf8c661813bba89d9f6;hpb=e8a065f2385c219c511b57dac52786120bfa097d;p=synfig.git diff --git a/synfig-core/trunk/src/synfig/listimporter.cpp b/synfig-core/trunk/src/synfig/listimporter.cpp index d32fbc8..01ef02f 100644 --- a/synfig-core/trunk/src/synfig/listimporter.cpp +++ b/synfig-core/trunk/src/synfig/listimporter.cpp @@ -2,7 +2,7 @@ /*! \file listimporter.cpp ** \brief Template File ** -** $Id: listimporter.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 @@ -63,7 +63,7 @@ ListImporter::ListImporter(const String &filename) return; } String line; - String prefix=etl::dirname(filename)+ETL_DIRECTORY_SEPERATOR; + String prefix=etl::dirname(filename)+ETL_DIRECTORY_SEPARATOR; while(!stream.eof()) { getline(stream,line); @@ -96,35 +96,35 @@ bool ListImporter::get_frame(Surface &surface,Time time, ProgressCallback *cb) { // DEBUGPOINT(); - int frame=static_cast(time*fps); + int frame=round_to_int(time*fps); // DEBUGPOINT(); - + if(!filename_list.size()) { if(cb)cb->error(_("No images in list")); else synfig::error(_("No images in list")); return false; } - + // DEBUGPOINT(); if(frame<0)frame=0; if(frame>=(signed)filename_list.size())frame=filename_list.size()-1; - + // DEBUGPOINT(); // See if that frame is cached - std::list >::iterator iter; + std::list >::iterator iter; for(iter=frame_cache.begin();iter!=frame_cache.end();++iter) { - if(iter->first==frame) + if(iter->first==filename_list[frame]) { // DEBUGPOINT(); surface.mirror(iter->second); return static_cast(surface); } } - + Importer::Handle importer(Importer::open(filename_list[frame])); - + // DEBUGPOINT(); if(!importer) @@ -133,7 +133,7 @@ ListImporter::get_frame(Surface &surface,Time time, ProgressCallback *cb) else synfig::error(_("Unable to open ")+filename_list[frame]); return false; } - + // DEBUGPOINT(); if(!importer->get_frame(surface,0,cb)) @@ -142,7 +142,7 @@ ListImporter::get_frame(Surface &surface,Time time, ProgressCallback *cb) else synfig::error(_("Unable to get frame from ")+filename_list[frame]); return false; } - + // DEBUGPOINT(); if(frame_cache.size()>=LIST_IMPORTER_CACHE_SIZE) @@ -150,7 +150,7 @@ ListImporter::get_frame(Surface &surface,Time time, ProgressCallback *cb) // DEBUGPOINT(); - frame_cache.push_back(std::pair(frame,surface)); + frame_cache.push_back(std::pair(filename_list[frame],surface)); // DEBUGPOINT();