X-Git-Url: https://git.artsoft.org/?p=rocksndiamonds.git;a=blobdiff_plain;f=src%2Flibgame%2Ftext.h;h=57a8d224e270f71ca2f0fd6040ace8b5214efffa;hp=1273f3992ec26b4f77a84a9233ecaa289fe0a9a3;hb=HEAD;hpb=466733e5fd75e0d705bf80dddb48468c4c9885a7 diff --git a/src/libgame/text.h b/src/libgame/text.h index 1273f399..57a8d224 100644 --- a/src/libgame/text.h +++ b/src/libgame/text.h @@ -4,7 +4,7 @@ // (c) 1995-2014 by Artsoft Entertainment // Holger Schemel // info@artsoft.org -// http://www.artsoft.org/ +// https://www.artsoft.org/ // ---------------------------------------------------------------------------- // text.h // ============================================================================ @@ -15,35 +15,35 @@ #include "system.h" -/* default fonts */ -#define FONT_INITIAL_1 0 -#define FONT_INITIAL_2 1 -#define FONT_INITIAL_3 2 -#define FONT_INITIAL_4 3 +// default fonts +#define MAIN_FONT_INITIAL_1 0 +#define MAIN_FONT_INITIAL_2 1 +#define MAIN_FONT_INITIAL_3 2 +#define MAIN_FONT_INITIAL_4 3 -/* font colors */ -#define FC_RED FONT_INITIAL_1 -#define FC_BLUE FONT_INITIAL_2 -#define FC_GREEN FONT_INITIAL_3 -#define FC_YELLOW FONT_INITIAL_4 +// font colors +#define FC_RED MAIN_FONT_INITIAL_1 +#define FC_BLUE MAIN_FONT_INITIAL_2 +#define FC_GREEN MAIN_FONT_INITIAL_3 +#define FC_YELLOW MAIN_FONT_INITIAL_4 -/* text output definitions */ +// text output definitions #define MAX_OUTPUT_LINESIZE 1024 -/* special constants for old ISO-8859-1 character byte values */ -#define CHAR_BYTE_UMLAUT_A (0xc4) -#define CHAR_BYTE_UMLAUT_O (0xd6) -#define CHAR_BYTE_UMLAUT_U (0xdc) -#define CHAR_BYTE_UMLAUT_a (0xe4) -#define CHAR_BYTE_UMLAUT_o (0xf6) -#define CHAR_BYTE_UMLAUT_u (0xfc) -#define CHAR_BYTE_SHARP_S (0xdf) -#define CHAR_BYTE_COPYRIGHT (0xa9) -#define CHAR_BYTE_REGISTERED (0xae) -#define CHAR_BYTE_DEGREE (0xb0) -#define CHAR_BYTE_CURSOR (0xa0) - -/* special character mapping for default fonts */ +// special constants for old ISO-8859-1 character byte values +#define CHAR_BYTE_UMLAUT_A ((char)0xc4) +#define CHAR_BYTE_UMLAUT_O ((char)0xd6) +#define CHAR_BYTE_UMLAUT_U ((char)0xdc) +#define CHAR_BYTE_UMLAUT_a ((char)0xe4) +#define CHAR_BYTE_UMLAUT_o ((char)0xf6) +#define CHAR_BYTE_UMLAUT_u ((char)0xfc) +#define CHAR_BYTE_SHARP_S ((char)0xdf) +#define CHAR_BYTE_COPYRIGHT ((char)0xa9) +#define CHAR_BYTE_REGISTERED ((char)0xae) +#define CHAR_BYTE_DEGREE ((char)0xb0) +#define CHAR_BYTE_CURSOR ((char)0xa0) + +// special character mapping for default fonts #define FONT_ASCII_CURSOR ((char)160) #define FONT_ASCII_BUTTON ((char)128) #define FONT_ASCII_UP ((char)129) @@ -67,49 +67,57 @@ (c) == FONT_ASCII_DOWN ? 111 : \ (c)) -/* 64 regular ordered ASCII characters, 6 special characters, 1 cursor char. */ +// 64 regular ordered ASCII characters, 6 special characters, 1 cursor char. #define MIN_NUM_CHARS_PER_FONT 64 #define DEFAULT_NUM_CHARS_PER_FONT (MIN_NUM_CHARS_PER_FONT + 6 +1) #define DEFAULT_NUM_CHARS_PER_LINE 16 -/* font structure definitions */ +// font structure definitions + +void EnableDrawingText(void); +void DisableDrawingText(void); void InitFontInfo(struct FontBitmapInfo *, int, - int (*function1)(int), int (*function2)(char *)); + int (*function1)(int), + int (*function2)(char *), + char * (*function3)(int)); void FreeFontInfo(struct FontBitmapInfo *); struct FontBitmapInfo *getFontBitmapInfo(int); int getFontWidth(int); int getFontHeight(int); +int getFontDrawOffsetX(int); +int getFontDrawOffsetY(int); int getTextWidth(char *, int); void getFontCharSource(int, char, Bitmap **, int *, int *); -int maxWordLengthInString(char *); +int maxWordLengthInRequestString(char *); void DrawInitText(char *, int, int); -void DrawInitTextAlways(char *, int, int); -void DrawInitTextIfNeeded(char *, int, int); -void DrawInitTextExt(char *, int, int, boolean); +void DrawInitTextHead(char *); +void DrawInitTextItem(char *); void DrawTextF(int, int, int, char *, ...); void DrawTextFCentered(int, int, char *, ...); void DrawTextS(int, int, int, char *); void DrawTextSCentered(int, int, char *); -void DrawTextCentered(int, int, char *); void DrawTextSAligned(int, int, char *, int, int); -void DrawTextAligned(int, int, char *, int, int); void DrawText(int, int, char *, int); void DrawTextExt(DrawBuffer *, int, int, char *, int, int); char *GetTextBufferFromFile(char *, int); +int DrawTextArea(int, int, char *, int, int, int, int, int, int, + boolean, boolean, boolean); int DrawTextBuffer(int, int, char *, int, int, int, int, int, int, boolean, boolean, boolean); +int DrawTextBufferS(int, int, char *, int, int, int, int, int, int, + boolean, boolean, boolean); int DrawTextBufferVA(int, int, char *, va_list, int, int, int, int, int, int, boolean, boolean, boolean); int DrawTextFile(int, int, char *, int, int, int, int, int, int, boolean, boolean, boolean); -#endif /* TEXT_H */ +#endif // TEXT_H