2023-06-29 04:10:08 -04:00
|
|
|
#include "legopalettepresenter.h"
|
|
|
|
|
2023-09-11 13:43:55 -04:00
|
|
|
DECOMP_SIZE_ASSERT(LegoPalettePresenter, 0x68)
|
|
|
|
|
2023-12-06 07:10:45 -05:00
|
|
|
// FUNCTION: LEGO1 0x10079e50
|
2023-06-29 04:10:08 -04:00
|
|
|
LegoPalettePresenter::LegoPalettePresenter()
|
|
|
|
{
|
2023-10-24 19:38:27 -04:00
|
|
|
Init();
|
2023-06-29 04:10:08 -04:00
|
|
|
}
|
|
|
|
|
2023-12-06 07:10:45 -05:00
|
|
|
// FUNCTION: LEGO1 0x1007a070
|
2023-06-29 04:10:08 -04:00
|
|
|
LegoPalettePresenter::~LegoPalettePresenter()
|
|
|
|
{
|
2023-11-17 15:01:27 -05:00
|
|
|
Destroy(TRUE);
|
2023-06-29 04:10:08 -04:00
|
|
|
}
|
|
|
|
|
2023-12-06 07:10:45 -05:00
|
|
|
// FUNCTION: LEGO1 0x1007a0d0
|
2023-06-29 04:10:08 -04:00
|
|
|
void LegoPalettePresenter::Init()
|
|
|
|
{
|
2023-11-17 15:01:27 -05:00
|
|
|
m_palette = NULL;
|
|
|
|
}
|
|
|
|
|
2023-12-06 07:10:45 -05:00
|
|
|
// FUNCTION: LEGO1 0x1007a0e0
|
2023-11-17 15:01:27 -05:00
|
|
|
void LegoPalettePresenter::Destroy(MxBool p_fromDestructor)
|
|
|
|
{
|
|
|
|
m_criticalSection.Enter();
|
|
|
|
if (m_palette) {
|
|
|
|
delete m_palette;
|
|
|
|
}
|
|
|
|
Init();
|
|
|
|
m_criticalSection.Leave();
|
|
|
|
if (!p_fromDestructor) {
|
|
|
|
MxVideoPresenter::Destroy(FALSE);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
2023-12-06 07:10:45 -05:00
|
|
|
// FUNCTION: LEGO1 0x1007a120
|
2023-11-17 15:01:27 -05:00
|
|
|
void LegoPalettePresenter::Destroy()
|
|
|
|
{
|
|
|
|
Destroy(FALSE);
|
2023-06-29 04:10:08 -04:00
|
|
|
}
|