mirror of https://github.com/PrimeDecomp/prime.git
47 lines
1.2 KiB
C++
47 lines
1.2 KiB
C++
|
#ifndef _CBLOCKINSTRUCTION
|
||
|
#define _CBLOCKINSTRUCTION
|
||
|
|
||
|
#include "Kyoto/Text/CInstruction.hpp"
|
||
|
#include "Kyoto/Text/TextCommon.hpp"
|
||
|
|
||
|
class CBlockInstruction : public CInstruction {
|
||
|
public:
|
||
|
CBlockInstruction(int offX, int offY, int extX, int extY, ETextDirection dir, EJustification just,
|
||
|
EVerticalJustification vjust)
|
||
|
: x4_offsetX(offX)
|
||
|
, x8_offsetY(offY)
|
||
|
, xc_blockExtentX(extX)
|
||
|
, x10_blockExtentY(extY)
|
||
|
, x14_dir(dir)
|
||
|
, x18_justification(just)
|
||
|
, x1c_vertJustification(vjust)
|
||
|
, x20_largestMonoW(0)
|
||
|
, x24_largestMonoH(0)
|
||
|
, x28_largestBaseline(0)
|
||
|
, x2c_lineX(0)
|
||
|
, x30_lineY(0)
|
||
|
, x34_lineCount(0) {}
|
||
|
|
||
|
void Invoke(CFontRenderState& state, CTextRenderBuffer* buf) const;
|
||
|
void SetupPositionLTR(CFontRenderState& state) const;
|
||
|
void TestLargestFont(int monoW, int monoH, int baseline);
|
||
|
void PageInvoke(CFontRenderState& state, CTextRenderBuffer* buf) const;
|
||
|
|
||
|
private:
|
||
|
int x4_offsetX;
|
||
|
int x8_offsetY;
|
||
|
int xc_blockExtentX;
|
||
|
int x10_blockExtentY;
|
||
|
ETextDirection x14_dir;
|
||
|
EJustification x18_justification;
|
||
|
EVerticalJustification x1c_vertJustification;
|
||
|
int x20_largestMonoW;
|
||
|
int x24_largestMonoH;
|
||
|
int x28_largestBaseline;
|
||
|
int x2c_lineX;
|
||
|
int x30_lineY;
|
||
|
int x34_lineCount;
|
||
|
};
|
||
|
|
||
|
#endif // _CBLOCKINSTRUCTION
|