//------------------------------------------------------------------- // VOImage Header File //------------------------------------------------------------------- // // Copyright ©2000 Virtual Office Systems Incorporated // All Rights Reserved // // This code may be used in compiled form in any way you desire. This // file may be redistributed unmodified by any means PROVIDING it is // not sold for profit without the authors written consent, and // providing that this notice and the authors name is included. // // This code can be compiled, modified and distributed freely, providing // that this copyright information remains intact in the distribution. // // This code may be compiled in original or modified form in any private // or commercial application. // // This file is provided "as is" with no expressed or implied warranty. // The author accepts no liability for any damage, in any form, caused // by this code. Use it at your own risk. //------------------------------------------------------------------- #if !defined(AFX_VOIMAGE_H__B83C4202_DB1E_48BE_92A5_21019F9EE6FC__INCLUDED_) #define AFX_VOIMAGE_H__B83C4202_DB1E_48BE_92A5_21019F9EE6FC__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // _MSC_VER > 1000 #include "imgdecmp.h" class CVOResource { public: CVOResource(HMODULE hModule, DWORD dwResourceID, LPCTSTR pcszClass); ~CVOResource(); BOOL IsLoaded(); DWORD GetSize() { return m_dwSize; } PBYTE GetData() { return m_pData; } void SetUserData(DWORD dwValue) { m_dwUser = dwValue; } DWORD GetUserData() { return m_dwUser; } protected: DWORD m_dwUser; DWORD m_dwSize; PBYTE m_pData; HGLOBAL m_hGlobal; HRSRC m_hrsrc; }; class CVOImage { public: HBITMAP Copy(); static DWORD CALLBACK GetImageResourceData(LPSTR szBuffer, DWORD dwBufferMax, LPARAM lParam); BOOL IsLoaded(); static void CALLBACK ImageProgress( IImageRender *, BOOL, LPARAM); static DWORD CALLBACK GetImageData( LPSTR, DWORD, LPARAM); BOOL SetBitmap(HDC hdc, DWORD dwResourceID, LPCTSTR pcszClass = TEXT("IMAGE"), HMODULE hModule = 0 ); DWORD GetWidth(); DWORD GetHeight(); BOOL Draw(HDC hdc, int x, int y, int cx = -1, int cy = -1); BOOL Load(HDC hdc, LPCTSTR pcszFileName); CVOImage(); virtual ~CVOImage(); operator HBITMAP() { return m_hbitmap; } protected: DWORD m_dwHeight; DWORD m_dwWidth; HBITMAP m_hbitmap; static BOOL g_bStretchBlt; static int g_iMaxHeight; static int g_iMaxWidth; static int g_iScale; static HDC g_hdc; }; #endif // !defined(AFX_VOIMAGE_H__B83C4202_DB1E_48BE_92A5_21019F9EE6FC__INCLUDED_)