[Project64] Cleanup Settings/SettingsPage-Game-Plugin.cpp

This commit is contained in:
zilmar 2015-12-24 06:16:11 +11:00
parent c664e9a578
commit 95a9841458
2 changed files with 299 additions and 299 deletions

View File

@ -15,336 +15,336 @@
CGamePluginPage::CGamePluginPage(HWND hParent, const RECT & rcDispay) CGamePluginPage::CGamePluginPage(HWND hParent, const RECT & rcDispay)
{ {
if (!Create(hParent, rcDispay)) if (!Create(hParent, rcDispay))
{ {
return; return;
} }
//Set the text for all gui Items //Set the text for all gui Items
SetDlgItemTextW(m_hWnd, RSP_ABOUT, GS(PLUG_ABOUT)); SetDlgItemTextW(m_hWnd, RSP_ABOUT, GS(PLUG_ABOUT));
SetDlgItemTextW(m_hWnd, GFX_ABOUT, GS(PLUG_ABOUT)); SetDlgItemTextW(m_hWnd, GFX_ABOUT, GS(PLUG_ABOUT));
SetDlgItemTextW(m_hWnd, AUDIO_ABOUT, GS(PLUG_ABOUT)); SetDlgItemTextW(m_hWnd, AUDIO_ABOUT, GS(PLUG_ABOUT));
SetDlgItemTextW(m_hWnd, CONT_ABOUT, GS(PLUG_ABOUT)); SetDlgItemTextW(m_hWnd, CONT_ABOUT, GS(PLUG_ABOUT));
SetDlgItemTextW(m_hWnd, IDC_RSP_NAME, GS(PLUG_RSP)); SetDlgItemTextW(m_hWnd, IDC_RSP_NAME, GS(PLUG_RSP));
SetDlgItemTextW(m_hWnd, IDC_GFX_NAME, GS(PLUG_GFX)); SetDlgItemTextW(m_hWnd, IDC_GFX_NAME, GS(PLUG_GFX));
SetDlgItemTextW(m_hWnd, IDC_AUDIO_NAME, GS(PLUG_AUDIO)); SetDlgItemTextW(m_hWnd, IDC_AUDIO_NAME, GS(PLUG_AUDIO));
SetDlgItemTextW(m_hWnd, IDC_CONT_NAME, GS(PLUG_CTRL)); SetDlgItemTextW(m_hWnd, IDC_CONT_NAME, GS(PLUG_CTRL));
SetDlgItemTextW(m_hWnd, IDC_HLE_GFX, GS(PLUG_HLE_GFX)); SetDlgItemTextW(m_hWnd, IDC_HLE_GFX, GS(PLUG_HLE_GFX));
SetDlgItemTextW(m_hWnd, IDC_HLE_AUDIO, GS(PLUG_HLE_AUDIO)); SetDlgItemTextW(m_hWnd, IDC_HLE_AUDIO, GS(PLUG_HLE_AUDIO));
m_GfxGroup.Attach(GetDlgItem(IDC_GFX_NAME)); m_GfxGroup.Attach(GetDlgItem(IDC_GFX_NAME));
m_AudioGroup.Attach(GetDlgItem(IDC_AUDIO_NAME)); m_AudioGroup.Attach(GetDlgItem(IDC_AUDIO_NAME));
m_ControlGroup.Attach(GetDlgItem(IDC_CONT_NAME)); m_ControlGroup.Attach(GetDlgItem(IDC_CONT_NAME));
m_RspGroup.Attach(GetDlgItem(IDC_RSP_NAME)); m_RspGroup.Attach(GetDlgItem(IDC_RSP_NAME));
AddPlugins(GFX_LIST, Game_EditPlugin_Gfx, PLUGIN_TYPE_GFX); AddPlugins(GFX_LIST, Game_EditPlugin_Gfx, PLUGIN_TYPE_GFX);
AddPlugins(AUDIO_LIST, Game_EditPlugin_Audio, PLUGIN_TYPE_AUDIO); AddPlugins(AUDIO_LIST, Game_EditPlugin_Audio, PLUGIN_TYPE_AUDIO);
AddPlugins(CONT_LIST, Game_EditPlugin_Contr, PLUGIN_TYPE_CONTROLLER); AddPlugins(CONT_LIST, Game_EditPlugin_Contr, PLUGIN_TYPE_CONTROLLER);
AddPlugins(RSP_LIST, Game_EditPlugin_RSP, PLUGIN_TYPE_RSP); AddPlugins(RSP_LIST, Game_EditPlugin_RSP, PLUGIN_TYPE_RSP);
AddModCheckBox(GetDlgItem(IDC_HLE_GFX), Game_UseHleGfx); AddModCheckBox(GetDlgItem(IDC_HLE_GFX), Game_UseHleGfx);
AddModCheckBox(GetDlgItem(IDC_HLE_AUDIO), Game_UseHleAudio); AddModCheckBox(GetDlgItem(IDC_HLE_AUDIO), Game_UseHleAudio);
UpdatePageSettings(); UpdatePageSettings();
} }
void CGamePluginPage::AddPlugins(int ListId, SettingID Type, PLUGIN_TYPE PluginType) void CGamePluginPage::AddPlugins(int ListId, SettingID Type, PLUGIN_TYPE PluginType)
{ {
stdstr Default; stdstr Default;
bool PluginSelected = g_Settings->LoadStringVal(Type, Default); bool PluginSelected = g_Settings->LoadStringVal(Type, Default);
CModifiedComboBox * ComboBox; CModifiedComboBox * ComboBox;
ComboBox = AddModComboBox(GetDlgItem(ListId), Type); ComboBox = AddModComboBox(GetDlgItem(ListId), Type);
if (!PluginSelected) if (!PluginSelected)
{ {
ComboBox->SetDefault(NULL); ComboBox->SetDefault(NULL);
} }
ComboBox->AddItemW(GS(PLUG_DEFAULT), NULL); ComboBox->AddItemW(GS(PLUG_DEFAULT), NULL);
for (int i = 0, n = m_PluginList.GetPluginCount(); i < n; i++) for (int i = 0, n = m_PluginList.GetPluginCount(); i < n; i++)
{ {
const CPluginList::PLUGIN * Plugin = m_PluginList.GetPluginInfo(i); const CPluginList::PLUGIN * Plugin = m_PluginList.GetPluginInfo(i);
if (Plugin == NULL) if (Plugin == NULL)
{ {
continue; continue;
} }
if (Plugin->Info.Type != PluginType) if (Plugin->Info.Type != PluginType)
{ {
continue; continue;
} }
if (PluginSelected && _stricmp(Default.c_str(), Plugin->FileName.c_str()) == 0) if (PluginSelected && _stricmp(Default.c_str(), Plugin->FileName.c_str()) == 0)
{ {
ComboBox->SetDefault((WPARAM)Plugin); ComboBox->SetDefault((WPARAM)Plugin);
} }
ComboBox->AddItem(Plugin->Info.Name, (WPARAM)Plugin); ComboBox->AddItem(Plugin->Info.Name, (WPARAM)Plugin);
} }
} }
void CGamePluginPage::ShowAboutButton(int id) void CGamePluginPage::ShowAboutButton(int id)
{ {
CModifiedComboBox * ComboBox = NULL; CModifiedComboBox * ComboBox = NULL;
for (ComboBoxList::iterator cb_iter = m_ComboBoxList.begin(); cb_iter != m_ComboBoxList.end(); cb_iter++) for (ComboBoxList::iterator cb_iter = m_ComboBoxList.begin(); cb_iter != m_ComboBoxList.end(); cb_iter++)
{ {
if ((int)(cb_iter->second->GetMenu()) != id) if ((int)(cb_iter->second->GetMenu()) != id)
{ {
continue; continue;
} }
ComboBox = cb_iter->second; ComboBox = cb_iter->second;
break; break;
} }
if (ComboBox == NULL) if (ComboBox == NULL)
{ {
return; return;
} }
int index = ComboBox->GetCurSel(); int index = ComboBox->GetCurSel();
if (index == CB_ERR) if (index == CB_ERR)
{ {
return; return;
} }
const CPluginList::PLUGIN ** PluginPtr = (const CPluginList::PLUGIN **)ComboBox->GetItemDataPtr(index); const CPluginList::PLUGIN ** PluginPtr = (const CPluginList::PLUGIN **)ComboBox->GetItemDataPtr(index);
if (PluginPtr == NULL) if (PluginPtr == NULL)
{ {
return; return;
} }
const CPluginList::PLUGIN * Plugin = *PluginPtr; const CPluginList::PLUGIN * Plugin = *PluginPtr;
if (Plugin == NULL) if (Plugin == NULL)
{ {
return; return;
} }
//Load the plugin //Load the plugin
UINT LastErrorMode = SetErrorMode(SEM_FAILCRITICALERRORS); UINT LastErrorMode = SetErrorMode(SEM_FAILCRITICALERRORS);
HMODULE hLib = LoadLibrary(Plugin->FullPath); HMODULE hLib = LoadLibrary(Plugin->FullPath);
SetErrorMode(LastErrorMode); SetErrorMode(LastErrorMode);
if (hLib == NULL) if (hLib == NULL)
{ {
return; return;
} }
//Get DLL about //Get DLL about
void(__cdecl *DllAbout) (HWND hWnd); void(__cdecl *DllAbout) (HWND hWnd);
DllAbout = (void(__cdecl *)(HWND))GetProcAddress(hLib, "DllAbout"); DllAbout = (void(__cdecl *)(HWND))GetProcAddress(hLib, "DllAbout");
//call the function from the dll //call the function from the dll
DllAbout(m_hWnd); DllAbout(m_hWnd);
FreeLibrary(hLib); FreeLibrary(hLib);
} }
void CGamePluginPage::PluginItemChanged(int id, int AboutID, bool bSetChanged) void CGamePluginPage::PluginItemChanged(int id, int AboutID, bool bSetChanged)
{ {
CModifiedComboBox * ComboBox = NULL; CModifiedComboBox * ComboBox = NULL;
for (ComboBoxList::iterator cb_iter = m_ComboBoxList.begin(); cb_iter != m_ComboBoxList.end(); cb_iter++) for (ComboBoxList::iterator cb_iter = m_ComboBoxList.begin(); cb_iter != m_ComboBoxList.end(); cb_iter++)
{ {
if ((int)(cb_iter->second->GetMenu()) != id) if ((int)(cb_iter->second->GetMenu()) != id)
{ {
continue; continue;
} }
ComboBox = cb_iter->second; ComboBox = cb_iter->second;
break; break;
} }
if (ComboBox == NULL) if (ComboBox == NULL)
{ {
return; return;
} }
int index = ComboBox->GetCurSel(); int index = ComboBox->GetCurSel();
if (index == CB_ERR) if (index == CB_ERR)
{ {
return; return;
} }
const CPluginList::PLUGIN ** PluginPtr = (const CPluginList::PLUGIN **)ComboBox->GetItemDataPtr(index); const CPluginList::PLUGIN ** PluginPtr = (const CPluginList::PLUGIN **)ComboBox->GetItemDataPtr(index);
if (PluginPtr) if (PluginPtr)
{ {
const CPluginList::PLUGIN * Plugin = *PluginPtr; const CPluginList::PLUGIN * Plugin = *PluginPtr;
if (Plugin) if (Plugin)
{ {
::EnableWindow(GetDlgItem(AboutID), Plugin->AboutFunction); ::EnableWindow(GetDlgItem(AboutID), Plugin->AboutFunction);
} }
} }
if (bSetChanged) if (bSetChanged)
{ {
ComboBox->SetChanged(true); ComboBox->SetChanged(true);
SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0); SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0);
} }
} }
void CGamePluginPage::UpdatePageSettings(void) void CGamePluginPage::UpdatePageSettings(void)
{ {
UpdateCheckBoxes(); UpdateCheckBoxes();
for (ComboBoxList::iterator cb_iter = m_ComboBoxList.begin(); cb_iter != m_ComboBoxList.end(); cb_iter++) for (ComboBoxList::iterator cb_iter = m_ComboBoxList.begin(); cb_iter != m_ComboBoxList.end(); cb_iter++)
{ {
CModifiedComboBox * ComboBox = cb_iter->second; CModifiedComboBox * ComboBox = cb_iter->second;
stdstr SelectedValue; stdstr SelectedValue;
bool PluginChanged = g_Settings->LoadStringVal(cb_iter->first, SelectedValue); bool PluginChanged = g_Settings->LoadStringVal(cb_iter->first, SelectedValue);
ComboBox->SetChanged(PluginChanged); ComboBox->SetChanged(PluginChanged);
if (PluginChanged) if (PluginChanged)
{ {
for (int i = 0, n = m_PluginList.GetPluginCount(); i < n; i++) for (int i = 0, n = m_PluginList.GetPluginCount(); i < n; i++)
{ {
const CPluginList::PLUGIN * Plugin = m_PluginList.GetPluginInfo(i); const CPluginList::PLUGIN * Plugin = m_PluginList.GetPluginInfo(i);
if (Plugin == NULL) if (Plugin == NULL)
{ {
continue; continue;
} }
if (_stricmp(SelectedValue.c_str(), Plugin->FileName.c_str()) != 0) if (_stricmp(SelectedValue.c_str(), Plugin->FileName.c_str()) != 0)
{ {
continue; continue;
} }
ComboBox->SetDefault((WPARAM)Plugin); ComboBox->SetDefault((WPARAM)Plugin);
} }
} }
else { else {
ComboBox->SetDefault(NULL); ComboBox->SetDefault(NULL);
} }
} }
PluginItemChanged(GFX_LIST, GFX_ABOUT, false); PluginItemChanged(GFX_LIST, GFX_ABOUT, false);
PluginItemChanged(AUDIO_LIST, AUDIO_ABOUT, false); PluginItemChanged(AUDIO_LIST, AUDIO_ABOUT, false);
PluginItemChanged(CONT_LIST, CONT_ABOUT, false); PluginItemChanged(CONT_LIST, CONT_ABOUT, false);
PluginItemChanged(RSP_LIST, RSP_ABOUT, false); PluginItemChanged(RSP_LIST, RSP_ABOUT, false);
} }
void CGamePluginPage::HidePage() void CGamePluginPage::HidePage()
{ {
ShowWindow(SW_HIDE); ShowWindow(SW_HIDE);
} }
void CGamePluginPage::ShowPage() void CGamePluginPage::ShowPage()
{ {
ShowWindow(SW_SHOW); ShowWindow(SW_SHOW);
} }
void CGamePluginPage::ApplySettings(bool UpdateScreen) void CGamePluginPage::ApplySettings(bool UpdateScreen)
{ {
CSettingsPageImpl<CGamePluginPage>::ApplySettings(UpdateScreen); CSettingsPageImpl<CGamePluginPage>::ApplySettings(UpdateScreen);
} }
bool CGamePluginPage::EnableReset(void) bool CGamePluginPage::EnableReset(void)
{ {
if (CSettingsPageImpl<CGamePluginPage>::EnableReset()) { return true; } if (CSettingsPageImpl<CGamePluginPage>::EnableReset()) { return true; }
return false; return false;
} }
void CGamePluginPage::ResetPage() void CGamePluginPage::ResetPage()
{ {
CSettingsPageImpl<CGamePluginPage>::ResetPage(); CSettingsPageImpl<CGamePluginPage>::ResetPage();
} }
void CGamePluginPage::ApplyComboBoxes(void) void CGamePluginPage::ApplyComboBoxes(void)
{ {
for (ComboBoxList::iterator cb_iter = m_ComboBoxList.begin(); cb_iter != m_ComboBoxList.end(); cb_iter++) for (ComboBoxList::iterator cb_iter = m_ComboBoxList.begin(); cb_iter != m_ComboBoxList.end(); cb_iter++)
{ {
CModifiedComboBox * ComboBox = cb_iter->second; CModifiedComboBox * ComboBox = cb_iter->second;
if (ComboBox->IsChanged()) if (ComboBox->IsChanged())
{ {
int index = ComboBox->GetCurSel(); int index = ComboBox->GetCurSel();
if (index == CB_ERR) if (index == CB_ERR)
{ {
return; return;
} }
const CPluginList::PLUGIN ** PluginPtr = (const CPluginList::PLUGIN **)ComboBox->GetItemDataPtr(index); const CPluginList::PLUGIN ** PluginPtr = (const CPluginList::PLUGIN **)ComboBox->GetItemDataPtr(index);
if (PluginPtr == NULL) if (PluginPtr == NULL)
{ {
return; return;
} }
const CPluginList::PLUGIN * Plugin = *PluginPtr; const CPluginList::PLUGIN * Plugin = *PluginPtr;
if (Plugin) if (Plugin)
{ {
if (g_Settings->LoadStringVal(cb_iter->first) != Plugin->FileName.c_str()) if (g_Settings->LoadStringVal(cb_iter->first) != Plugin->FileName.c_str())
{ {
g_Settings->SaveString(cb_iter->first, Plugin->FileName.c_str()); g_Settings->SaveString(cb_iter->first, Plugin->FileName.c_str());
} }
} }
else { else {
g_Settings->DeleteSetting(cb_iter->first); g_Settings->DeleteSetting(cb_iter->first);
} }
} }
if (ComboBox->IsReset()) if (ComboBox->IsReset())
{ {
g_Settings->DeleteSetting(cb_iter->first); g_Settings->DeleteSetting(cb_iter->first);
ComboBox->SetReset(false); ComboBox->SetReset(false);
} }
} }
} }
bool CGamePluginPage::ResetComboBox(CModifiedComboBox & ComboBox, SettingID /*Type*/) bool CGamePluginPage::ResetComboBox(CModifiedComboBox & ComboBox, SettingID /*Type*/)
{ {
if (!ComboBox.IsChanged()) if (!ComboBox.IsChanged())
{ {
return false; return false;
} }
ComboBox.SetReset(true); ComboBox.SetReset(true);
for (int i = 0, n = ComboBox.GetCount(); i < n; i++) for (int i = 0, n = ComboBox.GetCount(); i < n; i++)
{ {
const CPluginList::PLUGIN ** PluginPtr = (const CPluginList::PLUGIN **)ComboBox.GetItemDataPtr(i); const CPluginList::PLUGIN ** PluginPtr = (const CPluginList::PLUGIN **)ComboBox.GetItemDataPtr(i);
if (PluginPtr == NULL) if (PluginPtr == NULL)
{ {
continue; continue;
} }
if (*PluginPtr != NULL) if (*PluginPtr != NULL)
{ {
continue; continue;
} }
ComboBox.SetCurSel(i); ComboBox.SetCurSel(i);
return true; return true;
} }
return false; return false;
} }
void CGamePluginPage::HleGfxChanged(UINT /*Code*/, int id, HWND /*ctl*/) void CGamePluginPage::HleGfxChanged(UINT /*Code*/, int id, HWND /*ctl*/)
{ {
for (ButtonList::iterator iter = m_ButtonList.begin(); iter != m_ButtonList.end(); iter++) for (ButtonList::iterator iter = m_ButtonList.begin(); iter != m_ButtonList.end(); iter++)
{ {
CModifiedButton * Button = iter->second; CModifiedButton * Button = iter->second;
if ((int)Button->GetMenu() != id) if ((int)Button->GetMenu() != id)
{ {
continue; continue;
} }
if ((Button->GetCheck() & BST_CHECKED) == 0) if ((Button->GetCheck() & BST_CHECKED) == 0)
{ {
int res = MessageBoxW(m_hWnd, GS(MSG_SET_LLE_GFX_MSG), GS(MSG_SET_LLE_GFX_TITLE), MB_YESNO | MB_ICONWARNING); int res = MessageBoxW(m_hWnd, GS(MSG_SET_LLE_GFX_MSG), GS(MSG_SET_LLE_GFX_TITLE), MB_YESNO | MB_ICONWARNING);
if (res != IDYES) if (res != IDYES)
{ {
Button->SetCheck(BST_CHECKED); Button->SetCheck(BST_CHECKED);
return; return;
} }
} }
Button->SetChanged(true); Button->SetChanged(true);
SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0); SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0);
break; break;
} }
} }
void CGamePluginPage::HleAudioChanged(UINT /*Code*/, int id, HWND /*ctl*/) void CGamePluginPage::HleAudioChanged(UINT /*Code*/, int id, HWND /*ctl*/)
{ {
for (ButtonList::iterator iter = m_ButtonList.begin(); iter != m_ButtonList.end(); iter++) for (ButtonList::iterator iter = m_ButtonList.begin(); iter != m_ButtonList.end(); iter++)
{ {
CModifiedButton * Button = iter->second; CModifiedButton * Button = iter->second;
if ((int)Button->GetMenu() != id) if ((int)Button->GetMenu() != id)
{ {
continue; continue;
} }
if ((Button->GetCheck() & BST_CHECKED) != 0) if ((Button->GetCheck() & BST_CHECKED) != 0)
{ {
int res = MessageBoxW(m_hWnd, GS(MSG_SET_HLE_AUD_MSG), GS(MSG_SET_HLE_AUD_TITLE), MB_ICONWARNING | MB_YESNO); int res = MessageBoxW(m_hWnd, GS(MSG_SET_HLE_AUD_MSG), GS(MSG_SET_HLE_AUD_TITLE), MB_ICONWARNING | MB_YESNO);
if (res != IDYES) if (res != IDYES)
{ {
Button->SetCheck(BST_UNCHECKED); Button->SetCheck(BST_UNCHECKED);
return; return;
} }
} }
Button->SetChanged(true); Button->SetChanged(true);
SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0); SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0);
break; break;
} }
} }

View File

@ -14,56 +14,56 @@
#include <Project64\Plugins\PluginList.h> #include <Project64\Plugins\PluginList.h>
class CGamePluginPage : class CGamePluginPage :
public CSettingsPageImpl<CGamePluginPage>, public CSettingsPageImpl<CGamePluginPage>,
public CSettingsPage public CSettingsPage
{ {
BEGIN_MSG_MAP_EX(CGamePluginPage) BEGIN_MSG_MAP_EX(CGamePluginPage)
COMMAND_HANDLER_EX(GFX_LIST, LBN_SELCHANGE, GfxPluginChanged) COMMAND_HANDLER_EX(GFX_LIST, LBN_SELCHANGE, GfxPluginChanged)
COMMAND_HANDLER_EX(AUDIO_LIST, LBN_SELCHANGE, AudioPluginChanged) COMMAND_HANDLER_EX(AUDIO_LIST, LBN_SELCHANGE, AudioPluginChanged)
COMMAND_HANDLER_EX(CONT_LIST, LBN_SELCHANGE, ControllerPluginChanged) COMMAND_HANDLER_EX(CONT_LIST, LBN_SELCHANGE, ControllerPluginChanged)
COMMAND_HANDLER_EX(RSP_LIST, LBN_SELCHANGE, RspPluginChanged) COMMAND_HANDLER_EX(RSP_LIST, LBN_SELCHANGE, RspPluginChanged)
COMMAND_ID_HANDLER_EX(GFX_ABOUT, GfxPluginAbout) COMMAND_ID_HANDLER_EX(GFX_ABOUT, GfxPluginAbout)
COMMAND_ID_HANDLER_EX(AUDIO_ABOUT, AudioPluginAbout) COMMAND_ID_HANDLER_EX(AUDIO_ABOUT, AudioPluginAbout)
COMMAND_ID_HANDLER_EX(CONT_ABOUT, ControllerPluginAbout) COMMAND_ID_HANDLER_EX(CONT_ABOUT, ControllerPluginAbout)
COMMAND_ID_HANDLER_EX(RSP_ABOUT, RspPluginAbout) COMMAND_ID_HANDLER_EX(RSP_ABOUT, RspPluginAbout)
COMMAND_ID_HANDLER_EX(IDC_HLE_GFX, HleGfxChanged) COMMAND_ID_HANDLER_EX(IDC_HLE_GFX, HleGfxChanged)
COMMAND_ID_HANDLER_EX(IDC_HLE_AUDIO, HleAudioChanged) COMMAND_ID_HANDLER_EX(IDC_HLE_AUDIO, HleAudioChanged)
END_MSG_MAP() END_MSG_MAP()
enum { IDD = IDD_Settings_GamePlugin }; enum { IDD = IDD_Settings_GamePlugin };
public: public:
CGamePluginPage(HWND hParent, const RECT & rcDispay); CGamePluginPage(HWND hParent, const RECT & rcDispay);
LanguageStringID PageTitle(void) { return TAB_PLUGIN; } LanguageStringID PageTitle(void) { return TAB_PLUGIN; }
void HidePage(void); void HidePage(void);
void ShowPage(void); void ShowPage(void);
void ApplySettings(bool UpdateScreen); void ApplySettings(bool UpdateScreen);
bool EnableReset(void); bool EnableReset(void);
void ResetPage(void); void ResetPage(void);
private: private:
void GfxPluginAbout(UINT /*Code*/, int /*id*/, HWND /*ctl*/) { ShowAboutButton(GFX_LIST); } void GfxPluginAbout(UINT /*Code*/, int /*id*/, HWND /*ctl*/) { ShowAboutButton(GFX_LIST); }
void AudioPluginAbout(UINT /*Code*/, int /*id*/, HWND /*ctl*/) { ShowAboutButton(AUDIO_LIST); } void AudioPluginAbout(UINT /*Code*/, int /*id*/, HWND /*ctl*/) { ShowAboutButton(AUDIO_LIST); }
void ControllerPluginAbout(UINT /*Code*/, int /*id*/, HWND /*ctl*/) { ShowAboutButton(CONT_LIST); } void ControllerPluginAbout(UINT /*Code*/, int /*id*/, HWND /*ctl*/) { ShowAboutButton(CONT_LIST); }
void RspPluginAbout(UINT /*Code*/, int /*id*/, HWND /*ctl*/) { ShowAboutButton(RSP_LIST); } void RspPluginAbout(UINT /*Code*/, int /*id*/, HWND /*ctl*/) { ShowAboutButton(RSP_LIST); }
void GfxPluginChanged(UINT /*Code*/, int /*id*/, HWND /*ctl*/) { PluginItemChanged(GFX_LIST, GFX_ABOUT); } void GfxPluginChanged(UINT /*Code*/, int /*id*/, HWND /*ctl*/) { PluginItemChanged(GFX_LIST, GFX_ABOUT); }
void AudioPluginChanged(UINT /*Code*/, int /*id*/, HWND /*ctl*/) { PluginItemChanged(AUDIO_LIST, AUDIO_ABOUT); } void AudioPluginChanged(UINT /*Code*/, int /*id*/, HWND /*ctl*/) { PluginItemChanged(AUDIO_LIST, AUDIO_ABOUT); }
void ControllerPluginChanged(UINT /*Code*/, int /*id*/, HWND /*ctl*/) { PluginItemChanged(CONT_LIST, CONT_ABOUT); } void ControllerPluginChanged(UINT /*Code*/, int /*id*/, HWND /*ctl*/) { PluginItemChanged(CONT_LIST, CONT_ABOUT); }
void RspPluginChanged(UINT /*Code*/, int /*id*/, HWND /*ctl*/) { PluginItemChanged(RSP_LIST, RSP_ABOUT); } void RspPluginChanged(UINT /*Code*/, int /*id*/, HWND /*ctl*/) { PluginItemChanged(RSP_LIST, RSP_ABOUT); }
void HleGfxChanged(UINT Code, int id, HWND ctl); void HleGfxChanged(UINT Code, int id, HWND ctl);
void HleAudioChanged(UINT Code, int id, HWND ctl); void HleAudioChanged(UINT Code, int id, HWND ctl);
void ShowAboutButton(int id); void ShowAboutButton(int id);
void PluginItemChanged(int id, int AboutID, bool bSetChanged = true); void PluginItemChanged(int id, int AboutID, bool bSetChanged = true);
void AddPlugins(int ListId, SettingID Type, PLUGIN_TYPE PluginType); void AddPlugins(int ListId, SettingID Type, PLUGIN_TYPE PluginType);
void UpdatePageSettings(void); void UpdatePageSettings(void);
void ApplyComboBoxes(void); void ApplyComboBoxes(void);
bool ResetComboBox(CModifiedComboBox & ComboBox, SettingID Type); bool ResetComboBox(CModifiedComboBox & ComboBox, SettingID Type);
CPartialGroupBox m_GfxGroup, m_AudioGroup, m_ControlGroup, m_RspGroup; CPartialGroupBox m_GfxGroup, m_AudioGroup, m_ControlGroup, m_RspGroup;
CPluginList m_PluginList; CPluginList m_PluginList;
}; };