#ifndef WINTEXT_H #define WINTEXT_H /* * wintext.h - version 0.1 * * Header for font-independent window-text system, which allows * writing of text based on character positions. * * MWS 3/92. */ #ifndef EXEC_TYPES_H #include #endif #ifndef MIN #define MIN(a,b) ((a) > (b) ? (b) : (a)) #endif typedef struct wintext { struct wintext *next; /* next WINTEXT */ char *text; /* actual text to be rendered */ UWORD lpos, tpos; /* character coordinates of 1st char in string */ UWORD pen, mode; /* color and drawmode for text */ UWORD columns; /* number of columns to render; /* -1 implies to edge of text window */ } WINTEXT; typedef struct wintextinfo { struct Window *window; /* window this wintextinfo is for */ struct TextAttr *tattr; /* screen's default font - we'll use this */ char *spaces; /* string of spaces of size columns */ UWORD rows, columns; /* size of text window */ UWORD font_x, font_y; /* dimensions of default font */ UWORD font_baseline; /* baseline of font */ BYTE loffset, toffset, /* origin (in pixels) for text rendering */ roffset, boffset; /* and right and bottom border widths */ } WINTEXTINFO; BOOL InitWinTextInfo(WINTEXTINFO *, struct NewWindow *, UWORD rows, UWORD columns); void FinishWinText(WINTEXTINFO *); void WinText(WINTEXTINFO *, char *text, UWORD lpos, UWORD tpos, UWORD pen, UWORD mode); void RenderWinTexts(WINTEXTINFO *, WINTEXT *); void RenderWinTextsFmt(WINTEXTINFO *, WINTEXT *, char *, ...); #endif WINTEXT_H