1 #ifndef CLIB_GUIGFX_H
    2 #define CLIB_GUIGFX_H
    3 /*
    4 **	$VER: guigfx_protos.h v16.0 (23.5.99)
    5 **
    6 **	C prototype definitions
    7 **
    8 **	© TEK neoscientists
    9 */
   10 
   11 #ifndef  EXEC_TYPES_H
   12 #include <exec/types.h>
   13 #endif
   14 
   15 #ifndef  UTILITY_TAGITEM_H
   16 #include <utility/tagitem.h>
   17 #endif
   18 
   19 #ifndef  GRAPHICS_RASTPORT_H
   20 #include <graphics/rastport.h>
   21 #endif
   22 
   23 #ifndef  GRAPHICS_VIEW_H
   24 #include <graphics/view.h>
   25 #endif
   26 
   27 #ifdef __cplusplus
   28 extern "C" {
   29 #endif /* __cplusplus */
   30 
   31 APTR MakePicture(APTR array, UWORD width, UWORD height, ...);
   32 APTR MakePictureA(APTR array, UWORD width, UWORD height, struct TagItem *tags);
   33 APTR LoadPicture(STRPTR filename, ...);
   34 APTR LoadPictureA(STRPTR filename, struct TagItem *tags);
   35 APTR ReadPicture(struct RastPort *rp, struct ColorMap *cm, UWORD x, UWORD y, UWORD width, UWORD height, ...);
   36 APTR ReadPictureA(struct RastPort *rp, struct ColorMap *cm, UWORD x, UWORD y, UWORD width, UWORD height, struct TagItem *tags);
   37 APTR ClonePicture(APTR pic, ...);
   38 APTR ClonePictureA(APTR pic, struct TagItem *tags);
   39 
   40 void DeletePicture(APTR pic);
   41 
   42 APTR AddPicture(APTR psm, APTR pic, ...);
   43 APTR AddPictureA(APTR psm, APTR pic, struct TagItem *tags);
   44 APTR AddPalette(APTR psm, APTR palette, ...);
   45 APTR AddPaletteA(APTR psm, APTR palette, struct TagItem *tags);
   46 APTR AddPixelArray(APTR psm, APTR array, UWORD width, UWORD height, ...);
   47 APTR AddPixelArrayA(APTR psm, APTR array, UWORD width, UWORD height, struct TagItem *tags);
   48 
   49 void RemColorHandle(APTR colorhandle);
   50 
   51 APTR CreatePenShareMap(Tag tag1, ...);
   52 APTR CreatePenShareMapA(struct TagItem *tags);
   53 void DeletePenShareMap(APTR psm);
   54 
   55 APTR ObtainDrawHandle(APTR psm, struct RastPort *rp, struct ColorMap *cm, ...);
   56 APTR ObtainDrawHandleA(APTR psm, struct RastPort *rp, struct ColorMap *cm, struct TagItem *tags);
   57 
   58 void ReleaseDrawHandle(APTR drawhandle);
   59 
   60 
   61 BOOL DrawPicture(APTR drawhandle, APTR pic, UWORD x, UWORD y, ...);
   62 BOOL DrawPictureA(APTR drawhandle, APTR pic, UWORD x, UWORD y, struct TagItem *tags);
   63 
   64 BOOL MapPalette(APTR drawhandle, APTR palette, UBYTE *pentab, ...);
   65 BOOL MapPaletteA(APTR drawhandle, APTR palette, UBYTE *pentab, struct TagItem *tags);
   66 
   67 LONG MapPen(APTR drawhandle, ULONG rgb, ...);
   68 LONG MapPenA(APTR drawhandle, ULONG rgb, struct TagItem *tags);
   69 
   70 struct BitMap *CreatePictureBitMap(APTR drawhandle, APTR pic, ...);
   71 struct BitMap *CreatePictureBitMapA(APTR drawhandle, APTR pic, struct TagItem *tags);
   72 
   73 
   74 ULONG DoPictureMethod(APTR pic, ULONG method, ...);
   75 ULONG DoPictureMethodA(APTR pic, ULONG method, ULONG *arguments);
   76 
   77 ULONG GetPictureAttrs(APTR pic, ...);
   78 ULONG GetPictureAttrsA(APTR pic, struct TagItem *tags);
   79 
   80 ULONG LockPicture(APTR pic, ULONG mode, ...);
   81 ULONG LockPictureA(APTR pic, ULONG mode, ULONG *arguments);
   82 void UnLockPicture(APTR pic, ULONG mode);
   83 
   84 BOOL IsPicture(char *filename, ...);
   85 BOOL IsPictureA(char *filename, struct TagItem *tags);
   86 
   87 APTR CreateDirectDrawHandle(APTR drawhandle, UWORD sw, UWORD sh, UWORD dw, UWORD dh, ...);
   88 APTR CreateDirectDrawHandleA(APTR drawhandle, UWORD sw, UWORD sh, UWORD dw, UWORD dh, struct TagItem *tags);
   89 void DeleteDirectDrawHandle(APTR ddh);
   90 BOOL DirectDrawTrueColor(APTR ddh, ULONG *array, UWORD x, UWORD y, ...);
   91 BOOL DirectDrawTrueColorA(APTR ddh, ULONG *array, UWORD x, UWORD y, struct TagItem *tags);
   92 
   93 BOOL CreatePictureMask(APTR pic, UBYTE *array, UWORD arraywidth, ...);
   94 BOOL CreatePictureMaskA(APTR pic, UBYTE *array, UWORD arraywidth, struct TagItem *tags);
   95 
   96 #ifdef __cplusplus
   97 }
   98 #endif /* __cplusplus */
   99 
  100 #endif