1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
|
//-------------------------------------------------------------------
// 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_)
|