summaryrefslogtreecommitdiff
path: root/include/text.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/text.h')
-rw-r--r--include/text.h56
1 files changed, 55 insertions, 1 deletions
diff --git a/include/text.h b/include/text.h
index 3e5a76a33..9a3434583 100644
--- a/include/text.h
+++ b/include/text.h
@@ -12,7 +12,6 @@
#define EOS 0xFF // end of string
#define NUM_TEXT_PRINTERS 32
-#define NUM_WINDOWS 20
struct Window
{
@@ -109,4 +108,59 @@ extern u8 gStringVar2[];
extern u8 gStringVar3[];
extern u8 gStringVar4[];
+void SetFontsPointer(const struct FontInfo *fonts);
+void DeactivateAllTextPrinters (void);
+u16 Print(u8 windowId, u8 fontId, u8 *str, u8 x, u8 y, u8 speed, void (*callback)(struct TextSubPrinter *, u16));
+bool16 AddTextPrinter(struct TextSubPrinter *textSubPrinter, u8 speed, void (*callback)(struct TextSubPrinter *, u16));
+void RunTextPrinters(void);
+bool8 IsTextPrinterActive(u8 id);
+u32 RenderFont(struct TextPrinter *textPrinter);
+void GenerateFontHalfRowLookupTable(u8 fgColor, u8 bgColor, u8 shadowColor);
+void SaveTextColors(u8 *fgColor, u8 *bgColor, u8 *shadowColor);
+void RestoreTextColors(u8 *fgColor, u8 *bgColor, u8 *shadowColor);
+void DecompressGlyphTile(const u16 *src, u16 *dest);
+u8 GetLastTextColor(u8 colorType);
+void CopyGlyphToWindow(struct TextPrinter *x);
+void ClearTextSpan(struct TextPrinter *textPrinter, u32 width);
+
+u16 Font0Func(struct TextPrinter *textPrinter);
+u16 Font1Func(struct TextPrinter *textPrinter);
+u16 Font2Func(struct TextPrinter *textPrinter);
+u16 Font3Func(struct TextPrinter *textPrinter);
+u16 Font4Func(struct TextPrinter *textPrinter);
+u16 Font5Func(struct TextPrinter *textPrinter);
+u16 Font7Func(struct TextPrinter *textPrinter);
+u16 Font8Func(struct TextPrinter *textPrinter);
+
+void TextPrinterInitDownArrowCounters(struct TextPrinter *textPrinter);
+void TextPrinterDrawDownArrow(struct TextPrinter *textPrinter);
+void TextPrinterClearDownArrow(struct TextPrinter *textPrinter);
+bool8 TextPrinterWaitAutoMode(struct TextPrinter *textPrinter);
+bool8 TextPrinterWaitWithDownArrow(struct TextPrinter *textPrinter);
+bool8 TextPrinterWait(struct TextPrinter *textPrinter);
+void DrawDownArrow(u8 windowId, u16 x, u16 y, u8 bgColor, bool8 drawArrow, u8 *counter, u8 *yCoordIndex);
+u16 RenderText(struct TextPrinter *textPrinter);
+u32 GetStringWidthFixedWidthFont(u8 *str, u8 fontId, u8 letterSpacing);
+u32 (*GetFontWidthFunc(u8 glyphId))(u16, bool32);
+s32 GetStringWidth(u8 fontId, u8 *str, s16 letterSpacing);
+u8 RenderTextFont9(u8 *pixels, u8 fontId, u8 *str);
+u8 DrawKeypadIcon(u8 windowId, u8 keypadIconId, u16 x, u16 y);
+u8 GetKeypadIconTileOffset(u8 keypadIconId);
+u8 GetKeypadIconWidth(u8 keypadIconId);
+u8 GetKeypadIconHeight(u8 keypadIconId);
+void SetDefaultFontsPointer(void);
+u8 GetFontAttribute(u8 fontId, u8 attributeId);
+u8 GetMenuCursorDimensionByFont(u8 fontId, u8 whichDimension);
+void DecompressGlyphFont0(u16 glyphId, bool32 isJapanese);
+u32 GetGlyphWidthFont0(u16 glyphId, bool32 isJapanese);
+void DecompressGlyphFont7(u16 glyphId, bool32 isJapanese);
+u32 GetGlyphWidthFont7(u16 glyphId, bool32 isJapanese);
+void DecompressGlyphFont8(u16 glyphId, bool32 isJapanese);
+u32 GetGlyphWidthFont8(u16 glyphId, bool32 isJapanese);
+void DecompressGlyphFont2(u16 glyphId, bool32 isJapanese);
+u32 GetGlyphWidthFont2(u16 glyphId, bool32 isJapanese);
+void DecompressGlyphFont1(u16 glyphId, bool32 isJapanese);
+u32 GetGlyphWidthFont1(u16 glyphId, bool32 isJapanese);
+void DecompressGlyphFont9(u16 glyphId);
+
#endif // GUARD_TEXT_H