📄 imagefactory.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 + -