home *** CD-ROM | disk | FTP | other *** search
/ Geek Gadgets 1 / ADE-1.bin / ade-dist / fd2inline-1.0-bin.lha / include / inline / wb.h < prev   
Encoding:
C/C++ Source or Header  |  1996-10-12  |  2.2 KB  |  56 lines

  1. #ifndef _INLINE_WB_H
  2. #define _INLINE_WB_H
  3.  
  4. #ifndef __INLINE_MACROS_H
  5. #include <inline/macros.h>
  6. #endif
  7.  
  8. #ifndef WB_BASE_NAME
  9. #define WB_BASE_NAME WorkbenchBase
  10. #endif
  11.  
  12. #define AddAppIconA(id, userdata, text, msgport, lock, diskobj, taglist) \
  13.     LP7A4(0x3c, struct AppIcon *, AddAppIconA, unsigned long, id, d0, unsigned long, userdata, d1, UBYTE *, text, a0, struct MsgPort *, msgport, a1, struct FileLock *, lock, a2, struct DiskObject *, diskobj, a3, struct TagItem *, taglist, d7, \
  14.     , WB_BASE_NAME)
  15.  
  16. #ifndef NO_INLINE_STDARG
  17. #define AddAppIcon(a0, a1, a2, a3, a4, a5, tags...) \
  18.     ({ULONG _tags[] = { tags }; AddAppIconA((a0), (a1), (a2), (a3), (a4), (a5), (struct TagItem *)_tags);})
  19. #endif /* !NO_INLINE_STDARG */
  20.  
  21. #define AddAppMenuItemA(id, userdata, text, msgport, taglist) \
  22.     LP5(0x48, struct AppMenuItem *, AddAppMenuItemA, unsigned long, id, d0, unsigned long, userdata, d1, UBYTE *, text, a0, struct MsgPort *, msgport, a1, struct TagItem *, taglist, a2, \
  23.     , WB_BASE_NAME)
  24.  
  25. #ifndef NO_INLINE_STDARG
  26. #define AddAppMenuItem(a0, a1, a2, a3, tags...) \
  27.     ({ULONG _tags[] = { tags }; AddAppMenuItemA((a0), (a1), (a2), (a3), (struct TagItem *)_tags);})
  28. #endif /* !NO_INLINE_STDARG */
  29.  
  30. #define AddAppWindowA(id, userdata, window, msgport, taglist) \
  31.     LP5(0x30, struct AppWindow *, AddAppWindowA, unsigned long, id, d0, unsigned long, userdata, d1, struct Window *, window, a0, struct MsgPort *, msgport, a1, struct TagItem *, taglist, a2, \
  32.     , WB_BASE_NAME)
  33.  
  34. #ifndef NO_INLINE_STDARG
  35. #define AddAppWindow(a0, a1, a2, a3, tags...) \
  36.     ({ULONG _tags[] = { tags }; AddAppWindowA((a0), (a1), (a2), (a3), (struct TagItem *)_tags);})
  37. #endif /* !NO_INLINE_STDARG */
  38.  
  39. #define RemoveAppIcon(appIcon) \
  40.     LP1(0x42, BOOL, RemoveAppIcon, struct AppIcon *, appIcon, a0, \
  41.     , WB_BASE_NAME)
  42.  
  43. #define RemoveAppMenuItem(appMenuItem) \
  44.     LP1(0x4e, BOOL, RemoveAppMenuItem, struct AppMenuItem *, appMenuItem, a0, \
  45.     , WB_BASE_NAME)
  46.  
  47. #define RemoveAppWindow(appWindow) \
  48.     LP1(0x36, BOOL, RemoveAppWindow, struct AppWindow *, appWindow, a0, \
  49.     , WB_BASE_NAME)
  50.  
  51. #define WBInfo(lock, name, screen) \
  52.     LP3NR(0x5a, WBInfo, BPTR, lock, a0, STRPTR, name, a1, struct Screen *, screen, a2, \
  53.     , WB_BASE_NAME)
  54.  
  55. #endif /* _INLINE_WB_H */
  56.