source: trunk/include/objhandle.h@ 6552

Last change on this file since 6552 was 6261, checked in by sandervl, 24 years ago

* empty log message *

File size: 1.1 KB
Line 
1/*
2 * Win32 Handle Management Code for OS/2 (GDI32)
3 *
4 *
5 * Copyright 2000 Sander van Leeuwen (sandervl@xs4all.nl)
6 *
7 *
8 * Project Odin Software License can be found in LICENSE.TXT
9 *
10 */
11#ifndef __OBJHANDLE_H__
12#define __OBJHANDLE_H__
13
14#define MAX_OBJECT_HANDLES 1024
15#define OBJHANDLE_MAGIC_MASK 0x00FFFFFF
16#define HANDLE_OBJ_ERROR -1
17
18typedef enum {
19 GDIOBJ_NONE = 0x00,
20 GDIOBJ_REGION = 0xD1,
21 GDIOBJ_BITMAP = 0xD2,
22 GDIOBJ_BRUSH = 0xD3,
23 GDIOBJ_PALETTE = 0xD4,
24 GDIOBJ_FONT = 0xD5,
25 USEROBJ_MENU = 0xD6,
26 USEROBJ_ACCEL = 0xD7,
27 USEROBJ_CURSORICON = 0xD8,
28 GDIOBJ_OPEN32 = 0xE0,
29 GDIOBJ_INVALID = 0xFF
30//...
31} ObjectType;
32
33#define MAKE_HANDLE(a) (a << 24)
34#define OBJHANDLE_MAGIC(a) (a >> 24)
35
36//...
37
38BOOL ObjAllocateHandle(HANDLE *hObject, DWORD dwUserData, ObjectType type);
39void ObjFreeHandle(HANDLE hObject);
40DWORD ObjGetHandleData(HANDLE hObject, ObjectType type);
41
42#define ObjWinToOS2Region(a) ObjGetHandleData(a, GDIOBJ_REGION)
43
44ObjectType ObjGetHandleType(HANDLE hObject);
45
46#endif //__OBJHANDLE_H__
Note: See TracBrowser for help on using the repository browser.