New debug scheme with explicit debug channels declaration.
[wine/hacks.git] / graphics / psdrv / objects.c
blob81e1095a5e8cca71ac30dc5f6af304218aaf5dc2
1 /*
2 * PostScript driver object handling
4 * Copyright 1998 Huw D M Davies
6 */
8 #include "psdrv.h"
9 #include "font.h"
10 #include "pen.h"
11 #include "brush.h"
12 #include "bitmap.h"
13 #include "debug.h"
15 DEFAULT_DEBUG_CHANNEL(psdrv)
17 /***********************************************************************
18 * PSDRV_BITMAP_SelectObject
20 static HBITMAP16 PSDRV_BITMAP_SelectObject( DC * dc, HBITMAP16 hbitmap,
21 BITMAPOBJ * bmp )
23 FIXME(psdrv, "stub\n");
24 return 0;
28 /***********************************************************************
29 * PSDRV_SelectObject
31 HGDIOBJ PSDRV_SelectObject( DC *dc, HGDIOBJ handle )
33 GDIOBJHDR * ptr = GDI_GetObjPtr( handle, MAGIC_DONTCARE );
34 HGDIOBJ ret = 0;
36 if (!ptr) return 0;
37 TRACE(psdrv, "hdc=%04x %04x\n", dc->hSelf, handle );
39 switch(ptr->wMagic)
41 case PEN_MAGIC:
42 ret = PSDRV_PEN_SelectObject( dc, handle, (PENOBJ *)ptr );
43 break;
44 case BRUSH_MAGIC:
45 ret = PSDRV_BRUSH_SelectObject( dc, handle, (BRUSHOBJ *)ptr );
46 break;
47 case BITMAP_MAGIC:
48 ret = PSDRV_BITMAP_SelectObject( dc, handle, (BITMAPOBJ *)ptr );
49 break;
50 case FONT_MAGIC:
51 ret = PSDRV_FONT_SelectObject( dc, handle, (FONTOBJ *)ptr );
52 break;
53 case REGION_MAGIC:
54 ret = (HGDIOBJ16)SelectClipRgn16( dc->hSelf, handle );
55 break;
56 default:
57 ERR(psdrv, "Unknown object magic %04x\n", ptr->wMagic);
58 break;
60 GDI_HEAP_UNLOCK( handle );
61 return ret;