#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include "enhmfdrv/enhmetafiledrv.h"
#include "gdi_private.h"
#include "wine/debug.h"
Go to the source code of this file.
|
| WINE_DEFAULT_DEBUG_CHANNEL (enhmetafile) |
|
static UINT | EMFDRV_AddHandle (PHYSDEV dev, HGDIOBJ obj) |
|
static UINT | EMFDRV_FindObject (PHYSDEV dev, HGDIOBJ obj) |
|
BOOL | EMFDRV_DeleteObject (PHYSDEV dev, HGDIOBJ obj) |
|
HBITMAP | EMFDRV_SelectBitmap (PHYSDEV dev, HBITMAP hbitmap) |
|
DWORD | EMFDRV_CreateBrushIndirect (PHYSDEV dev, HBRUSH hBrush) |
|
HBRUSH | EMFDRV_SelectBrush (PHYSDEV dev, HBRUSH hBrush, const struct brush_pattern *pattern) |
|
static BOOL | EMFDRV_CreateFontIndirect (PHYSDEV dev, HFONT hFont) |
|
HFONT | EMFDRV_SelectFont (PHYSDEV dev, HFONT hFont, UINT *aa_flags) |
|
static DWORD | EMFDRV_CreatePenIndirect (PHYSDEV dev, HPEN hPen) |
|
HPEN | EMFDRV_SelectPen (PHYSDEV dev, HPEN hPen, const struct brush_pattern *pattern) |
|
static DWORD | EMFDRV_CreatePalette (PHYSDEV dev, HPALETTE hPal) |
|
HPALETTE | EMFDRV_SelectPalette (PHYSDEV dev, HPALETTE hPal, BOOL force) |
|
COLORREF | EMFDRV_SetDCBrushColor (PHYSDEV dev, COLORREF color) |
|
COLORREF | EMFDRV_SetDCPenColor (PHYSDEV dev, COLORREF color) |
|
BOOL | EMFDRV_GdiComment (PHYSDEV dev, UINT bytes, const BYTE *buffer) |
|
◆ EMFDRV_AddHandle()
◆ EMFDRV_CreateBrushIndirect()
DWORD EMFDRV_CreateBrushIndirect |
( |
PHYSDEV |
dev, |
|
|
HBRUSH |
hBrush |
|
) |
| |
Definition at line 111 of file objects.c.
112{
115
116 if (!
GetObjectA( hBrush,
sizeof(logbrush), &logbrush ))
return 0;
117
122 {
130
133 }
134 break;
137 {
139#ifdef __REACTOS__
141#else
143#endif
148
151
154 if(!emr) break;
155
157 {
158
159
160
161
162
163
164
167
168
169
172 }
173 else
174 {
177 emr->
cbBmi = info_size;
178 }
184
187
191 }
192 break;
193
194 default:
196 break;
197 }
199}
#define HeapFree(x, y, z)
static UINT EMFDRV_AddHandle(PHYSDEV dev, HGDIOBJ obj)
static int get_dib_info_size(const BITMAPINFO *info, UINT coloruse)
BOOL get_brush_bitmap_info(HBRUSH handle, BITMAPINFO *info, void *bits, UINT *usage) DECLSPEC_HIDDEN
GLenum GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * bits
GLsizeiptr const GLvoid GLenum usage
#define memcpy(s1, s2, n)
#define FIELD_OFFSET(t, f)
int WINAPI GetObjectA(_In_ HANDLE h, _In_ int c, _Out_writes_bytes_opt_(c) LPVOID pv)
#define EMR_CREATEMONOBRUSH
struct tagBITMAPINFO BITMAPINFO
struct tagEMRCREATEDIBPATTERNBRUSHPT EMRCREATEDIBPATTERNBRUSHPT
#define EMR_CREATEDIBPATTERNBRUSHPT
#define EMR_CREATEBRUSHINDIRECT
Referenced by EMFDRV_FillRgn(), EMFDRV_FrameRgn(), EMFDRV_SelectBrush(), and EMFDRV_SetDCBrushColor().
◆ EMFDRV_CreateFontIndirect()
Definition at line 244 of file objects.c.
245{
249
251
253 emr.
emr.
nSize = (
sizeof(emr) + 3) / 4 * 4;
274
278}
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
WCHAR elfFullName[LF_FULLFACESIZE]
BYTE elfVendorId[ELF_VENDOR_SIZE]
WCHAR elfStyle[LF_FACESIZE]
int WINAPI GetObjectW(_In_ HANDLE h, _In_ int c, _Out_writes_bytes_opt_(c) LPVOID pv)
#define EMR_EXTCREATEFONTINDIRECTW
#define PAN_CULTURE_LATIN
Referenced by EMFDRV_SelectFont().
◆ EMFDRV_CreatePalette()
static DWORD EMFDRV_CreatePalette |
( |
PHYSDEV |
dev, |
|
|
HPALETTE |
hPal |
|
) |
| |
|
static |
Definition at line 409 of file objects.c.
410{
412 struct {
415 } pal;
416
417 memset( &pal, 0,
sizeof(pal) );
418
419 if (!
GetObjectW( hPal,
sizeof(pal.hdr.lgpl) +
sizeof(pal.entry), &pal.hdr.lgpl ))
420 return 0;
421
422 for (
i = 0;
i < pal.hdr.lgpl.palNumEntries;
i++)
423 pal.hdr.lgpl.palPalEntry[
i].peFlags = 0;
424
426 pal.hdr.emr.nSize =
sizeof(pal.hdr) + pal.hdr.lgpl.palNumEntries *
sizeof(
PALETTEENTRY);
428
430 pal.hdr.ihPal = 0;
431 return pal.hdr.ihPal;
432}
#define EMR_CREATEPALETTE
struct tagPALETTEENTRY PALETTEENTRY
Referenced by EMFDRV_SelectPalette().
◆ EMFDRV_CreatePenIndirect()
static DWORD EMFDRV_CreatePenIndirect |
( |
PHYSDEV |
dev, |
|
|
HPEN |
hPen |
|
) |
| |
|
static |
◆ EMFDRV_DeleteObject()
Definition at line 77 of file objects.c.
78{
83
85
89
92
96}
static UINT EMFDRV_FindObject(PHYSDEV dev, HGDIOBJ obj)
◆ EMFDRV_FindObject()
◆ EMFDRV_GdiComment()
Definition at line 520 of file objects.c.
521{
525
526 rounded_size = (
bytes+3) & ~3;
528
535
537
539
541}
static unsigned char bytes[4]
#define offsetof(TYPE, MEMBER)
◆ EMFDRV_SelectBitmap()
◆ EMFDRV_SelectBrush()
Definition at line 205 of file objects.c.
206{
211
213
214
215
216
217
218
220 {
222 {
224 goto found;
225 }
226 }
228 goto found;
229
232
233 found:
238}
DWORD EMFDRV_CreateBrushIndirect(PHYSDEV dev, HBRUSH hBrush)
void GDI_hdc_using_object(HGDIOBJ obj, HDC hdc) DECLSPEC_HIDDEN
HGDIOBJ WINAPI GetStockObject(_In_ int)
◆ EMFDRV_SelectFont()
Definition at line 284 of file objects.c.
285{
290
292
293
294
295
296
297
298
300 {
302 {
304 goto found;
305 }
306 }
307
309 goto found;
310
313
314 found:
319 return 0;
320done:
325}
static BOOL EMFDRV_CreateFontIndirect(PHYSDEV dev, HFONT hFont)
#define GET_NEXT_PHYSDEV(dev, func)
◆ EMFDRV_SelectPalette()
HPALETTE EMFDRV_SelectPalette |
( |
PHYSDEV |
dev, |
|
|
HPALETTE |
hPal, |
|
|
BOOL |
force |
|
) |
| |
Definition at line 437 of file objects.c.
438{
442
444
446 {
448 goto found;
449 }
450
452 goto found;
453
456
457found:
462}
static DWORD EMFDRV_CreatePalette(PHYSDEV dev, HPALETTE hPal)
#define EMR_SELECTPALETTE
◆ EMFDRV_SelectPen()
Definition at line 369 of file objects.c.
370{
375
377
378
379
380
381
382
383
385 {
387 {
389 goto found;
390 }
391 }
393 goto found;
394
397
398 found:
403}
static DWORD EMFDRV_CreatePenIndirect(PHYSDEV dev, HPEN hPen)
◆ EMFDRV_SetDCBrushColor()
Definition at line 467 of file objects.c.
468{
470#ifndef __REACTOS__
471 DC *
dc = get_physdev_dc(
dev );
472#endif
475#ifdef __REACTOS__
477#else
479#endif
488}
HGDIOBJ WINAPI GetCurrentObject(_In_ HDC, _In_ UINT)
HBRUSH WINAPI CreateSolidBrush(_In_ COLORREF)
◆ EMFDRV_SetDCPenColor()
Definition at line 493 of file objects.c.
494{
496#ifndef __REACTOS__
497 DC *
dc = get_physdev_dc(
dev );
498#endif
502#ifdef __REACTOS__
504#else
506#endif
515}
HPEN WINAPI CreatePenIndirect(_In_ const LOGPEN *)
◆ WINE_DEFAULT_DEBUG_CHANNEL()