X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Flibgame%2Ftext.h;h=9295a037b7469ce6ebca8c1944898b81bfce6970;hb=fb5e5cffbe66f54932e9fe0fcd2a346812d654cf;hp=701213f66ae58b04b389e729026afcd2b7668b40;hpb=4fd53190c7842905930f953211bb68885b828b7e;p=rocksndiamonds.git diff --git a/src/libgame/text.h b/src/libgame/text.h index 701213f6..9295a037 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 // ============================================================================ @@ -67,16 +67,38 @@ (c) == FONT_ASCII_DOWN ? 111 : \ (c)) +#define MAP_FONT_ASCII_EXT(c) ((c) == CHAR_BYTE_COPYRIGHT ? 128 : \ + (c) == CHAR_BYTE_UMLAUT_A ? 129 : \ + (c) == CHAR_BYTE_UMLAUT_O ? 130 : \ + (c) == CHAR_BYTE_UMLAUT_U ? 131 : \ + (c) == CHAR_BYTE_DEGREE ? 132 : \ + (c) == CHAR_BYTE_REGISTERED ? 133 : \ + (c) == FONT_ASCII_CURSOR ? 134 : \ + (c) == CHAR_BYTE_UMLAUT_a ? 135 : \ + (c) == CHAR_BYTE_UMLAUT_o ? 136 : \ + (c) == CHAR_BYTE_UMLAUT_u ? 137 : \ + (c) == CHAR_BYTE_SHARP_S ? 138 : \ + (c) == FONT_ASCII_BUTTON ? 141 : \ + (c) == FONT_ASCII_UP ? 142 : \ + (c) == FONT_ASCII_DOWN ? 143 : \ + (c)) + // 64 regular ordered ASCII characters, 6 special characters, 1 cursor char. #define MIN_NUM_CHARS_PER_FONT 64 +#define NUM_CHARS_PER_FONT_EXT 112 #define DEFAULT_NUM_CHARS_PER_FONT (MIN_NUM_CHARS_PER_FONT + 6 +1) #define DEFAULT_NUM_CHARS_PER_LINE 16 // 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); @@ -92,19 +114,24 @@ void getFontCharSource(int, char, Bitmap **, int *, int *); int maxWordLengthInRequestString(char *); void DrawInitText(char *, int, int); +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 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,