www.pudn.com > raushon.rar > DibApiTestDoc.h


// DibApiTestDoc.h : interface of the CDibApiTestDoc class 
// 
///////////////////////////////////////////////////////////////////////////// 
 
#if !defined(AFX_DIBAPITESTDOC_H__163E4B20_E4F4_49BA_95A8_B3DD67135F09__INCLUDED_) 
#define AFX_DIBAPITESTDOC_H__163E4B20_E4F4_49BA_95A8_B3DD67135F09__INCLUDED_ 
 
#include "DIBAPI.h" 
#if _MSC_VER > 1000 
#pragma once 
#endif // _MSC_VER > 1000 
 
 
class CDibApiTestDoc : public CDocument 
{ 
protected: // create from serialization only 
	CDibApiTestDoc(); 
	DECLARE_DYNCREATE(CDibApiTestDoc) 
 
// Attributes 
public: 
	int m_width; 
	int m_height; 
 
 
 
//	HDIB m_hDIB_RECORD[5]; 
 
	HDIB GetHDIB() const 
		{ return m_hDIB; } 
	CPalette* GetDocPalette() const 
		{ return m_palDIB; } 
	CSize GetDocSize() const 
		{ return m_sizeDoc; } 
	void ReplaceHDIB(HDIB hDIB)  
	{ 
		//替换DIB ,在功能粘贴中用到该函数 
		//判断DIB是否为空 
		if(m_hDIB!=NULL) 
		{ 
			::GlobalFree((HGLOBAL)m_hDIB); 
		} 
		//替换成新的DIB对象 
		m_hDIB=hDIB; 
	} 
//	unsigned char* m_data[5]; 
 
// Operations 
public: 
 
// Overrides 
	// ClassWizard generated virtual function overrides 
	//{{AFX_VIRTUAL(CDibApiTestDoc) 
	public: 
	virtual BOOL OnNewDocument(); 
	virtual void Serialize(CArchive& ar); 
	virtual BOOL OnOpenDocument(LPCTSTR lpszPathName); 
	virtual BOOL OnSaveDocument(LPCTSTR lpszPathName); 
	virtual void OnCloseDocument(); 
	//}}AFX_VIRTUAL 
 
// Implementation 
public: 
	void InitDIBData(); 
	virtual ~CDibApiTestDoc(); 
	HDIB m_hDIB; 
#ifdef _DEBUG 
	virtual void AssertValid() const; 
	virtual void Dump(CDumpContext& dc) const; 
#endif 
 
protected: 
	 
	CPalette* m_palDIB; 
	CSize m_sizeDoc; 
	 
 
// Generated message map functions 
protected: 
	//{{AFX_MSG(CDibApiTestDoc) 
		// NOTE - the ClassWizard will add and remove member functions here. 
		//    DO NOT EDIT what you see in these blocks of generated code ! 
	//}}AFX_MSG 
	DECLARE_MESSAGE_MAP() 
}; 
 
///////////////////////////////////////////////////////////////////////////// 
 
//{{AFX_INSERT_LOCATION}} 
// Microsoft Visual C++ will insert additional declarations immediately before the previous line. 
 
#endif // !defined(AFX_DIBAPITESTDOC_H__163E4B20_E4F4_49BA_95A8_B3DD67135F09__INCLUDED_)