1 /* 2 * bltTile.h -- 3 * 4 * Copyright 1995-1998 Lucent Technologies, Inc. 5 * 6 * Permission to use, copy, modify, and distribute this software and 7 * its documentation for any purpose and without fee is hereby 8 * granted, provided that the above copyright notice appear in all 9 * copies and that both that the copyright notice and warranty 10 * disclaimer appear in supporting documentation, and that the names 11 * of Lucent Technologies any of their entities not be used in 12 * advertising or publicity pertaining to distribution of the software 13 * without specific, written prior permission. 14 * 15 * Lucent Technologies disclaims all warranties with regard to this 16 * software, including all implied warranties of merchantability and 17 * fitness. In no event shall Lucent Technologies be liable for any 18 * special, indirect or consequential damages or any damages 19 * whatsoever resulting from loss of use, data or profits, whether in 20 * an action of contract, negligence or other tortuous action, arising 21 * out of or in connection with the use or performance of this 22 * software. 23 */ 24 25 #ifndef BLT_TILE_H 26 #define BLT_TILE_H 27 28 #define TILE_THREAD_KEY "BLT Tile Data" 29 #define TILE_MAGIC ((unsigned int) 0x46170277) 30 31 typedef struct Blt_TileClientStruct *Blt_Tile; /* Opaque type for tiles */ 32 33 typedef void (Blt_TileChangedProc) _ANSI_ARGS_((ClientData clientData, 34 Blt_Tile tile)); 35 36 extern int Blt_GetTile _ANSI_ARGS_((Tcl_Interp *interp, Tk_Window tkwin, 37 char *imageName, Blt_Tile *tilePtr)); 38 39 extern int Blt_TileFlags _ANSI_ARGS_((Blt_Tile tile)); 40 41 extern void Blt_FreeTile _ANSI_ARGS_((Blt_Tile tile)); 42 extern void Blt_FixedTile _ANSI_ARGS_((Blt_Tile tile)); 43 44 extern char *Blt_NameOfTile _ANSI_ARGS_((Blt_Tile tile)); 45 46 extern void Blt_SetTileChangedProc _ANSI_ARGS_((Blt_Tile tile, 47 Blt_TileChangedProc *changeProc, ClientData clientData)); 48 49 extern void Blt_TileRectangle _ANSI_ARGS_((Tk_Window tkwin, Drawable drawable, 50 Blt_Tile tile, int x, int y, unsigned int width, unsigned int height)); 51 extern void Blt_TileRectangles _ANSI_ARGS_((Tk_Window tkwin, Drawable drawable, 52 Blt_Tile tile, XRectangle *rectArr, int nRects)); 53 extern void Blt_TilePolygon _ANSI_ARGS_((Tk_Window tkwin, Drawable drawable, 54 Blt_Tile tile, XPoint *pointArr, int nPoints)); 55 extern Pixmap Blt_PixmapOfTile _ANSI_ARGS_((Blt_Tile tile)); 56 57 extern int Blt_HasTile _ANSI_ARGS_((Blt_Tile tile)); 58 59 extern void Blt_SizeOfTile _ANSI_ARGS_((Blt_Tile tile, int *widthPtr, 60 int *heightPtr)); 61 62 extern void Blt_SetTileOrigin _ANSI_ARGS_((Tk_Window tkwin, Blt_Tile tile, 63 int x, int y)); 64 65 extern void Blt_SetTSOrigin _ANSI_ARGS_((Tk_Window tkwin, Blt_Tile tile, 66 int x, int y)); 67 68 extern void Blt_Fill3DRectangleTile _ANSI_ARGS_((Tk_Window tkwin, 69 Drawable drawable, Tk_3DBorder border, int x, int y, int width, int height, 70 int borderWidth, int relief, Blt_Tile tile, int scrollTile, int flags)); 71 72 #endif /* BLT_TILE_H */ 73