#ifndef LEGOMETERPRESENTER_H #define LEGOMETERPRESENTER_H #include "mxrect16.h" #include "mxstillpresenter.h" #include "mxstring.h" // SIZE 0x08 struct MeterRect : public MxRect16 { // FUNCTION: BETA10 0x10097eb0 MeterRect() {} }; // VTABLE: LEGO1 0x100d7ac8 // VTABLE: BETA10 0x101bca68 // SIZE 0x94 class LegoMeterPresenter : public MxStillPresenter { public: LegoMeterPresenter(); ~LegoMeterPresenter() override; // MxStillPresenter's `::ClassName` and `::IsA` are used. void StreamingTickle() override; // vtable+0x20 void RepeatingTickle() override; // vtable+0x24 void ParseExtra() override; // vtable+0x30 private: enum MeterLayout { e_leftToRight = 0, e_rightToLeft, e_bottomToTop, e_topToBottom }; void DrawMeter(); MxU8* m_meterPixels; // 0x6c MxU16 m_fillColor; // 0x70 MxString m_variable; // 0x74 MxFloat m_curPercent; // 0x84 MeterRect m_meterRect; // 0x88 MxS16 m_layout; // 0x90 }; // SYNTHETIC: LEGO1 0x10043760 // LegoMeterPresenter::`scalar deleting destructor' #endif // LEGOMETERPRESENTER_H