| 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 |  | 
|---|
| 18 | typedef 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 |  | 
|---|
| 38 | BOOL  ObjAllocateHandle(HANDLE *hObject, DWORD dwUserData, ObjectType type); | 
|---|
| 39 | void  ObjFreeHandle(HANDLE hObject); | 
|---|
| 40 | DWORD ObjGetHandleData(HANDLE hObject, ObjectType type); | 
|---|
| 41 |  | 
|---|
| 42 | #define ObjWinToOS2Region(a)    ObjGetHandleData(a, GDIOBJ_REGION) | 
|---|
| 43 |  | 
|---|
| 44 | ObjectType ObjGetHandleType(HANDLE hObject); | 
|---|
| 45 |  | 
|---|
| 46 | #endif //__OBJHANDLE_H__ | 
|---|
       
      
  Note:
 See   
TracBrowser
 for help on using the repository browser.