2012-12-19 09:30:18 +00:00
|
|
|
/****************************************************************************
|
|
|
|
* *
|
|
|
|
* Project 64 - A Nintendo 64 emulator. *
|
|
|
|
* http://www.pj64-emu.com/ *
|
|
|
|
* Copyright (C) 2012 Project64. All rights reserved. *
|
|
|
|
* *
|
|
|
|
* License: *
|
|
|
|
* GNU/GPLv2 http://www.gnu.org/licenses/gpl-2.0.html *
|
|
|
|
* *
|
|
|
|
****************************************************************************/
|
2010-06-07 02:23:58 +00:00
|
|
|
#include "stdafx.h"
|
2008-09-18 03:15:49 +00:00
|
|
|
|
2010-06-04 06:25:07 +00:00
|
|
|
int CGuiSettings::m_RefCount = 0;
|
2008-11-14 20:51:06 +00:00
|
|
|
bool CGuiSettings::m_bCPURunning;
|
|
|
|
bool CGuiSettings::m_bAutoSleep;
|
2008-09-18 03:15:49 +00:00
|
|
|
|
|
|
|
CGuiSettings::CGuiSettings()
|
2010-06-04 06:25:07 +00:00
|
|
|
{
|
|
|
|
m_RefCount += 1;
|
|
|
|
if (m_RefCount == 1)
|
|
|
|
{
|
2012-11-17 01:02:04 +00:00
|
|
|
g_Settings->RegisterChangeCB(GameRunning_CPU_Running,NULL,RefreshSettings);
|
|
|
|
g_Settings->RegisterChangeCB(Setting_AutoSleep,NULL,RefreshSettings);
|
2010-06-04 06:25:07 +00:00
|
|
|
RefreshSettings(NULL);
|
|
|
|
}
|
2008-09-18 03:15:49 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
CGuiSettings::~CGuiSettings()
|
|
|
|
{
|
2010-06-04 06:25:07 +00:00
|
|
|
m_RefCount -= 1;
|
|
|
|
if (m_RefCount == 0)
|
|
|
|
{
|
2012-11-17 01:02:04 +00:00
|
|
|
g_Settings->UnregisterChangeCB(GameRunning_CPU_Running,NULL,RefreshSettings);
|
|
|
|
g_Settings->UnregisterChangeCB(Setting_AutoSleep,NULL,RefreshSettings);
|
2010-06-04 06:25:07 +00:00
|
|
|
}
|
2008-09-18 03:15:49 +00:00
|
|
|
}
|
|
|
|
|
2010-06-04 06:25:07 +00:00
|
|
|
void CGuiSettings::RefreshSettings(void *)
|
2008-09-18 03:15:49 +00:00
|
|
|
{
|
2012-11-17 01:02:04 +00:00
|
|
|
m_bCPURunning = g_Settings->LoadBool(GameRunning_CPU_Running);
|
|
|
|
m_bAutoSleep = g_Settings->LoadBool(Setting_AutoSleep);
|
2008-09-18 03:15:49 +00:00
|
|
|
}
|
|
|
|
|