propacketfileimage.h

来自「本例是SYMBIAN C++一个创建短信的例子」· C头文件 代码 · 共 79 行

H
79
字号
/*
 * ============================================================================
 *  Name     : CProPacketFileImage from ProPacketFileImage.h
 *  Part of  : msc
 *  Created  : 2007-9-14 by tomken
 *  Version  : 1.0
 *  Copyright: Copyright (C) 2006-2008
 * ============================================================================
 */

#ifndef _CPROPACKETFILEIMAGE_H_
#define _CPROPACKETFILEIMAGE_H_

#include <MdaImageConverter.h>

class CGraphics;

class MImageLoadObserver
{
public:
	virtual void OnLoaded(){};
};

class CProPacketFileImage :public MMdaImageUtilObserver
{
public:
	CProPacketFileImage(MImageLoadObserver* Observer);
	CProPacketFileImage();
	virtual ~CProPacketFileImage();
	enum TCProPacketFileImageTransform
	{
		TRANS_NONE = 0,
		TRANS_ROT90 = 1,
		TRANS_ROT180,
		TRANS_ROT270,
		TRANS_MIRROR,
		TRANS_MIRROR_ROT90,
		TRANS_MIRROR_ROT270,
		TRANS_MIRROR_ROT180
	};
public:
	TDisplayMode DisplayMode();
	
	static CProPacketFileImage * CreateImage(int width, int height);
	static CProPacketFileImage * CreateImage(MImageLoadObserver* Observer, const TDesC& fn);
	static CProPacketFileImage * CreateImage(MImageLoadObserver* Observer, const TDesC8& aDescriptor);
	static CProPacketFileImage * CreateImage(CProPacketFileImage * img);	
	static CProPacketFileImage * CreateImage(CProPacketFileImage * img, TRect aRect, TCProPacketFileImageTransform transform = TRANS_NONE) ;
	int Width() const;
	int Height()const;
	TRect Rect()const ;
	CFbsBitmap* FbsBitmap() { return m_bitmap; };
	CFbsBitmap* FbsBitmapMask() { return m_bitmapmask; };
public: 
	int Alpha();
	void CancelAlpha();
	void SetAlpha(int aAlpha);
	void InitFbsBitmap(const TDesC &aGifFile, TInt aIndex);
	
	virtual void MiuoOpenComplete(TInt aError);
	virtual void MiuoConvertComplete(TInt aError);
	virtual void MiuoCreateComplete(TInt aError);
	
	void InitFbsBitmap(TInt w, TInt h);
	void InitFbsBitmap(const TDesC& aPngFileName);
	void InitFbsBitmapFrmData(const TDesC8& aDescriptor);
	
public:
	CFbsBitmap * m_bitmap;
	CFbsBitmap * m_bitmapmask;
	MImageLoadObserver* m_loadObserver;
	
private:
	CFbsBitmap * m_bitmapAlphaMask;
	int iAlpha;
};

#endif //#ifndef _CPROPACKETFILEIMAGE_H_

⌨️ 快捷键说明

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