//**************************************************************************** //Copyright (C) 2005-2006 Beijing BlueDJ Technology Co.,Ltd. All rights reserved. //This program 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. //This program 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. //You should have received a copy of the GNU General Public License //along with this program (in the file LICENSE.GPL); if not, write to the Free Software //Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. //Please visit http://www.bluedj.com for more infomation about us. //Contact us at ggwizard@gmail.com or darkdong@gmail.com. //****************************************************************************/ #include "DJOnceSprite.h" DJOnceSprite::DJOnceSprite( const QString& movieDir, Q3Canvas * canvas ): Q3CanvasSprite(0,canvas) { m_pixmaps = new Q3CanvasPixmapArray; QDir d( movieDir ); d.setSorting(QDir::Name); QStringList files = d.entryList(QDir::Files); for( int i = 0; i < files.size(); i++ ) { QString path = d.filePath( files.at(i) ); Q3CanvasPixmap *pix = new Q3CanvasPixmap( path ); m_pixmaps->setImage( i, pix ); } setSequence( m_pixmaps ); } DJOnceSprite::~DJOnceSprite() { //delete m_pixmaps; } void DJOnceSprite::advance ( int phase ) { if ( frame() +1 >= frameCount() ) { setAnimated (false); setFrame ( 0 ); }else { Q3CanvasSprite::advance(phase); } }