tp/include/JSystem/J2DGraph/J2DPrint.h

99 lines
2.8 KiB
C++

#ifndef J2DPRINT_H
#define J2DPRINT_H
#include "JSystem/J2DGraph/J2DTextBox.h"
#include "__va_arg.h"
class JUTFont;
class J2DPrint;
extern "C" f32 J2DPrint_print_alpha_va(J2DPrint*, u8, const char*, va_list);
/**
* @ingroup jsystem-j2d
*
*/
class J2DPrint {
public:
struct TSize {
/* 0x0 */ f32 field_0x0;
/* 0x4 */ f32 field_0x4;
};
J2DPrint(JUTFont*, JUtility::TColor, JUtility::TColor);
void initiate();
/* 802F4394 */ J2DPrint(JUTFont*, f32, f32, JUtility::TColor, JUtility::TColor, JUtility::TColor, JUtility::TColor);
/* 802F4658 */ static u8* setBuffer(size_t);
/* 802F46C4 */ void setFontSize();
/* 802F475C */ void locate(f32, f32);
/* 802F4778 */ f32 print(f32, f32, u8, char const*, ...);
/* 802F4828 */ void printReturn(char const*, f32, f32, J2DTextBoxHBinding, J2DTextBoxVBinding,
f32, f32, u8);
/* 802F4B4C */ f32 parse(u8 const*, int, int, u16*, J2DPrint::TSize&, u8, bool);
/* 802F52E8 */ void doCtrlCode(int);
/* 802F5410 */ u16 doEscapeCode(u8 const**, u8);
/* 802F594C */ void initchar();
/* 802F59C0 */ s32 getNumberS32(u8 const**, s32, s32, int);
/* 802F5AC4 */ f32 getNumberF32(u8 const**, f32, f32, int);
/* 802F4420 */ virtual ~J2DPrint();
f32 print_va(u8 alpha, const char* fmt, va_list args) {
return J2DPrint_print_alpha_va(this, alpha, fmt, args);
}
void setFontSize(f32 sizeX, f32 sizeY) {
f32 x;
if (sizeX > 0.0f) {
x = sizeX;
} else {
x = 0.0f;
}
mFontSizeX = x;
f32 y;
if (sizeY > 0.0f) {
y = sizeY;
} else {
y = 0.0f;
}
mFontSizeY = y;
}
static char* mStrBuff;
static size_t mStrBuffSize;
private:
/* 802F4468 */ void private_initiate(JUTFont*, f32, f32, JUtility::TColor, JUtility::TColor,
JUtility::TColor, JUtility::TColor, bool);
/* 0x04 */ JUTFont* mFont;
/* 0x08 */ JUtility::TColor field_0x8;
/* 0x0C */ JUtility::TColor field_0xc;
/* 0x10 */ f32 field_0x10;
/* 0x14 */ f32 field_0x14;
/* 0x18 */ f32 mScaleX;
/* 0x1C */ f32 mScaleY;
/* 0x20 */ s16 field_0x20;
/* 0x22 */ bool field_0x22;
/* 0x24 */ f32 field_0x24;
/* 0x28 */ f32 field_0x28;
/* 0x2C */ f32 mCursorH;
/* 0x30 */ f32 mCursorV;
/* 0x34 */ f32 field_0x34;
/* 0x38 */ JUtility::TColor mBlackColor;
/* 0x3C */ JUtility::TColor mWhiteColor;
/* 0x40 */ JUtility::TColor mCharColor;
/* 0x44 */ JUtility::TColor mGradColor;
/* 0x48 */ f32 mCharSpacing;
/* 0x4C */ f32 mLineSpacing;
/* 0x50 */ f32 mFontSizeX;
/* 0x54 */ f32 mFontSizeY;
/* 0x58 */ s16 field_0x58;
/* 0x5A */ bool field_0x5a;
}; // Size: 0x5C
#endif /* J2DPRINT_H */