⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 imagefactory.cpp

📁 关于symbian OS S60 2.X平台
💻 CPP
字号:
////////////////////////////////////////////////////////////////////////
//
// ImageFactory.cpp
//
// Copyright (c) 2003 Nokia Mobile Phones Ltd.  All rights reserved.
//
////////////////////////////////////////////////////////////////////////

#include "ImageFactory.h"


#include <fbs.h>
#include <eikenv.h>

#include <retroblaster.mbg>

CImageFactory* CImageFactory::NewL(CEikonEnv& aEikonEnv, const TDesC& aImageFile)
	{
	CImageFactory* self = new (ELeave) CImageFactory(aEikonEnv);
	CleanupStack::PushL(self);
	self->ConstructL(aImageFile);
	CleanupStack::Pop();
	return self;
	}

CImageFactory* CImageFactory::NewLC(CEikonEnv& aEikonEnv, const TDesC& aImageFile)
	{
	CImageFactory* self = new (ELeave) CImageFactory(aEikonEnv);
	CleanupStack::PushL(self);
	self->ConstructL(aImageFile);
	return self;
	}

void CImageFactory::ConstructL(const TDesC& aImageFileName)
	{
	iMbmFile = aImageFileName.AllocL();
	LoadImagesL();
	}

CImageFactory::CImageFactory(CEikonEnv& aEikonEnv) :
	iEikEnv(aEikonEnv),
	iMbmFile(0)
	{
	}

CImageFactory::~CImageFactory()
	{
	delete iMbmFile;
	delete iShipAnim;
	delete iFireAnim;
	delete iTileImage;
	delete iTileMask;
	}

void CImageFactory::LoadImagesL()
	{
	iShipAnim	= iEikEnv.CreateBitmapL(*iMbmFile, EMbmRetroblasterShipanim );
	iFireAnim	= iEikEnv.CreateBitmapL(*iMbmFile, EMbmRetroblasterFireanim );
	iTileImage	= iEikEnv.CreateBitmapL(*iMbmFile, EMbmRetroblasterTileimage );
	iTileMask	= iEikEnv.CreateBitmapL(*iMbmFile, EMbmRetroblasterTilemask );
	}

CFbsBitmap& CImageFactory::ShipAnim() const
	{
	return *iShipAnim;
	}

CFbsBitmap& CImageFactory::FireAnim() const
	{
	return *iFireAnim;
	}

CFbsBitmap& CImageFactory::TileImage() const
	{
	return *iTileImage;
	}


CFbsBitmap& CImageFactory::TileMask() const
	{
	return *iTileMask;
	}



⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -