source: trunk/src/gdi32/metafile.cpp@ 4552

Last change on this file since 4552 was 4552, checked in by sandervl, 25 years ago

OffsetRgn fix + small changes

File size: 12.7 KB
Line 
1/* $Id: metafile.cpp,v 1.3 2000-11-04 16:29:24 sandervl Exp $ */
2
3/*
4 * GDI32 metafile code
5 *
6 * Copyright 1998 Sander van Leeuwen (sandervl@xs4all.nl)
7 * Copyright 1998 Patrick Haller
8 *
9 * Project Odin Software License can be found in LICENSE.TXT
10 *
11 */
12#include <os2win.h>
13#include <stdlib.h>
14#include <stdarg.h>
15#include <string.h>
16#include "misc.h"
17
18#define DBG_LOCALLOG DBG_metafile
19#include "dbglocal.h"
20
21//******************************************************************************
22//******************************************************************************
23HENHMETAFILE WIN32API CloseEnhMetaFile( HDC arg1)
24{
25 dprintf(("GDI32: CloseEnhMetaFile NOT IMPLEMENTED"));
26//// return O32_CloseEnhMetaFile(arg1);
27 return 0;
28}
29//******************************************************************************
30//******************************************************************************
31HMETAFILE WIN32API CloseMetaFile( HDC arg1)
32{
33 dprintf(("GDI32: CloseMetaFile"));
34 return O32_CloseMetaFile(arg1);
35}
36//******************************************************************************
37//******************************************************************************
38HENHMETAFILE WIN32API CopyEnhMetaFileA( HENHMETAFILE arg1, LPCSTR arg2)
39{
40 dprintf(("GDI32: CopyEnhMetaFileA NOT IMPLEMENTED"));
41//// return O32_CopyEnhMetaFile(arg1, arg2);
42 return 0;
43}
44//******************************************************************************
45//******************************************************************************
46HENHMETAFILE WIN32API CopyEnhMetaFileW( HENHMETAFILE arg1, LPCWSTR arg2)
47{
48 char *astring = UnicodeToAsciiString((LPWSTR)arg2);
49 HENHMETAFILE rc;
50
51 dprintf(("GDI32: CopyEnhMetaFileW"));
52 rc = CopyEnhMetaFileA(arg1, astring);
53 FreeAsciiString(astring);
54 return rc;
55}
56//******************************************************************************
57//******************************************************************************
58HENHMETAFILE WIN32API CreateEnhMetaFileA( HDC arg1, LPCSTR arg2, const RECT * arg3, LPCSTR arg4)
59{
60 dprintf(("GDI32: CreateEnhMetaFileA NOT IMPLEMENTED"));
61//// return O32_CreateEnhMetaFile(arg1, arg2, arg3, arg4);
62 return 0;
63}
64//******************************************************************************
65//******************************************************************************
66HENHMETAFILE WIN32API CreateEnhMetaFileW( HDC arg1, LPCWSTR arg2, const RECT * arg3, LPCWSTR arg4)
67{
68 char *astring1 = UnicodeToAsciiString((LPWSTR)arg2);
69 char *astring2 = UnicodeToAsciiString((LPWSTR)arg4);
70 HENHMETAFILE rc;
71
72 dprintf(("GDI32: CreateMetaFileW"));
73 rc = CreateEnhMetaFileA(arg1,astring1,arg3,astring2);
74 FreeAsciiString(astring1);
75 FreeAsciiString(astring2);
76 return rc;
77}
78//******************************************************************************
79//******************************************************************************
80HDC WIN32API CreateMetaFileA( LPCSTR arg1)
81{
82 dprintf(("GDI32: CreateMetaFileA"));
83 return O32_CreateMetaFile(arg1);
84}
85//******************************************************************************
86//******************************************************************************
87HDC WIN32API CreateMetaFileW( LPCWSTR arg1)
88{
89 char *astring = UnicodeToAsciiString((LPWSTR)arg1);
90 HDC rc;
91
92 dprintf(("GDI32: CreateMetaFileW"));
93 rc = O32_CreateMetaFile(astring);
94 FreeAsciiString(astring);
95 return rc;
96}
97//******************************************************************************
98//******************************************************************************
99BOOL WIN32API DeleteEnhMetaFile( HENHMETAFILE arg1)
100{
101 dprintf(("GDI32: DeleteEnhMetaFile NOT IMPLEMENTED"));
102//// return O32_DeleteEnhMetaFile(arg1);
103 return 0;
104}
105//******************************************************************************
106//******************************************************************************
107BOOL WIN32API DeleteMetaFile( HMETAFILE arg1)
108{
109 dprintf(("GDI32: DeleteMetaFile"));
110 return O32_DeleteMetaFile(arg1);
111}
112//******************************************************************************
113//******************************************************************************
114HMETAFILE WIN32API CopyMetaFileA( HMETAFILE arg1, LPCSTR arg2)
115{
116 dprintf(("GDI32: CopyMetaFileA"));
117 return O32_CopyMetaFile(arg1, arg2);
118}
119//******************************************************************************
120//******************************************************************************
121HMETAFILE WIN32API CopyMetaFileW( HMETAFILE arg1, LPCWSTR arg2)
122{
123 char *astring = UnicodeToAsciiString((LPWSTR)arg2);
124 HMETAFILE rc;
125
126 dprintf(("GDI32: CopyMetaFileW"));
127 rc = O32_CopyMetaFile(arg1, astring);
128 FreeAsciiString(astring);
129 return rc;
130}
131//******************************************************************************
132//TODO: Callback
133//******************************************************************************
134BOOL WIN32API EnumMetaFile( HDC hdc, HMETAFILE hMetafile, MFENUMPROC metaProc, LPARAM lParam)
135{
136#ifdef STDCALL_ENUMPROCS
137 dprintf(("GDI32: EnumMetaFile %x %x %x %x", hdc, hMetafile, metaProc, lParam));
138 //should change os2win.h
139 return O32_EnumMetaFile(hdc, hMetafile, (MFENUMPROC_O32)metaProc, lParam);
140#else
141 dprintf(("GDI32: EnumMetaFile NOT IMPLEMENTED"));
142 //calling convention differences
143// return O32_EnumMetaFile(arg1, arg2, arg3, arg4);
144 return 0;
145#endif
146}
147//******************************************************************************
148//******************************************************************************
149BOOL WIN32API EnumEnhMetaFile( HDC arg1, HENHMETAFILE arg2, ENHMFENUMPROC arg3, PVOID arg4, const RECT * arg5)
150{
151 dprintf(("GDI32: EnumEnhMetaFile NOT IMPLEMENTED!"));
152// return O32_EnumEnhMetaFile(arg1, arg2, arg3, arg4, arg5);
153 return 0;
154}
155//******************************************************************************
156//******************************************************************************
157HMETAFILE WIN32API GetMetaFileA( LPCSTR arg1)
158{
159 dprintf(("GDI32: GetMetaFileA"));
160 return O32_GetMetaFile(arg1);
161}
162//******************************************************************************
163//******************************************************************************
164HMETAFILE WIN32API GetMetaFileW( LPCWSTR arg1)
165{
166 char *astring = UnicodeToAsciiString((LPWSTR)arg1);
167 HENHMETAFILE rc;
168
169 dprintf(("GDI32: GetMetaFileW"));
170 rc = O32_GetMetaFile(astring);
171 FreeAsciiString(astring);
172 return rc;
173
174}
175//******************************************************************************
176//******************************************************************************
177HENHMETAFILE WIN32API GetEnhMetaFileA( LPCSTR arg1)
178{
179 dprintf(("GDI32: GetEnhMetaFileA NOT IMPLEMENTED"));
180//// return O32_GetEnhMetaFile(arg1);
181 return 0;
182}
183//******************************************************************************
184//******************************************************************************
185HENHMETAFILE WIN32API GetEnhMetaFileW( LPCWSTR arg1)
186{
187 char *astring = UnicodeToAsciiString((LPWSTR)arg1);
188 HENHMETAFILE rc;
189
190 dprintf(("GDI32: GetEnhMetaFileW"));
191 // NOTE: This will not work as is (needs UNICODE support)
192 rc = GetEnhMetaFileA(astring);
193 FreeAsciiString(astring);
194 return rc;
195}
196//******************************************************************************
197//******************************************************************************
198UINT WIN32API GetEnhMetaFileBits( HENHMETAFILE arg1, UINT arg2, PBYTE arg3)
199{
200 dprintf(("GDI32: GetEnhMetaFileBits NOT IMPLEMENTED"));
201//// return O32_GetEnhMetaFileBits(arg1, arg2, arg3);
202 return 0;
203}
204//******************************************************************************
205//******************************************************************************
206UINT WIN32API GetMetaFileBitsEx( HMETAFILE arg1, UINT arg2, LPVOID arg3)
207{
208 dprintf(("GDI32: GetMetaFileBitsEx"));
209 return O32_GetMetaFileBitsEx(arg1, arg2, arg3);
210}
211//******************************************************************************
212//******************************************************************************
213HENHMETAFILE WIN32API SetEnhMetaFileBits( UINT arg1, const BYTE * arg2)
214{
215 dprintf(("GDI32: SetEnhMetaFileBits NOT IMPLEMENTED"));
216//// return O32_SetEnhMetaFileBits(arg1, arg2);
217 return 0;
218}
219//******************************************************************************
220//******************************************************************************
221HMETAFILE WIN32API SetMetaFileBitsEx( UINT arg1, const BYTE * arg2)
222{
223 dprintf(("GDI32: SetMetaFileBitsEx"));
224 return O32_SetMetaFileBitsEx(arg1, (PBYTE)arg2);
225}
226//******************************************************************************
227//******************************************************************************
228HENHMETAFILE WIN32API SetWinMetaFileBits( UINT arg1, const BYTE * arg2, HDC arg3, const METAFILEPICT * arg4)
229{
230 dprintf(("GDI32: SetWinMetaFileBits NOT IMPLEMENTED"));
231//// return O32_SetWinMetaFileBits(arg1, arg2, arg3, arg4);
232 return 0;
233}
234//******************************************************************************
235//******************************************************************************
236UINT WIN32API GetWinMetaFileBits( HENHMETAFILE arg1, UINT arg2, PBYTE arg3, int arg4, HDC arg5)
237{
238 dprintf(("GDI32: GetWinMetaFileBits NOT IMPLEMENTED"));
239//// return O32_GetWinMetaFileBits(arg1, arg2, arg3, arg4, arg5);
240 return 0;
241}
242//******************************************************************************
243//******************************************************************************
244UINT WIN32API GetEnhMetaFileHeader( HENHMETAFILE arg1, UINT arg2, LPENHMETAHEADER arg3)
245{
246 dprintf(("GDI32: GetEnhMetaFileHeader NOT IMPLEMENTED"));
247//// return O32_GetEnhMetaFileHeader(arg1, arg2, arg3);
248 return 0;
249}
250//******************************************************************************
251//******************************************************************************
252UINT WIN32API GetEnhMetaFilePaletteEntries( HENHMETAFILE arg1, UINT arg2, PPALETTEENTRY arg3)
253{
254 dprintf(("GDI32: GetEnhMetaFilePaletteEntries NOT IMPLEMENTED"));
255//// return O32_GetEnhMetaFilePaletteEntries(arg1, arg2, arg3);
256 return 0;
257}
258//******************************************************************************
259//******************************************************************************
260BOOL WIN32API PlayEnhMetaFile( HDC arg1, HENHMETAFILE arg2, const RECT * arg3)
261{
262 dprintf(("GDI32: PlayEnhMetaFile NOT IMPLEMENTED"));
263//// return O32_PlayEnhMetaFile(arg1, arg2, arg3);
264 return 0;
265}
266//******************************************************************************
267//******************************************************************************
268BOOL WIN32API PlayMetaFile( HDC arg1, HMETAFILE arg2)
269{
270 dprintf(("GDI32: PlayMetaFile"));
271 return O32_PlayMetaFile(arg1, arg2);
272}
273//******************************************************************************
274//******************************************************************************
275BOOL WIN32API PlayMetaFileRecord( HDC arg1, LPHANDLETABLE arg2, LPMETARECORD arg3, UINT arg4)
276{
277 dprintf(("GDI32: PlayMetaFileRecord"));
278 return O32_PlayMetaFileRecord(arg1, arg2, arg3, (int)arg4);
279}
280//******************************************************************************
281//******************************************************************************
282BOOL WIN32API PlayEnhMetaFileRecord( /*KSO Thu 21.05.1998*/
283 HDC arg1,
284 LPHANDLETABLE arg2,
285 CONST ENHMETARECORD *arg3,
286 UINT arg4
287 )
288{
289 dprintf(("GDI32: PlayEnhMetaFileRecord - NOT IMPLEMENTED"));
290 return FALSE;
291}
292//******************************************************************************
293UINT WIN32API GetEnhMetaFileDescriptionA(HENHMETAFILE arg1,
294 UINT arg2,
295 LPSTR arg3)
296{
297 dprintf(("GDI32: GetEnhMetaFileDescriptionA - NOT IMPLEMENTED"));
298 return FALSE;
299}
300//******************************************************************************
301//******************************************************************************
302UINT WIN32API GetEnhMetaFileDescriptionW(HENHMETAFILE arg1,
303 UINT arg2,
304 LPWSTR arg3)
305{
306 dprintf(("GDI32: GetEnhMetaFileDescriptionW - stub\n"));
307 return FALSE;
308}
309//******************************************************************************
310//******************************************************************************
Note: See TracBrowser for help on using the repository browser.