source: trunk/include/objhandle.h@ 4766

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

* empty log message *

File size: 1.0 KB
Line 
1/* $Id: objhandle.h,v 1.3 2000-12-09 14:43:35 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//...
29} ObjectType;
30
31#define MAKE_HANDLE(a) (a << 24)
32#define OBJHANDLE_MAGIC(a) (a >> 24)
33
34//...
35
36BOOL ObjAllocateHandle(HANDLE *hObject, DWORD dwUserData, ObjectType type);
37void ObjFreeHandle(HANDLE hObject);
38DWORD ObjGetHandleData(HANDLE hObject, ObjectType type);
39
40#define ObjWinToOS2Region(a) ObjGetHandleData(a, GDIOBJ_REGION)
41
42ObjectType ObjGetHandleType(HANDLE hObject);
43
44#endif //__OBJHANDLE_H__
Note: See TracBrowser for help on using the repository browser.