source: trunk/include/objhandle.h@ 4927

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

update

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