mmakefile ignored
[cake.git] / workbench / libs / icon / support.h
blobf849f07cd19dae4cdc7a3825cfb5cd9646e13084
1 #ifndef _SUPPORT_H_
2 #define _SUPPORT_H_
4 /*
5 Copyright © 1995-2003, The AROS Development Team. All rights reserved.
6 $Id$
7 */
9 #include "icon_intern.h"
11 /*** Prototypes *************************************************************/
12 BPTR __OpenIcon_WB(CONST_STRPTR name, LONG mode, struct IconBase *IconBase);
13 BOOL __CloseIcon_WB(BPTR file, struct IconBase *IconBase);
14 BPTR __OpenDefaultIcon_WB(CONST_STRPTR name, LONG mode, struct IconBase *IconBase);
15 BOOL __CloseDefaultIcon_WB(BPTR file, struct IconBase *IconBase);
17 struct DiskObject *__ReadIcon_WB(BPTR file, struct IconBase *IconBase);
18 BOOL __WriteIcon_WB(BPTR file, struct DiskObject *icon, struct IconBase *IconBase);
20 BPTR __LockObject_WB(CONST_STRPTR name, LONG mode, struct Library *IconBase);
21 VOID __UnLockObject_WB(BPTR lock, struct Library *IconBase);
23 CONST_STRPTR GetDefaultIconName(LONG type);
25 LONG CalcIconHash(struct DiskObject *dobj);
26 VOID AddIconToList(struct NativeIcon *icon, struct IconBase *IconBase);
27 VOID RemoveIconFromList(struct NativeIcon *icon, struct IconBase *IconBase);
28 struct NativeIcon *GetNativeIcon(struct DiskObject *dobj, struct IconBase *IconBase);
30 /*** Macros *****************************************************************/
31 #define OpenIcon(name, mode) (__OpenIcon_WB((name), (mode), LB(IconBase)))
32 #define CloseIcon(file) (__CloseIcon_WB((file), LB(IconBase)))
33 #define OpenDefaultIcon(name, mode) (__OpenDefaultIcon_WB((name), (mode), LB(IconBase)))
34 #define CloseDefaultIcon(file) (__CloseDefaultIcon_WB((file), LB(IconBase)))
36 #define ReadIcon(file) (__ReadIcon_WB((file), LB(IconBase)))
37 #define WriteIcon(file, icon) (__WriteIcon_WB((file), (icon), LB(IconBase)))
39 #define LockObject(name, mode) (__LockObject_WB((name), (mode), IconBase))
40 #define UnLockObject(lock) (__UnLockObject_WB((lock), IconBase))
42 #endif /* _SUPPORT_H_ */