home *** CD-ROM | disk | FTP | other *** search
/ Amiga MA Magazine 1998 #6 / amigamamagazinepolishissue1998.iso / coders / iffconverter / iffconverter.h < prev    next >
C/C++ Source or Header  |  1997-01-07  |  6KB  |  235 lines

  1. /*
  2. **     $VER: IFFConverter.h V0.01 (13-06-95)
  3. **
  4. **     Author:  Gerben Venekamp
  5. **     Updates: 13-06-96  Version 0.01
  6. **
  7. **
  8. **  Include file for IFFConveter modules.
  9. **  This include file contains external declarations.
  10. **
  11. */
  12.  
  13. #ifndef IFFCONVERTER_H
  14. #define IFFCONVERTER_H
  15.  
  16. #include <exec/types.h>
  17. #include <libraries/gadtools.h>
  18.  
  19. #include "Gadgets_enum.h"
  20.  
  21. // Define Macros
  22. #define Version   0.5
  23. #define VersionQ "0.5"
  24. #define VersionText "$VER: IFFconverter V0.5 (05-12-96)"
  25. #define Lib_Version   39L
  26. #define Lib_VersionQ "39"
  27. #define PanelHeight 104
  28. #define DefaultSaveBufferSize 32000
  29. #define ExtensionSize 6
  30.  
  31. typedef struct {
  32.    WORD ClipLeft;
  33.    WORD ClipTop;
  34.    WORD ClipWidth;
  35.    WORD ClipHeight;
  36.    WORD ClipPointX;
  37.    WORD ClipPointY;
  38.    ULONG ClipSize;
  39. } IFFClip_s;
  40.  
  41. typedef struct SavePicStruct_s {
  42.    struct Screen *ViewScreen;
  43.    ULONG FileMode;
  44.    ULONG RenderMode;
  45.    IFFClip_s IFFClip;
  46. } SavePicStruct_t;
  47.  
  48. // Define external variables
  49.  
  50. extern BOOL PictureValid;
  51. extern BOOL DrawHairCross;
  52.  
  53. extern enum ByteBoundry ByteBoundry;
  54.  
  55. extern APTR VisualInfo;
  56. extern APTR LoadFileName;
  57. extern APTR SaveFileName;
  58. extern APTR SystemFont;
  59. extern APTR SaveBuffer;
  60.  
  61. extern ULONG  *ColourMap;
  62. extern ULONG  *SColourMap;
  63. extern ULONG  *PlanePtrs;
  64. extern STRPTR GraphicsDrawer;
  65. extern STRPTR BPLCON3OrMask;
  66.  
  67. extern ULONG ColourMapSize;
  68. extern ULONG PlanePtrsSize;
  69. extern ULONG LoadFileNameSize;
  70. extern ULONG SaveFileNameSize;
  71. extern ULONG SaveBufferSize;
  72. extern ULONG GraphicsDrawerSize;
  73.  
  74. extern UWORD PicWidth;
  75. extern UWORD PicHeight;
  76. extern UWORD PicDepth;
  77.  
  78. extern UWORD TAB1;
  79. extern UWORD TAB2;
  80. extern UWORD NumberOfItems1;
  81. extern UWORD NumberOfItems2;
  82.  
  83. extern ULONG PicSize;
  84.  
  85. extern IFFClip_s IFFClip;
  86.    
  87. extern WORD OldClipLeft;
  88.  
  89. extern WORD PubScreenWidth;
  90. extern WORD PubScreenHeight;
  91.  
  92. extern char ESW_Title[];
  93. extern char ESW_PicInfo[];
  94.  
  95. extern char EST_LockErr[];
  96. extern char EST_OpenLibErr[];
  97. extern char EST_OpenErr[];
  98. extern char EST_AllocErr[];
  99. extern char EST_AllocMemErr[];
  100. extern char EST_NoVisIErr[];
  101. extern char EST_NoIFFErr[];
  102. extern char EST_NoIFFILBMErr[];
  103. extern char EST_Fail[];
  104. extern char EST_NotFound[];
  105. extern char EST_GadCreate[];
  106. extern char EST_AslNoFreeStore[];
  107. extern char EST_AslNoMoreEntries[];
  108. extern char EST_NotImplemented[];
  109.  
  110. extern char ESG_RetryCancel[];
  111. extern char ESG_Okay[];
  112.  
  113. extern struct IntuitionBase *IntuitionBase;
  114. extern struct DosLibrary    *DOSBase;
  115. extern struct Library       *GadToolsBase;
  116. extern struct Library       *AslBase;
  117. extern struct Library       *IFFParseBase;
  118. extern struct GfxBase       *GfxBase;
  119. extern struct Library       *DiskfontBase;
  120. extern struct Library       *IconBase;
  121.  
  122. extern struct FileRequester *Asl_FRLoad;
  123. extern struct FileRequester *Asl_FRSave;
  124.  
  125. extern struct Screen *ViewScreen;
  126. extern struct Screen *PanelScreen;
  127. extern struct Window *ViewWindow;
  128. extern struct Window *PanelWindow;
  129. extern struct Window *InfoWindow;
  130. extern struct Gadget *FirstGadget;
  131.  
  132. struct MyNewGadget {
  133.    struct NewGadget mng;
  134.    ULONG MyGadgetType;
  135.    APTR MyGadgetTags;
  136. };
  137.  
  138. extern struct MyNewGadget PanelGadgets[];
  139.  
  140. extern struct TextAttr System_8;
  141.  
  142. extern ULONG EnableGadget[];
  143. extern ULONG DisableGadget[];
  144. extern ULONG SetTextGadget[];
  145. extern ULONG SetIntegerGadget[];
  146. extern ULONG MakeChecked[];
  147. extern ULONG UnmakeChecked[];
  148. extern UBYTE *CYL_FileMode[];
  149. extern UBYTE *CYL_RenderMode[];
  150. extern UBYTE *MXL_ByteBoundry[];
  151. extern ULONG GT_FileMode[];
  152. extern ULONG GT_RenderMode[];
  153. extern ULONG GT_ByteBoundry[];
  154.  
  155. enum RVSError {
  156.    RVS_Okay,
  157.    RVS_PictureFailure,
  158.    RVS_NoWindow_PictureOkay,
  159.    RVS_NoWindow_PictureFailure,
  160.    RVS_BlackScreen,
  161.    RVS_NoScreen,
  162.    RVS_NoColourMap
  163. };
  164.  
  165. enum IFF_ErrorNumber {
  166.    IFFerror_NoIntuition,
  167.    IFFerror_NoLibrary,
  168.    IFFerror_NoMemory,
  169.    IFFerror_NoMemoryDoReturn,
  170.    IFFerror_NoLock,
  171.    IFFerror_NoLockDoReturn,
  172.    IFFerror_GadCreate,
  173.    IFFerror_OpenErr,
  174.    IFFerror_NoVisIErr,
  175.    IFFerror_AllocErr,
  176.    IFFerror_NotFound,
  177.    IFFerror_Fail,
  178.    IFFerror_NoIFFErr,
  179.    IFFerror_AslNoFreeStore,
  180.    IFFerror_AslNoMoreEntries,
  181.    IFFerror_NotImplemented,
  182.    IFFerror_NotOpen,
  183.    IFFerror_FileExistsAsk
  184. };
  185.  
  186.  
  187. enum Fade {
  188.    FADE_UP,
  189.    FADE_DOWN
  190. };
  191.  
  192. // Define external prototyes
  193. extern void  AllocAsl_Requests(void);
  194. extern void  AllocateMemory(void);
  195. extern BOOL  AllocThisMem(APTR, ULONG, ULONG);
  196. extern BOOL  AllocThisMemNoComplain(APTR, ULONG, ULONG);
  197. extern void  CleanExit(int);
  198. extern void  CleanLibExit(int);
  199. extern void  CloseDiskFonts(void);
  200. extern void  CloseFonts(void);
  201. extern void  CloseLibraries(void);
  202. extern void  CloseScreens(void);
  203. extern void  CloseThisScreen(struct Screen **);
  204. extern void  CloseThisWindow(struct Window **);
  205. extern void  CloseWindows(void);
  206. extern ULONG ConvertDecimal(STRPTR);
  207. extern ULONG DisplayInfo(void);
  208. extern LONG  ErrorHandler(enum enum_ErrorNumber, APTR, ...);
  209. extern void  __asm exit(register __d0 LONG);
  210. extern void  FadeColours(enum Fade, UWORD, struct Screen*);
  211. extern void  FreeAsl_Requests(void);
  212. extern void  FreeMemory(void);
  213. extern void  FreeThisMem(APTR, ULONG);
  214. extern void  GetDiskFonts(void);
  215. extern void  GetGadgetStatus(ULONG, ULONG, ...);
  216. extern BOOL  GetNewColourMap(UBYTE *, UWORD);
  217. extern void  HandleIntuiMessages(void);
  218. extern void  InitGadgets(void);
  219. extern void  LoadPicture(enum FileModeType);
  220. extern void  MakeDecimal(LONG, char *, UWORD);
  221. extern void  OpenLibraries(void);
  222. extern void  OpenScreens(void);
  223. extern void  OpenWindows(void);
  224. extern void  PositionScreen(struct Screen*, WORD, WORD);
  225. extern enum  RVSError RebuildViewScreen(struct BitMapHeader *, ULONG, APTR, APTR);
  226. extern void  SavePicture(SavePicStruct_t *);
  227. //extern void  SavePicture(struct Screen *, enum FileModeType, enum RenderModeType, IFFClip_s *);
  228. extern BOOL  StringCompare(STRPTR, STRPTR);
  229. extern UWORD StringLength(char *);
  230. extern void  UpdateDimensions(ULONG, ...);
  231. extern void  UpdateGadgets(ULONG, ...);
  232.  
  233.  
  234. #endif    /*  IFFCONVERTER_H  */
  235.