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

📄 cegdiobject.h

📁 windows mobile应用的图形库
💻 H
字号:
/* ---------------------------------------------------------------------------------------------------
 *  
 *                          Windows CE Graphics Libary v1.00.0000
 *  
 *        
 *    Written by James.
 *    Bug report : jiet@msn.com
 *                                                             Copyright 2001
 */
// File : CEGDIObject.H
// Graphics Object head file.
//-----------------------------------------------------------------------------------------------------
//										Update Information.
//-----------------------------------------------------------------------------------------------------

/*
 * Created by James D. 2001.
 * Date: 01/11/2001
 */

#ifndef _CEGDIOBJECT_
#define _CEGDIOBJECT_

#include "CEGraphics.h"
#include "CEGDefine.h"

class CCEDraw;

// 
// CCEGDIObject : Base class for all gdi Objects
//
class CEGL_API CCEGDIObject
{
public:
	CCEGDIObject() {}
	~CCEGDIObject() {}
public:
	DWORD    m_dwObjectType; // Indicate the object type
};

//
// CCEPen : Pen class
//
class CEGL_API CCEPen : public CCEGDIObject
{
public:
	CCEPen( UINT nPenStyle, UINT nWidth, unsigned short Color );
	CCEPen();
	~CCEPen();

public:
	/*
	 * Create the pen with the pen attribute
	 */
	BOOL CreatePen( UINT nPenStyle, UINT nWidth, unsigned short Color );

public:
	UINT		   m_nPenStyle;   // Pen Style, Not support now
	UINT           m_nWidth;      // Pen Width, Not support now
	unsigned short m_Color;       // Pen Color
};

//
// CCEBrush : Brush class
//
class CEGL_API CCEBrush : public CCEGDIObject
{
public:
	CCEBrush( UINT nBrushStyle, unsigned short Color, long lbHatch );
	CCEBrush();
	~CCEBrush();

public:
	/*
	 * Create the Brush with the specify brush attribute
	 */
	BOOL CreateBrush( UINT nBrushStyle, unsigned short Color, long lbHatch );

public:
	UINT		   m_nBrushStyle;
	unsigned short m_Color;
	long           m_lbHatch;
};

//
// CCEFont : Font class
//
class CEGL_API CCEFont : public CCEGDIObject
{
public:
	CCEFont();
	~CCEFont();

public:
	/*
	 * Create the Font with the specify Font attribute
	 */
	BOOL CreateFont( int nHeight,
					 int nWidth,
					 int nEscapement,
					 int nOrientation,
					 int nWeight,
					 BYTE bItalic,
					 BYTE bUnderline,
					 BYTE cStrikeOut,
					 BYTE nCharSet,
					 BYTE nOutPrecision,
					 BYTE nClipPrecision,
					 BYTE nQuality, 
					 BYTE nPitchAndFamily,
					 LPCTSTR lpszFacename );
	BOOL CreateFontIndirect( const LOGFONT *lpFont );
    
	VOID SetFontColor( unsigned short nColor ){ m_nColor = nColor; }

public:
	HFONT          m_hFont;
	unsigned short m_nColor;
};

//
// CCEBitmap : Bitmap Class
//

#include "imgdecmp.h"

// Define BitBle Style...
#define SRCALPHA     1001
#define SRCCOLORKEY  1002

// Define Buffer Type...
#define CEB_TYPE_BITMAP       10000
#define CEB_TYPE_SCREENBUFFER 10001

class CEGL_API CCEBitmap : public CCEGDIObject
{
public:
	CCEBitmap();
	~CCEBitmap();

public:
	/*
	 * Load the bitmap and translate to the GAPI recoginzlia memory buffer...
	 */
	BOOL LoadBitmap( CCEDraw* pCEDraw, LPCTSTR lpszBitmapName );
	/*
	 * Transfers pixels from a specified source rectangle to a specified destination rectangle
	 */
	BOOL BitBlt( CCEDraw* pCEDraw, 
		         int nXDest, int nYDest, 
				 int nWidth = 0, int nHeight = 0, 
				 int nXSrc = 0, int nYSrc = 0, 
				 DWORD dwRop = SRCCOPY,
				 float fAlpha = 0.5f );
    /*
	 * Get the bitmap size...
	 */
    SIZE GetSize( VOID ) { return m_sizeBitmap; }

protected:
	/*
	 * Use the IMGDECMP.DLL to load the image data file...
	 */
	HBITMAP LoadFile( LPCTSTR lpszBitmapName );
    // Callback function to load image file data...
	static void CALLBACK ImageProgress( IImageRender *, BOOL, LPARAM);
	static DWORD CALLBACK GetImageData( LPSTR, DWORD, LPARAM);

protected:
	
	SIZE           m_sizeBitmap;
	unsigned char* m_pBitmapBuffer;
	unsigned short m_nType;
	
};

#endif // _CEGDIOBJECT_

⌨️ 快捷键说明

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