[Project64] remove some of the #ifdef WINDOWS_UI from settings pages
This commit is contained in:
parent
6585657d05
commit
a1d9af57a6
BIN
Project64.sln
BIN
Project64.sln
Binary file not shown.
|
@ -31,13 +31,14 @@ struct RECT_STRUCT
|
|||
long bottom;
|
||||
};
|
||||
|
||||
struct WINDOWS_PAINTSTRUCT {
|
||||
HDC hdc;
|
||||
int fErase;
|
||||
RECT_STRUCT rcPaint;
|
||||
int fRestore;
|
||||
int fIncUpdate;
|
||||
BYTE rgbReserved[32];
|
||||
struct WINDOWS_PAINTSTRUCT
|
||||
{
|
||||
HDC hdc;
|
||||
int fErase;
|
||||
RECT_STRUCT rcPaint;
|
||||
int fRestore;
|
||||
int fIncUpdate;
|
||||
BYTE rgbReserved[32];
|
||||
};
|
||||
|
||||
#define CALLBACK __stdcall
|
||||
|
@ -49,9 +50,7 @@ class CN64System;
|
|||
// Remove this to test compilation outside of the Windows ATL environment.
|
||||
#endif
|
||||
|
||||
#ifdef WINDOWS_UI
|
||||
#include <WTL App.h>
|
||||
#endif
|
||||
#include <User Interface/MenuShortCuts.h>
|
||||
|
||||
#include ".\\User Interface\\Rom Browser.h"
|
||||
|
@ -61,6 +60,4 @@ class CN64System;
|
|||
#include ".\\User Interface\\Notification Class.h"
|
||||
#include ".\\User Interface\\Frame Per Second Class.h"
|
||||
#include ".\\User Interface\\resource.h"
|
||||
#ifdef WINDOWS_UI
|
||||
#include ".\\User Interface\\Settings Config.h"
|
||||
#endif
|
||||
|
|
|
@ -10,7 +10,6 @@
|
|||
****************************************************************************/
|
||||
#include "stdafx.h"
|
||||
|
||||
#ifdef WINDOWS_UI
|
||||
#include "Settings Page.h"
|
||||
|
||||
CAdvancedOptionsPage::CAdvancedOptionsPage (HWND hParent, const RECT & rcDispay )
|
||||
|
@ -71,5 +70,4 @@ bool CAdvancedOptionsPage::EnableReset ( void )
|
|||
void CAdvancedOptionsPage::ResetPage()
|
||||
{
|
||||
CSettingsPageImpl<CAdvancedOptionsPage>::ResetPage();
|
||||
}
|
||||
#endif
|
||||
}
|
|
@ -10,18 +10,17 @@
|
|||
****************************************************************************/
|
||||
#include "stdafx.h"
|
||||
|
||||
#ifdef WINDOWS_UI
|
||||
#include "Settings Page.h"
|
||||
|
||||
COptionsDirectoriesPage::COptionsDirectoriesPage (HWND hParent, const RECT & rcDispay ) :
|
||||
m_InUpdateSettings(false)
|
||||
COptionsDirectoriesPage::COptionsDirectoriesPage(HWND hParent, const RECT & rcDispay) :
|
||||
m_InUpdateSettings(false)
|
||||
{
|
||||
Create(hParent);
|
||||
if (m_hWnd == NULL)
|
||||
{
|
||||
return;
|
||||
}
|
||||
SetWindowPos(HWND_TOP,&rcDispay,SWP_HIDEWINDOW);
|
||||
SetWindowPos(HWND_TOP, &rcDispay, SWP_HIDEWINDOW);
|
||||
|
||||
m_PluginGroup.Attach(GetDlgItem(IDC_DIR_FRAME1));
|
||||
m_AutoSaveGroup.Attach(GetDlgItem(IDC_DIR_FRAME3));
|
||||
|
@ -47,7 +46,7 @@ COptionsDirectoriesPage::COptionsDirectoriesPage (HWND hParent, const RECT & rcD
|
|||
m_TextureSelected.Attach(GetDlgItem(IDC_TEXTURE_OTHER));
|
||||
|
||||
//Set Text language for the dialog box
|
||||
::SetWindowTextW(m_PluginGroup.m_hWnd, GS(DIR_PLUGIN));
|
||||
::SetWindowTextW(m_PluginGroup.m_hWnd, GS(DIR_PLUGIN));
|
||||
::SetWindowTextW(m_AutoSaveGroup.m_hWnd, GS(DIR_AUTO_SAVE));
|
||||
::SetWindowTextW(m_InstantSaveGroup.m_hWnd, GS(DIR_INSTANT_SAVE));
|
||||
::SetWindowTextW(m_ScreenShotGroup.m_hWnd, GS(DIR_SCREEN_SHOT));
|
||||
|
@ -56,25 +55,25 @@ COptionsDirectoriesPage::COptionsDirectoriesPage (HWND hParent, const RECT & rcD
|
|||
UpdatePageSettings();
|
||||
}
|
||||
|
||||
int CALLBACK COptionsDirectoriesPage::SelectDirCallBack (HWND hwnd,DWORD uMsg,DWORD /*lp*/, DWORD lpData)
|
||||
int CALLBACK COptionsDirectoriesPage::SelectDirCallBack(HWND hwnd, DWORD uMsg, DWORD /*lp*/, DWORD lpData)
|
||||
{
|
||||
switch(uMsg)
|
||||
switch (uMsg)
|
||||
{
|
||||
case BFFM_INITIALIZED:
|
||||
// WParam is TRUE since you are passing a path.
|
||||
// It would be FALSE if you were passing a pidl.
|
||||
if (lpData)
|
||||
{
|
||||
SendMessage(hwnd,BFFM_SETSELECTION,TRUE,lpData);
|
||||
SendMessage(hwnd, BFFM_SETSELECTION, TRUE, lpData);
|
||||
}
|
||||
break;
|
||||
}
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
void COptionsDirectoriesPage::SelectDirectory( LanguageStringID Title, CModifiedEditBox & EditBox, CModifiedButton & Default, CModifiedButton & selected )
|
||||
void COptionsDirectoriesPage::SelectDirectory(LanguageStringID Title, CModifiedEditBox & EditBox, CModifiedButton & Default, CModifiedButton & selected)
|
||||
{
|
||||
wchar_t Buffer[MAX_PATH], Directory[MAX_PATH];
|
||||
wchar_t Buffer[MAX_PATH], Directory[MAX_PATH];
|
||||
LPITEMIDLIST pidl;
|
||||
BROWSEINFOW bi;
|
||||
|
||||
|
@ -87,80 +86,80 @@ void COptionsDirectoriesPage::SelectDirectory( LanguageStringID Title, CModified
|
|||
bi.ulFlags = BIF_RETURNFSANCESTORS | BIF_RETURNONLYFSDIRS;
|
||||
bi.lpfn = (BFFCALLBACK)SelectDirCallBack;
|
||||
bi.lParam = (DWORD)InitialDir.c_str();
|
||||
if ((pidl = SHBrowseForFolderW(&bi)) != NULL)
|
||||
if ((pidl = SHBrowseForFolderW(&bi)) != NULL)
|
||||
{
|
||||
if (SHGetPathFromIDListW(pidl, Directory))
|
||||
if (SHGetPathFromIDListW(pidl, Directory))
|
||||
{
|
||||
stdstr path;
|
||||
CPath SelectedDir(path.FromUTF16(Directory),"");
|
||||
stdstr path;
|
||||
CPath SelectedDir(path.FromUTF16(Directory), "");
|
||||
EditBox.SetChanged(true);
|
||||
EditBox.SetWindowText(SelectedDir);
|
||||
Default.SetChanged(true);
|
||||
Default.SetCheck(BST_UNCHECKED);
|
||||
selected.SetCheck(BM_SETCHECK);
|
||||
SendMessage(GetParent(),PSM_CHANGED,(WPARAM)m_hWnd,0);
|
||||
SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void COptionsDirectoriesPage::PluginDirChanged ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ )
|
||||
void COptionsDirectoriesPage::PluginDirChanged(UINT /*Code*/, int /*id*/, HWND /*ctl*/)
|
||||
{
|
||||
if (m_InUpdateSettings) { return; }
|
||||
m_PluginDir.SetChanged(true);
|
||||
SendMessage(GetParent(),PSM_CHANGED,(WPARAM)m_hWnd,0);
|
||||
SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0);
|
||||
}
|
||||
|
||||
void COptionsDirectoriesPage::AutoSaveDirChanged ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ )
|
||||
void COptionsDirectoriesPage::AutoSaveDirChanged(UINT /*Code*/, int /*id*/, HWND /*ctl*/)
|
||||
{
|
||||
if (m_InUpdateSettings) { return; }
|
||||
m_AutoSaveDir.SetChanged(true);
|
||||
SendMessage(GetParent(),PSM_CHANGED,(WPARAM)m_hWnd,0);
|
||||
SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0);
|
||||
}
|
||||
|
||||
void COptionsDirectoriesPage::InstantSaveDirChanged ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ )
|
||||
void COptionsDirectoriesPage::InstantSaveDirChanged(UINT /*Code*/, int /*id*/, HWND /*ctl*/)
|
||||
{
|
||||
if (m_InUpdateSettings) { return; }
|
||||
m_InstantSaveDir.SetChanged(true);
|
||||
SendMessage(GetParent(),PSM_CHANGED,(WPARAM)m_hWnd,0);
|
||||
SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0);
|
||||
}
|
||||
|
||||
void COptionsDirectoriesPage::SnapShotDirChanged ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ )
|
||||
void COptionsDirectoriesPage::SnapShotDirChanged(UINT /*Code*/, int /*id*/, HWND /*ctl*/)
|
||||
{
|
||||
if (m_InUpdateSettings) { return; }
|
||||
m_ScreenShotDir.SetChanged(true);
|
||||
SendMessage(GetParent(),PSM_CHANGED,(WPARAM)m_hWnd,0);
|
||||
SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0);
|
||||
}
|
||||
|
||||
void COptionsDirectoriesPage::TextureDirChanged ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ )
|
||||
void COptionsDirectoriesPage::TextureDirChanged(UINT /*Code*/, int /*id*/, HWND /*ctl*/)
|
||||
{
|
||||
if (m_InUpdateSettings) { return; }
|
||||
m_TextureDir.SetChanged(true);
|
||||
SendMessage(GetParent(),PSM_CHANGED,(WPARAM)m_hWnd,0);
|
||||
SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0);
|
||||
}
|
||||
|
||||
void COptionsDirectoriesPage::SelectPluginDir ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ )
|
||||
void COptionsDirectoriesPage::SelectPluginDir(UINT /*Code*/, int /*id*/, HWND /*ctl*/)
|
||||
{
|
||||
SelectDirectory(DIR_SELECT_PLUGIN,m_PluginDir,m_PluginDefault, m_PluginSelected);
|
||||
SelectDirectory(DIR_SELECT_PLUGIN, m_PluginDir, m_PluginDefault, m_PluginSelected);
|
||||
}
|
||||
|
||||
void COptionsDirectoriesPage::SelectAutoDir ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ )
|
||||
void COptionsDirectoriesPage::SelectAutoDir(UINT /*Code*/, int /*id*/, HWND /*ctl*/)
|
||||
{
|
||||
SelectDirectory(DIR_SELECT_AUTO,m_AutoSaveDir,m_AutoSaveDefault, m_AutoSaveSelected);
|
||||
SelectDirectory(DIR_SELECT_AUTO, m_AutoSaveDir, m_AutoSaveDefault, m_AutoSaveSelected);
|
||||
}
|
||||
|
||||
void COptionsDirectoriesPage::SelectInstantDir ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ )
|
||||
void COptionsDirectoriesPage::SelectInstantDir(UINT /*Code*/, int /*id*/, HWND /*ctl*/)
|
||||
{
|
||||
SelectDirectory(DIR_SELECT_INSTANT,m_InstantSaveDir,m_InstantDefault, m_InstantSelected);
|
||||
SelectDirectory(DIR_SELECT_INSTANT, m_InstantSaveDir, m_InstantDefault, m_InstantSelected);
|
||||
}
|
||||
|
||||
void COptionsDirectoriesPage::SelectSnapShotDir ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ )
|
||||
void COptionsDirectoriesPage::SelectSnapShotDir(UINT /*Code*/, int /*id*/, HWND /*ctl*/)
|
||||
{
|
||||
SelectDirectory(DIR_SELECT_SCREEN,m_ScreenShotDir,m_ScreenShotDefault, m_ScreenShotSelected);
|
||||
SelectDirectory(DIR_SELECT_SCREEN, m_ScreenShotDir, m_ScreenShotDefault, m_ScreenShotSelected);
|
||||
}
|
||||
|
||||
void COptionsDirectoriesPage::SelectTextureDir ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ )
|
||||
void COptionsDirectoriesPage::SelectTextureDir(UINT /*Code*/, int /*id*/, HWND /*ctl*/)
|
||||
{
|
||||
SelectDirectory(DIR_SELECT_TEXTURE,m_TextureDir,m_TextureDefault, m_TextureSelected);
|
||||
SelectDirectory(DIR_SELECT_TEXTURE, m_TextureDir, m_TextureDefault, m_TextureSelected);
|
||||
}
|
||||
|
||||
void COptionsDirectoriesPage::UpdatePageSettings()
|
||||
|
@ -168,42 +167,42 @@ void COptionsDirectoriesPage::UpdatePageSettings()
|
|||
stdstr Directory;
|
||||
|
||||
m_InUpdateSettings = true;
|
||||
m_PluginDir.SetChanged(g_Settings->LoadStringVal(Directory_PluginSelected,Directory));
|
||||
m_PluginDir.SetChanged(g_Settings->LoadStringVal(Directory_PluginSelected, Directory));
|
||||
m_PluginDir.SetWindowText(Directory.c_str());
|
||||
m_AutoSaveDir.SetChanged(g_Settings->LoadStringVal(Directory_NativeSaveSelected,Directory));
|
||||
m_AutoSaveDir.SetChanged(g_Settings->LoadStringVal(Directory_NativeSaveSelected, Directory));
|
||||
m_AutoSaveDir.SetWindowText(Directory.c_str());
|
||||
m_InstantSaveDir.SetChanged(g_Settings->LoadStringVal(Directory_InstantSaveSelected,Directory));
|
||||
m_InstantSaveDir.SetChanged(g_Settings->LoadStringVal(Directory_InstantSaveSelected, Directory));
|
||||
m_InstantSaveDir.SetWindowText(Directory.c_str());
|
||||
m_ScreenShotDir.SetChanged(g_Settings->LoadStringVal(Directory_SnapShotSelected,Directory));
|
||||
m_ScreenShotDir.SetChanged(g_Settings->LoadStringVal(Directory_SnapShotSelected, Directory));
|
||||
m_ScreenShotDir.SetWindowText(Directory.c_str());
|
||||
m_TextureDir.SetChanged(g_Settings->LoadStringVal(Directory_TextureSelected,Directory));
|
||||
m_TextureDir.SetChanged(g_Settings->LoadStringVal(Directory_TextureSelected, Directory));
|
||||
m_TextureDir.SetWindowText(Directory.c_str());
|
||||
|
||||
bool UseSelected;
|
||||
m_PluginDefault.SetChanged(g_Settings->LoadBool(Directory_PluginUseSelected,UseSelected));
|
||||
m_PluginDefault.SetChanged(g_Settings->LoadBool(Directory_PluginUseSelected, UseSelected));
|
||||
m_PluginDefault.SetCheck(!UseSelected);
|
||||
m_PluginSelected.SetCheck(UseSelected);
|
||||
|
||||
m_AutoSaveDefault.SetChanged(g_Settings->LoadBool(Directory_NativeSaveUseSelected,UseSelected));
|
||||
m_AutoSaveDefault.SetChanged(g_Settings->LoadBool(Directory_NativeSaveUseSelected, UseSelected));
|
||||
m_AutoSaveDefault.SetCheck(!UseSelected);
|
||||
m_AutoSaveSelected.SetCheck(UseSelected);
|
||||
|
||||
m_InstantDefault.SetChanged(g_Settings->LoadBool(Directory_InstantSaveUseSelected,UseSelected));
|
||||
m_InstantDefault.SetChanged(g_Settings->LoadBool(Directory_InstantSaveUseSelected, UseSelected));
|
||||
m_InstantDefault.SetCheck(!UseSelected);
|
||||
m_InstantSelected.SetCheck(UseSelected);
|
||||
|
||||
m_ScreenShotDefault.SetChanged(g_Settings->LoadBool(Directory_SnapShotUseSelected,UseSelected));
|
||||
m_ScreenShotDefault.SetChanged(g_Settings->LoadBool(Directory_SnapShotUseSelected, UseSelected));
|
||||
m_ScreenShotDefault.SetCheck(!UseSelected);
|
||||
m_ScreenShotSelected.SetCheck(UseSelected);
|
||||
|
||||
m_TextureDefault.SetChanged(g_Settings->LoadBool(Directory_TextureUseSelected,UseSelected));
|
||||
m_TextureDefault.SetChanged(g_Settings->LoadBool(Directory_TextureUseSelected, UseSelected));
|
||||
m_TextureDefault.SetCheck(!UseSelected);
|
||||
m_TextureSelected.SetCheck(UseSelected);
|
||||
|
||||
m_InUpdateSettings = false;
|
||||
}
|
||||
|
||||
void COptionsDirectoriesPage::UseSelectedClicked ( UINT /*Code*/, int id, HWND /*ctl*/ )
|
||||
void COptionsDirectoriesPage::UseSelectedClicked(UINT /*Code*/, int id, HWND /*ctl*/)
|
||||
{
|
||||
CModifiedButton * Button = NULL;
|
||||
switch (id)
|
||||
|
@ -233,7 +232,7 @@ void COptionsDirectoriesPage::UseSelectedClicked ( UINT /*Code*/, int id, HWND /
|
|||
}
|
||||
}
|
||||
Button->SetChanged(true);
|
||||
SendMessage(GetParent(),PSM_CHANGED,(WPARAM)m_hWnd,0);
|
||||
SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0);
|
||||
}
|
||||
|
||||
void COptionsDirectoriesPage::HidePage()
|
||||
|
@ -246,37 +245,37 @@ void COptionsDirectoriesPage::ShowPage()
|
|||
ShowWindow(SW_SHOW);
|
||||
}
|
||||
|
||||
void COptionsDirectoriesPage::ResetDirectory( CModifiedEditBox & EditBox, SettingID Type )
|
||||
void COptionsDirectoriesPage::ResetDirectory(CModifiedEditBox & EditBox, SettingID Type)
|
||||
{
|
||||
if (!EditBox.IsChanged())
|
||||
{
|
||||
return;
|
||||
}
|
||||
stdstr dir;
|
||||
g_Settings->LoadDefaultString(Type,dir);
|
||||
g_Settings->LoadDefaultString(Type, dir);
|
||||
EditBox.SetWindowText(dir.c_str());
|
||||
EditBox.SetReset(true);
|
||||
}
|
||||
|
||||
void COptionsDirectoriesPage::ResetDefaultSelected ( CModifiedButton & ButtonDefault, CModifiedButton & ButtonSelected, SettingID Type )
|
||||
void COptionsDirectoriesPage::ResetDefaultSelected(CModifiedButton & ButtonDefault, CModifiedButton & ButtonSelected, SettingID Type)
|
||||
{
|
||||
if (!ButtonDefault.IsChanged())
|
||||
{
|
||||
return;
|
||||
}
|
||||
bool UseSelected;
|
||||
g_Settings->LoadDefaultBool(Type,UseSelected);
|
||||
g_Settings->LoadDefaultBool(Type, UseSelected);
|
||||
ButtonDefault.SetCheck(!UseSelected);
|
||||
ButtonSelected.SetCheck(UseSelected);
|
||||
ButtonDefault.SetReset(true);
|
||||
}
|
||||
|
||||
void COptionsDirectoriesPage::UpdateDirectory( CModifiedEditBox & EditBox, SettingID Type )
|
||||
void COptionsDirectoriesPage::UpdateDirectory(CModifiedEditBox & EditBox, SettingID Type)
|
||||
{
|
||||
if (EditBox.IsChanged())
|
||||
{
|
||||
stdstr dir = EditBox.GetWindowText();
|
||||
g_Settings->SaveString(Type,dir.c_str());
|
||||
g_Settings->SaveString(Type, dir.c_str());
|
||||
}
|
||||
if (EditBox.IsReset())
|
||||
{
|
||||
|
@ -284,13 +283,13 @@ void COptionsDirectoriesPage::UpdateDirectory( CModifiedEditBox & EditBox, Setti
|
|||
}
|
||||
}
|
||||
|
||||
void COptionsDirectoriesPage::UpdateDefaultSelected ( CModifiedButton & Button, SettingID Type )
|
||||
void COptionsDirectoriesPage::UpdateDefaultSelected(CModifiedButton & Button, SettingID Type)
|
||||
{
|
||||
if (Button.IsChanged())
|
||||
{
|
||||
bool bUseSelected = (Button.GetCheck() & BST_CHECKED) == 0;
|
||||
g_Settings->SaveBool(Type,bUseSelected);
|
||||
|
||||
g_Settings->SaveBool(Type, bUseSelected);
|
||||
|
||||
if (Type == Directory_TextureUseSelected && !bUseSelected)
|
||||
{
|
||||
g_Settings->DeleteSetting(Directory_TextureSelected);
|
||||
|
@ -302,27 +301,27 @@ void COptionsDirectoriesPage::UpdateDefaultSelected ( CModifiedButton & Button,
|
|||
}
|
||||
}
|
||||
|
||||
void COptionsDirectoriesPage::ApplySettings( bool UpdateScreen )
|
||||
void COptionsDirectoriesPage::ApplySettings(bool UpdateScreen)
|
||||
{
|
||||
UpdateDirectory(m_PluginDir,Directory_PluginSelected);
|
||||
UpdateDirectory(m_AutoSaveDir,Directory_NativeSaveSelected);
|
||||
UpdateDirectory(m_InstantSaveDir,Directory_InstantSaveSelected);
|
||||
UpdateDirectory(m_ScreenShotDir,Directory_SnapShotSelected);
|
||||
UpdateDirectory(m_TextureDir,Directory_TextureSelected);
|
||||
UpdateDirectory(m_PluginDir, Directory_PluginSelected);
|
||||
UpdateDirectory(m_AutoSaveDir, Directory_NativeSaveSelected);
|
||||
UpdateDirectory(m_InstantSaveDir, Directory_InstantSaveSelected);
|
||||
UpdateDirectory(m_ScreenShotDir, Directory_SnapShotSelected);
|
||||
UpdateDirectory(m_TextureDir, Directory_TextureSelected);
|
||||
|
||||
UpdateDefaultSelected(m_PluginDefault, Directory_PluginUseSelected);
|
||||
UpdateDefaultSelected(m_AutoSaveDefault, Directory_NativeSaveUseSelected);
|
||||
UpdateDefaultSelected(m_InstantDefault, Directory_InstantSaveUseSelected);
|
||||
UpdateDefaultSelected(m_ScreenShotDefault, Directory_SnapShotUseSelected);
|
||||
UpdateDefaultSelected(m_TextureDefault, Directory_TextureUseSelected);
|
||||
|
||||
UpdateDefaultSelected(m_PluginDefault,Directory_PluginUseSelected);
|
||||
UpdateDefaultSelected(m_AutoSaveDefault,Directory_NativeSaveUseSelected);
|
||||
UpdateDefaultSelected(m_InstantDefault,Directory_InstantSaveUseSelected);
|
||||
UpdateDefaultSelected(m_ScreenShotDefault,Directory_SnapShotUseSelected);
|
||||
UpdateDefaultSelected(m_TextureDefault,Directory_TextureUseSelected);
|
||||
|
||||
if (UpdateScreen)
|
||||
{
|
||||
UpdatePageSettings();
|
||||
}
|
||||
}
|
||||
|
||||
bool COptionsDirectoriesPage::EnableReset ( void )
|
||||
bool COptionsDirectoriesPage::EnableReset(void)
|
||||
{
|
||||
if (m_PluginDir.IsChanged()) { return true; }
|
||||
if (m_AutoSaveDir.IsChanged()) { return true; }
|
||||
|
@ -339,18 +338,17 @@ bool COptionsDirectoriesPage::EnableReset ( void )
|
|||
|
||||
void COptionsDirectoriesPage::ResetPage()
|
||||
{
|
||||
ResetDirectory(m_PluginDir,Directory_PluginSelected);
|
||||
ResetDirectory(m_AutoSaveDir,Directory_NativeSaveSelected);
|
||||
ResetDirectory(m_InstantSaveDir,Directory_InstantSaveSelected);
|
||||
ResetDirectory(m_ScreenShotDir,Directory_SnapShotSelected);
|
||||
ResetDirectory(m_TextureDir,Directory_TextureSelected);
|
||||
ResetDirectory(m_PluginDir, Directory_PluginSelected);
|
||||
ResetDirectory(m_AutoSaveDir, Directory_NativeSaveSelected);
|
||||
ResetDirectory(m_InstantSaveDir, Directory_InstantSaveSelected);
|
||||
ResetDirectory(m_ScreenShotDir, Directory_SnapShotSelected);
|
||||
ResetDirectory(m_TextureDir, Directory_TextureSelected);
|
||||
|
||||
ResetDefaultSelected(m_PluginDefault,m_PluginSelected,Directory_PluginUseSelected);
|
||||
ResetDefaultSelected(m_AutoSaveDefault,m_AutoSaveSelected,Directory_NativeSaveUseSelected);
|
||||
ResetDefaultSelected(m_InstantDefault,m_InstantSelected,Directory_InstantSaveUseSelected);
|
||||
ResetDefaultSelected(m_ScreenShotDefault,m_ScreenShotSelected,Directory_SnapShotUseSelected);
|
||||
ResetDefaultSelected(m_TextureDefault,m_TextureSelected,Directory_TextureUseSelected);
|
||||
ResetDefaultSelected(m_PluginDefault, m_PluginSelected, Directory_PluginUseSelected);
|
||||
ResetDefaultSelected(m_AutoSaveDefault, m_AutoSaveSelected, Directory_NativeSaveUseSelected);
|
||||
ResetDefaultSelected(m_InstantDefault, m_InstantSelected, Directory_InstantSaveUseSelected);
|
||||
ResetDefaultSelected(m_ScreenShotDefault, m_ScreenShotSelected, Directory_SnapShotUseSelected);
|
||||
ResetDefaultSelected(m_TextureDefault, m_TextureSelected, Directory_TextureUseSelected);
|
||||
|
||||
SendMessage(GetParent(),PSM_CHANGED,(WPARAM)m_hWnd,0);
|
||||
}
|
||||
#endif
|
||||
SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0);
|
||||
}
|
|
@ -10,13 +10,12 @@
|
|||
****************************************************************************/
|
||||
#include "stdafx.h"
|
||||
|
||||
#ifdef WINDOWS_UI
|
||||
#include "Settings Page.h"
|
||||
#include "Settings Page - Game - General.h"
|
||||
|
||||
CGameGeneralPage::CGameGeneralPage (HWND hParent, const RECT & rcDispay )
|
||||
CGameGeneralPage::CGameGeneralPage(HWND hParent, const RECT & rcDispay)
|
||||
{
|
||||
if (!Create(hParent,rcDispay))
|
||||
if (!Create(hParent, rcDispay))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
@ -35,55 +34,55 @@ CGameGeneralPage::CGameGeneralPage (HWND hParent, const RECT & rcDispay )
|
|||
SetDlgItemTextW(m_hWnd, IDC_DELAY_DP, GS(ROM_DELAY_DP));
|
||||
SetDlgItemTextW(m_hWnd, IDC_SYNC_AUDIO, GS(ROM_SYNC_AUDIO));
|
||||
SetDlgItemTextW(m_hWnd, IDC_USE_TLB, GS(ROM_USE_TLB));
|
||||
SetDlgItemTextW(m_hWnd, IDC_DELAY_SI, GS(ROM_DELAY_SI));
|
||||
SetDlgItemTextW(m_hWnd, IDC_AUDIO_SIGNAL, GS(ROM_AUDIO_SIGNAL));
|
||||
SetDlgItemTextW(m_hWnd, IDC_DELAY_SI, GS(ROM_DELAY_SI));
|
||||
SetDlgItemTextW(m_hWnd, IDC_AUDIO_SIGNAL, GS(ROM_AUDIO_SIGNAL));
|
||||
|
||||
AddModCheckBox(GetDlgItem(IDC_ROM_32BIT),Game_32Bit);
|
||||
AddModCheckBox(GetDlgItem(IDC_SYNC_AUDIO),Game_SyncViaAudio);
|
||||
AddModCheckBox(GetDlgItem(IDC_ROM_FIXEDAUDIO),Game_FixedAudio);
|
||||
AddModCheckBox(GetDlgItem(IDC_USE_TLB),Game_UseTlb);
|
||||
AddModCheckBox(GetDlgItem(IDC_DELAY_DP),Game_DelayDP);
|
||||
AddModCheckBox(GetDlgItem(IDC_DELAY_SI),Game_DelaySI);
|
||||
AddModCheckBox(GetDlgItem(IDC_AUDIO_SIGNAL),Game_RspAudioSignal);
|
||||
AddModCheckBox(GetDlgItem(IDC_ROM_32BIT), Game_32Bit);
|
||||
AddModCheckBox(GetDlgItem(IDC_SYNC_AUDIO), Game_SyncViaAudio);
|
||||
AddModCheckBox(GetDlgItem(IDC_ROM_FIXEDAUDIO), Game_FixedAudio);
|
||||
AddModCheckBox(GetDlgItem(IDC_USE_TLB), Game_UseTlb);
|
||||
AddModCheckBox(GetDlgItem(IDC_DELAY_DP), Game_DelayDP);
|
||||
AddModCheckBox(GetDlgItem(IDC_DELAY_SI), Game_DelaySI);
|
||||
AddModCheckBox(GetDlgItem(IDC_AUDIO_SIGNAL), Game_RspAudioSignal);
|
||||
|
||||
CModifiedComboBox * ComboBox;
|
||||
ComboBox = AddModComboBox(GetDlgItem(IDC_RDRAM_SIZE),Game_RDRamSize);
|
||||
ComboBox = AddModComboBox(GetDlgItem(IDC_RDRAM_SIZE), Game_RDRamSize);
|
||||
if (ComboBox)
|
||||
{
|
||||
ComboBox->SetTextField(GetDlgItem(IDC_MEMORY_SIZE_TEXT));
|
||||
ComboBox->AddItemW(GS(RDRAM_4MB), 0x400000 );
|
||||
ComboBox->AddItemW(GS(RDRAM_8MB), 0x800000 );
|
||||
ComboBox->AddItemW(GS(RDRAM_4MB), 0x400000);
|
||||
ComboBox->AddItemW(GS(RDRAM_8MB), 0x800000);
|
||||
}
|
||||
|
||||
ComboBox = AddModComboBox(GetDlgItem(IDC_SAVE_TYPE),Game_SaveChip);
|
||||
ComboBox = AddModComboBox(GetDlgItem(IDC_SAVE_TYPE), Game_SaveChip);
|
||||
if (ComboBox)
|
||||
{
|
||||
ComboBox->SetTextField(GetDlgItem(IDC_SAVE_TYPE_TEXT));
|
||||
ComboBox->AddItemW(GS(SAVE_FIRST_USED), (WPARAM)SaveChip_Auto );
|
||||
ComboBox->AddItemW(GS(SAVE_4K_EEPROM), SaveChip_Eeprom_4K );
|
||||
ComboBox->AddItemW(GS(SAVE_16K_EEPROM), SaveChip_Eeprom_16K );
|
||||
ComboBox->AddItemW(GS(SAVE_SRAM), SaveChip_Sram );
|
||||
ComboBox->AddItemW(GS(SAVE_FLASHRAM), SaveChip_FlashRam );
|
||||
ComboBox->AddItemW(GS(SAVE_FIRST_USED), (WPARAM)SaveChip_Auto);
|
||||
ComboBox->AddItemW(GS(SAVE_4K_EEPROM), SaveChip_Eeprom_4K);
|
||||
ComboBox->AddItemW(GS(SAVE_16K_EEPROM), SaveChip_Eeprom_16K);
|
||||
ComboBox->AddItemW(GS(SAVE_SRAM), SaveChip_Sram);
|
||||
ComboBox->AddItemW(GS(SAVE_FLASHRAM), SaveChip_FlashRam);
|
||||
}
|
||||
|
||||
ComboBox = AddModComboBox(GetDlgItem(IDC_COUNTFACT),Game_CounterFactor);
|
||||
ComboBox = AddModComboBox(GetDlgItem(IDC_COUNTFACT), Game_CounterFactor);
|
||||
if (ComboBox)
|
||||
{
|
||||
ComboBox->SetTextField(GetDlgItem(IDC_COUNTFACT_TEXT));
|
||||
ComboBox->AddItemW(GS(NUMBER_1), 1 );
|
||||
ComboBox->AddItemW(GS(NUMBER_2), 2 );
|
||||
ComboBox->AddItemW(GS(NUMBER_3), 3 );
|
||||
ComboBox->AddItemW(GS(NUMBER_4), 4 );
|
||||
ComboBox->AddItemW(GS(NUMBER_5), 5 );
|
||||
ComboBox->AddItemW(GS(NUMBER_6), 6 );
|
||||
ComboBox->AddItemW(GS(NUMBER_1), 1);
|
||||
ComboBox->AddItemW(GS(NUMBER_2), 2);
|
||||
ComboBox->AddItemW(GS(NUMBER_3), 3);
|
||||
ComboBox->AddItemW(GS(NUMBER_4), 4);
|
||||
ComboBox->AddItemW(GS(NUMBER_5), 5);
|
||||
ComboBox->AddItemW(GS(NUMBER_6), 6);
|
||||
}
|
||||
|
||||
SetDlgItemText(IDC_GOOD_NAME,g_Settings->LoadStringVal(Game_GoodName).c_str());
|
||||
SetDlgItemText(IDC_GOOD_NAME, g_Settings->LoadStringVal(Game_GoodName).c_str());
|
||||
|
||||
CModifiedEditBox * TxtBox = AddModTextBox(GetDlgItem(IDC_VIREFRESH),Game_ViRefreshRate, false);
|
||||
CModifiedEditBox * TxtBox = AddModTextBox(GetDlgItem(IDC_VIREFRESH), Game_ViRefreshRate, false);
|
||||
TxtBox->SetTextField(GetDlgItem(IDC_VIREFESH_TEXT));
|
||||
|
||||
TxtBox = AddModTextBox(GetDlgItem(IDC_COUNTPERBYTE),Game_AiCountPerBytes, false);
|
||||
TxtBox = AddModTextBox(GetDlgItem(IDC_COUNTPERBYTE), Game_AiCountPerBytes, false);
|
||||
TxtBox->SetTextField(GetDlgItem(IDC_COUNTPERBYTE_TEXT));
|
||||
|
||||
UpdatePageSettings();
|
||||
|
@ -99,20 +98,18 @@ void CGameGeneralPage::HidePage()
|
|||
ShowWindow(SW_HIDE);
|
||||
}
|
||||
|
||||
void CGameGeneralPage::ApplySettings( bool UpdateScreen )
|
||||
void CGameGeneralPage::ApplySettings(bool UpdateScreen)
|
||||
{
|
||||
CSettingsPageImpl<CGameGeneralPage>::ApplySettings(UpdateScreen);
|
||||
}
|
||||
|
||||
bool CGameGeneralPage::EnableReset ( void )
|
||||
bool CGameGeneralPage::EnableReset(void)
|
||||
{
|
||||
if (CSettingsPageImpl<CGameGeneralPage>::EnableReset()) { return true; }
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
void CGameGeneralPage::ResetPage()
|
||||
{
|
||||
CSettingsPageImpl<CGameGeneralPage>::ResetPage();
|
||||
}
|
||||
#endif
|
||||
}
|
|
@ -14,36 +14,33 @@
|
|||
#include <N64 System/N64 Types.h>
|
||||
|
||||
class CGameGeneralPage :
|
||||
public CSettingsPageImpl<CGameGeneralPage>,
|
||||
public CSettingsPage
|
||||
public CSettingsPageImpl<CGameGeneralPage>,
|
||||
public CSettingsPage
|
||||
{
|
||||
BEGIN_MSG_MAP_EX(CGameGeneralPage)
|
||||
COMMAND_HANDLER_EX(IDC_RDRAM_SIZE,LBN_SELCHANGE,ComboBoxChanged)
|
||||
COMMAND_HANDLER_EX(IDC_SAVE_TYPE,LBN_SELCHANGE,ComboBoxChanged)
|
||||
COMMAND_HANDLER_EX(IDC_COUNTFACT,LBN_SELCHANGE,ComboBoxChanged)
|
||||
COMMAND_ID_HANDLER_EX(IDC_ROM_32BIT,CheckBoxChanged)
|
||||
COMMAND_ID_HANDLER_EX(IDC_SYNC_AUDIO,CheckBoxChanged)
|
||||
COMMAND_ID_HANDLER_EX(IDC_ROM_FIXEDAUDIO,CheckBoxChanged)
|
||||
COMMAND_ID_HANDLER_EX(IDC_USE_TLB,CheckBoxChanged)
|
||||
COMMAND_ID_HANDLER_EX(IDC_DELAY_DP,CheckBoxChanged)
|
||||
COMMAND_ID_HANDLER_EX(IDC_DELAY_SI,CheckBoxChanged)
|
||||
COMMAND_ID_HANDLER_EX(IDC_AUDIO_SIGNAL,CheckBoxChanged)
|
||||
COMMAND_HANDLER_EX(IDC_VIREFRESH,EN_UPDATE,EditBoxChanged)
|
||||
COMMAND_HANDLER_EX(IDC_COUNTPERBYTE,EN_UPDATE,EditBoxChanged)
|
||||
END_MSG_MAP()
|
||||
|
||||
BEGIN_MSG_MAP_EX(CGameGeneralPage)
|
||||
COMMAND_HANDLER_EX(IDC_RDRAM_SIZE,LBN_SELCHANGE,ComboBoxChanged)
|
||||
COMMAND_HANDLER_EX(IDC_SAVE_TYPE,LBN_SELCHANGE,ComboBoxChanged)
|
||||
COMMAND_HANDLER_EX(IDC_COUNTFACT,LBN_SELCHANGE,ComboBoxChanged)
|
||||
COMMAND_ID_HANDLER_EX(IDC_ROM_32BIT,CheckBoxChanged)
|
||||
COMMAND_ID_HANDLER_EX(IDC_SYNC_AUDIO,CheckBoxChanged)
|
||||
COMMAND_ID_HANDLER_EX(IDC_ROM_FIXEDAUDIO,CheckBoxChanged)
|
||||
COMMAND_ID_HANDLER_EX(IDC_USE_TLB,CheckBoxChanged)
|
||||
COMMAND_ID_HANDLER_EX(IDC_DELAY_DP,CheckBoxChanged)
|
||||
COMMAND_ID_HANDLER_EX(IDC_DELAY_SI,CheckBoxChanged)
|
||||
COMMAND_ID_HANDLER_EX(IDC_AUDIO_SIGNAL,CheckBoxChanged)
|
||||
COMMAND_HANDLER_EX(IDC_VIREFRESH,EN_UPDATE,EditBoxChanged)
|
||||
COMMAND_HANDLER_EX(IDC_COUNTPERBYTE,EN_UPDATE,EditBoxChanged)
|
||||
END_MSG_MAP()
|
||||
|
||||
enum { IDD = IDD_Settings_GameGeneral };
|
||||
enum { IDD = IDD_Settings_GameGeneral };
|
||||
|
||||
public:
|
||||
CGameGeneralPage(HWND hParent, const RECT & rcDispay );
|
||||
CGameGeneralPage(HWND hParent, const RECT & rcDispay );
|
||||
|
||||
LanguageStringID PageTitle ( void ) { return TAB_ROMSETTINGS; }
|
||||
void HidePage ( void );
|
||||
void ShowPage ( void );
|
||||
void ApplySettings ( bool UpdateScreen );
|
||||
bool EnableReset ( void );
|
||||
void ResetPage ( void );
|
||||
|
||||
private:
|
||||
LanguageStringID PageTitle ( void ) { return TAB_ROMSETTINGS; }
|
||||
void HidePage ( void );
|
||||
void ShowPage ( void );
|
||||
void ApplySettings ( bool UpdateScreen );
|
||||
bool EnableReset ( void );
|
||||
void ResetPage ( void );
|
||||
};
|
||||
|
|
|
@ -10,61 +10,60 @@
|
|||
****************************************************************************/
|
||||
#include "stdafx.h"
|
||||
|
||||
#ifdef WINDOWS_UI
|
||||
#include "Settings Page.h"
|
||||
#include "Settings Page - Game - Plugin.h"
|
||||
|
||||
CGamePluginPage::CGamePluginPage (HWND hParent, const RECT & rcDispay )
|
||||
CGamePluginPage::CGamePluginPage(HWND hParent, const RECT & rcDispay)
|
||||
{
|
||||
if (!Create(hParent,rcDispay))
|
||||
if (!Create(hParent, rcDispay))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
//Set the text for all gui Items
|
||||
SetDlgItemTextW(m_hWnd, RSP_ABOUT,GS(PLUG_ABOUT));
|
||||
SetDlgItemTextW(m_hWnd, GFX_ABOUT,GS(PLUG_ABOUT));
|
||||
SetDlgItemTextW(m_hWnd, AUDIO_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_GFX_NAME,GS(PLUG_GFX));
|
||||
SetDlgItemTextW(m_hWnd, IDC_AUDIO_NAME,GS(PLUG_AUDIO));
|
||||
SetDlgItemTextW(m_hWnd, IDC_CONT_NAME,GS(PLUG_CTRL));
|
||||
|
||||
SetDlgItemTextW(m_hWnd, IDC_HLE_GFX,GS(PLUG_HLE_GFX));
|
||||
SetDlgItemTextW(m_hWnd, IDC_HLE_AUDIO,GS(PLUG_HLE_AUDIO));
|
||||
//Set the text for all gui Items
|
||||
SetDlgItemTextW(m_hWnd, RSP_ABOUT, GS(PLUG_ABOUT));
|
||||
SetDlgItemTextW(m_hWnd, GFX_ABOUT, GS(PLUG_ABOUT));
|
||||
SetDlgItemTextW(m_hWnd, AUDIO_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_GFX_NAME, GS(PLUG_GFX));
|
||||
SetDlgItemTextW(m_hWnd, IDC_AUDIO_NAME, GS(PLUG_AUDIO));
|
||||
SetDlgItemTextW(m_hWnd, IDC_CONT_NAME, GS(PLUG_CTRL));
|
||||
|
||||
SetDlgItemTextW(m_hWnd, IDC_HLE_GFX, GS(PLUG_HLE_GFX));
|
||||
SetDlgItemTextW(m_hWnd, IDC_HLE_AUDIO, GS(PLUG_HLE_AUDIO));
|
||||
|
||||
m_GfxGroup.Attach(GetDlgItem(IDC_GFX_NAME));
|
||||
m_AudioGroup.Attach(GetDlgItem(IDC_AUDIO_NAME));
|
||||
m_ControlGroup.Attach(GetDlgItem(IDC_CONT_NAME));
|
||||
m_RspGroup.Attach(GetDlgItem(IDC_RSP_NAME));
|
||||
|
||||
AddPlugins(GFX_LIST,Game_EditPlugin_Gfx,PLUGIN_TYPE_GFX);
|
||||
AddPlugins(AUDIO_LIST,Game_EditPlugin_Audio,PLUGIN_TYPE_AUDIO);
|
||||
AddPlugins(CONT_LIST,Game_EditPlugin_Contr,PLUGIN_TYPE_CONTROLLER);
|
||||
AddPlugins(RSP_LIST,Game_EditPlugin_RSP,PLUGIN_TYPE_RSP);
|
||||
AddPlugins(GFX_LIST, Game_EditPlugin_Gfx, PLUGIN_TYPE_GFX);
|
||||
AddPlugins(AUDIO_LIST, Game_EditPlugin_Audio, PLUGIN_TYPE_AUDIO);
|
||||
AddPlugins(CONT_LIST, Game_EditPlugin_Contr, PLUGIN_TYPE_CONTROLLER);
|
||||
AddPlugins(RSP_LIST, Game_EditPlugin_RSP, PLUGIN_TYPE_RSP);
|
||||
|
||||
AddModCheckBox(GetDlgItem(IDC_HLE_GFX), Game_UseHleGfx);
|
||||
AddModCheckBox(GetDlgItem(IDC_HLE_AUDIO), Game_UseHleAudio);
|
||||
|
||||
AddModCheckBox(GetDlgItem(IDC_HLE_GFX),Game_UseHleGfx);
|
||||
AddModCheckBox(GetDlgItem(IDC_HLE_AUDIO),Game_UseHleAudio);
|
||||
|
||||
UpdatePageSettings();
|
||||
}
|
||||
|
||||
void CGamePluginPage::AddPlugins (int ListId,SettingID Type, PLUGIN_TYPE PluginType )
|
||||
void CGamePluginPage::AddPlugins(int ListId, SettingID Type, PLUGIN_TYPE PluginType)
|
||||
{
|
||||
stdstr Default;
|
||||
bool PluginSelected = g_Settings->LoadStringVal(Type,Default);
|
||||
bool PluginSelected = g_Settings->LoadStringVal(Type, Default);
|
||||
|
||||
CModifiedComboBox * ComboBox;
|
||||
ComboBox = AddModComboBox(GetDlgItem(ListId),Type);
|
||||
ComboBox = AddModComboBox(GetDlgItem(ListId), Type);
|
||||
if (!PluginSelected)
|
||||
{
|
||||
ComboBox->SetDefault(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);
|
||||
if (Plugin == NULL)
|
||||
|
@ -75,7 +74,7 @@ void CGamePluginPage::AddPlugins (int ListId,SettingID Type, PLUGIN_TYPE PluginT
|
|||
{
|
||||
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);
|
||||
}
|
||||
|
@ -83,10 +82,10 @@ void CGamePluginPage::AddPlugins (int ListId,SettingID Type, PLUGIN_TYPE PluginT
|
|||
}
|
||||
}
|
||||
|
||||
void CGamePluginPage::ShowAboutButton ( int id )
|
||||
void CGamePluginPage::ShowAboutButton(int id)
|
||||
{
|
||||
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)
|
||||
{
|
||||
|
@ -100,11 +99,11 @@ void CGamePluginPage::ShowAboutButton ( int id )
|
|||
return;
|
||||
}
|
||||
int index = ComboBox->GetCurSel();
|
||||
if (index == CB_ERR)
|
||||
if (index == CB_ERR)
|
||||
{
|
||||
return;
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
const CPluginList::PLUGIN ** PluginPtr = (const CPluginList::PLUGIN **)ComboBox->GetItemDataPtr(index);
|
||||
if (PluginPtr == NULL)
|
||||
{
|
||||
|
@ -116,30 +115,30 @@ void CGamePluginPage::ShowAboutButton ( int id )
|
|||
{
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
//Load the plugin
|
||||
UINT LastErrorMode = SetErrorMode( SEM_FAILCRITICALERRORS );
|
||||
HMODULE hLib = LoadLibrary(Plugin->FullPath);
|
||||
UINT LastErrorMode = SetErrorMode(SEM_FAILCRITICALERRORS);
|
||||
HMODULE hLib = LoadLibrary(Plugin->FullPath);
|
||||
SetErrorMode(LastErrorMode);
|
||||
if (hLib == NULL)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
//Get DLL about
|
||||
void (__cdecl *DllAbout) ( HWND hWnd );
|
||||
DllAbout = (void (__cdecl *)(HWND))GetProcAddress( hLib, "DllAbout" );
|
||||
|
||||
void(__cdecl *DllAbout) (HWND hWnd);
|
||||
DllAbout = (void(__cdecl *)(HWND))GetProcAddress(hLib, "DllAbout");
|
||||
|
||||
//call the function from the dll
|
||||
DllAbout(m_hWnd);
|
||||
|
||||
FreeLibrary(hLib);
|
||||
}
|
||||
|
||||
void CGamePluginPage::PluginItemChanged ( int id, int AboutID, bool bSetChanged )
|
||||
void CGamePluginPage::PluginItemChanged(int id, int AboutID, bool bSetChanged)
|
||||
{
|
||||
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)
|
||||
{
|
||||
|
@ -154,9 +153,9 @@ void CGamePluginPage::PluginItemChanged ( int id, int AboutID, bool bSetChanged
|
|||
}
|
||||
|
||||
int index = ComboBox->GetCurSel();
|
||||
if (index == CB_ERR)
|
||||
if (index == CB_ERR)
|
||||
{
|
||||
return;
|
||||
return;
|
||||
}
|
||||
const CPluginList::PLUGIN ** PluginPtr = (const CPluginList::PLUGIN **)ComboBox->GetItemDataPtr(index);
|
||||
if (PluginPtr)
|
||||
|
@ -164,50 +163,51 @@ void CGamePluginPage::PluginItemChanged ( int id, int AboutID, bool bSetChanged
|
|||
const CPluginList::PLUGIN * Plugin = *PluginPtr;
|
||||
if (Plugin)
|
||||
{
|
||||
::EnableWindow(GetDlgItem(AboutID),Plugin->AboutFunction);
|
||||
::EnableWindow(GetDlgItem(AboutID), Plugin->AboutFunction);
|
||||
}
|
||||
}
|
||||
|
||||
if (bSetChanged)
|
||||
{
|
||||
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();
|
||||
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;
|
||||
stdstr SelectedValue;
|
||||
|
||||
bool PluginChanged = g_Settings->LoadStringVal(cb_iter->first,SelectedValue);
|
||||
|
||||
bool PluginChanged = g_Settings->LoadStringVal(cb_iter->first, SelectedValue);
|
||||
ComboBox->SetChanged(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);
|
||||
if (Plugin == NULL)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
if (_stricmp(SelectedValue.c_str(),Plugin->FileName.c_str()) != 0)
|
||||
if (_stricmp(SelectedValue.c_str(), Plugin->FileName.c_str()) != 0)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
ComboBox->SetDefault((WPARAM)Plugin);
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else {
|
||||
ComboBox->SetDefault(NULL);
|
||||
}
|
||||
}
|
||||
PluginItemChanged(GFX_LIST,GFX_ABOUT,false);
|
||||
PluginItemChanged(AUDIO_LIST,AUDIO_ABOUT,false);
|
||||
PluginItemChanged(CONT_LIST,CONT_ABOUT,false);
|
||||
PluginItemChanged(RSP_LIST,RSP_ABOUT,false);
|
||||
PluginItemChanged(GFX_LIST, GFX_ABOUT, false);
|
||||
PluginItemChanged(AUDIO_LIST, AUDIO_ABOUT, false);
|
||||
PluginItemChanged(CONT_LIST, CONT_ABOUT, false);
|
||||
PluginItemChanged(RSP_LIST, RSP_ABOUT, false);
|
||||
}
|
||||
|
||||
void CGamePluginPage::HidePage()
|
||||
|
@ -220,12 +220,12 @@ void CGamePluginPage::ShowPage()
|
|||
ShowWindow(SW_SHOW);
|
||||
}
|
||||
|
||||
void CGamePluginPage::ApplySettings( bool UpdateScreen )
|
||||
void CGamePluginPage::ApplySettings(bool UpdateScreen)
|
||||
{
|
||||
CSettingsPageImpl<CGamePluginPage>::ApplySettings(UpdateScreen);
|
||||
}
|
||||
|
||||
bool CGamePluginPage::EnableReset ( void )
|
||||
bool CGamePluginPage::EnableReset(void)
|
||||
{
|
||||
if (CSettingsPageImpl<CGamePluginPage>::EnableReset()) { return true; }
|
||||
return false;
|
||||
|
@ -236,17 +236,17 @@ void 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;
|
||||
if (ComboBox->IsChanged())
|
||||
{
|
||||
int index = ComboBox->GetCurSel();
|
||||
if (index == CB_ERR)
|
||||
if (index == CB_ERR)
|
||||
{
|
||||
return;
|
||||
return;
|
||||
}
|
||||
|
||||
const CPluginList::PLUGIN ** PluginPtr = (const CPluginList::PLUGIN **)ComboBox->GetItemDataPtr(index);
|
||||
|
@ -261,9 +261,10 @@ void CGamePluginPage::ApplyComboBoxes ( void )
|
|||
{
|
||||
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);
|
||||
}
|
||||
}
|
||||
|
@ -275,7 +276,7 @@ void CGamePluginPage::ApplyComboBoxes ( void )
|
|||
}
|
||||
}
|
||||
|
||||
bool CGamePluginPage::ResetComboBox ( CModifiedComboBox & ComboBox, SettingID /*Type*/ )
|
||||
bool CGamePluginPage::ResetComboBox(CModifiedComboBox & ComboBox, SettingID /*Type*/)
|
||||
{
|
||||
if (!ComboBox.IsChanged())
|
||||
{
|
||||
|
@ -300,18 +301,18 @@ bool CGamePluginPage::ResetComboBox ( CModifiedComboBox & ComboBox, SettingID /*
|
|||
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;
|
||||
if ((int)Button->GetMenu() != id)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
}
|
||||
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)
|
||||
{
|
||||
Button->SetCheck(BST_CHECKED);
|
||||
|
@ -319,23 +320,23 @@ void CGamePluginPage::HleGfxChanged ( UINT /*Code*/, int id, HWND /*ctl*/ )
|
|||
}
|
||||
}
|
||||
Button->SetChanged(true);
|
||||
SendMessage(GetParent(),PSM_CHANGED,(WPARAM)m_hWnd,0);
|
||||
SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0);
|
||||
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;
|
||||
if ((int)Button->GetMenu() != id)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
}
|
||||
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)
|
||||
{
|
||||
Button->SetCheck(BST_UNCHECKED);
|
||||
|
@ -343,8 +344,7 @@ void CGamePluginPage::HleAudioChanged ( UINT /*Code*/, int id, HWND /*ctl*/ )
|
|||
}
|
||||
}
|
||||
Button->SetChanged(true);
|
||||
SendMessage(GetParent(),PSM_CHANGED,(WPARAM)m_hWnd,0);
|
||||
SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0);
|
||||
break;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -17,51 +17,51 @@ class CGamePluginPage :
|
|||
public CSettingsPage
|
||||
{
|
||||
BEGIN_MSG_MAP_EX(CGamePluginPage)
|
||||
COMMAND_HANDLER_EX(GFX_LIST,LBN_SELCHANGE,GfxPluginChanged)
|
||||
COMMAND_HANDLER_EX(AUDIO_LIST,LBN_SELCHANGE,AudioPluginChanged)
|
||||
COMMAND_HANDLER_EX(CONT_LIST,LBN_SELCHANGE,ControllerPluginChanged)
|
||||
COMMAND_HANDLER_EX(RSP_LIST,LBN_SELCHANGE,RspPluginChanged)
|
||||
COMMAND_ID_HANDLER_EX(GFX_ABOUT,GfxPluginAbout)
|
||||
COMMAND_ID_HANDLER_EX(AUDIO_ABOUT,AudioPluginAbout)
|
||||
COMMAND_ID_HANDLER_EX(CONT_ABOUT,ControllerPluginAbout)
|
||||
COMMAND_ID_HANDLER_EX(RSP_ABOUT,RspPluginAbout)
|
||||
COMMAND_ID_HANDLER_EX(IDC_HLE_GFX,HleGfxChanged)
|
||||
COMMAND_ID_HANDLER_EX(IDC_HLE_AUDIO,HleAudioChanged)
|
||||
END_MSG_MAP()
|
||||
COMMAND_HANDLER_EX(GFX_LIST, LBN_SELCHANGE, GfxPluginChanged)
|
||||
COMMAND_HANDLER_EX(AUDIO_LIST, LBN_SELCHANGE, AudioPluginChanged)
|
||||
COMMAND_HANDLER_EX(CONT_LIST, LBN_SELCHANGE, ControllerPluginChanged)
|
||||
COMMAND_HANDLER_EX(RSP_LIST, LBN_SELCHANGE, RspPluginChanged)
|
||||
COMMAND_ID_HANDLER_EX(GFX_ABOUT, GfxPluginAbout)
|
||||
COMMAND_ID_HANDLER_EX(AUDIO_ABOUT, AudioPluginAbout)
|
||||
COMMAND_ID_HANDLER_EX(CONT_ABOUT, ControllerPluginAbout)
|
||||
COMMAND_ID_HANDLER_EX(RSP_ABOUT, RspPluginAbout)
|
||||
COMMAND_ID_HANDLER_EX(IDC_HLE_GFX, HleGfxChanged)
|
||||
COMMAND_ID_HANDLER_EX(IDC_HLE_AUDIO, HleAudioChanged)
|
||||
END_MSG_MAP()
|
||||
|
||||
enum { IDD = IDD_Settings_GamePlugin };
|
||||
enum { IDD = IDD_Settings_GamePlugin };
|
||||
|
||||
public:
|
||||
CGamePluginPage(HWND hParent, const RECT & rcDispay );
|
||||
CGamePluginPage(HWND hParent, const RECT & rcDispay);
|
||||
|
||||
LanguageStringID PageTitle ( void ) { return TAB_PLUGIN; }
|
||||
void HidePage ( void );
|
||||
void ShowPage ( void );
|
||||
void ApplySettings ( bool UpdateScreen );
|
||||
bool EnableReset ( void );
|
||||
void ResetPage ( void );
|
||||
LanguageStringID PageTitle(void) { return TAB_PLUGIN; }
|
||||
void HidePage(void);
|
||||
void ShowPage(void);
|
||||
void ApplySettings(bool UpdateScreen);
|
||||
bool EnableReset(void);
|
||||
void ResetPage(void);
|
||||
|
||||
private:
|
||||
void GfxPluginAbout ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ ) { ShowAboutButton(GFX_LIST); }
|
||||
void AudioPluginAbout ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ ) { ShowAboutButton(AUDIO_LIST); }
|
||||
void ControllerPluginAbout ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ ) { ShowAboutButton(CONT_LIST); }
|
||||
void RspPluginAbout ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ ) { ShowAboutButton(RSP_LIST); }
|
||||
void GfxPluginAbout(UINT /*Code*/, int /*id*/, HWND /*ctl*/) { ShowAboutButton(GFX_LIST); }
|
||||
void AudioPluginAbout(UINT /*Code*/, int /*id*/, HWND /*ctl*/) { ShowAboutButton(AUDIO_LIST); }
|
||||
void ControllerPluginAbout(UINT /*Code*/, int /*id*/, HWND /*ctl*/) { ShowAboutButton(CONT_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 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 RspPluginChanged ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ ) { PluginItemChanged(RSP_LIST,RSP_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 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 HleGfxChanged ( UINT Code, int id, HWND ctl );
|
||||
void HleAudioChanged ( UINT Code, int id, HWND ctl );
|
||||
void HleGfxChanged(UINT Code, int id, HWND ctl);
|
||||
void HleAudioChanged(UINT Code, int id, HWND ctl);
|
||||
|
||||
void ShowAboutButton ( int id );
|
||||
void PluginItemChanged ( int id, int AboutID, bool bSetChanged = true );
|
||||
void ShowAboutButton(int id);
|
||||
void PluginItemChanged(int id, int AboutID, bool bSetChanged = true);
|
||||
|
||||
void AddPlugins (int ListId,SettingID Type, PLUGIN_TYPE PluginType );
|
||||
void UpdatePageSettings ( void );
|
||||
void ApplyComboBoxes ( void );
|
||||
bool ResetComboBox ( CModifiedComboBox & ComboBox, SettingID Type );
|
||||
void AddPlugins(int ListId, SettingID Type, PLUGIN_TYPE PluginType);
|
||||
void UpdatePageSettings(void);
|
||||
void ApplyComboBoxes(void);
|
||||
bool ResetComboBox(CModifiedComboBox & ComboBox, SettingID Type);
|
||||
|
||||
CPartialGroupBox m_GfxGroup, m_AudioGroup, m_ControlGroup, m_RspGroup;
|
||||
CPluginList m_PluginList;
|
||||
|
|
|
@ -10,13 +10,12 @@
|
|||
****************************************************************************/
|
||||
#include "stdafx.h"
|
||||
|
||||
#ifdef WINDOWS_UI
|
||||
#include "Settings Page.h"
|
||||
#include "Settings Page - Game - Recompiler.h"
|
||||
|
||||
CGameRecompilePage::CGameRecompilePage (HWND hParent, const RECT & rcDispay )
|
||||
CGameRecompilePage::CGameRecompilePage(HWND hParent, const RECT & rcDispay)
|
||||
{
|
||||
if (!Create(hParent,rcDispay))
|
||||
if (!Create(hParent, rcDispay))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
@ -38,19 +37,19 @@ CGameRecompilePage::CGameRecompilePage (HWND hParent, const RECT & rcDispay )
|
|||
|
||||
m_SelfModGroup.Attach(GetDlgItem(IDC_SMM_FRAME));
|
||||
|
||||
AddModCheckBox(GetDlgItem(IDC_ROM_REGCACHE),Game_RegCache);
|
||||
AddModCheckBox(GetDlgItem(IDC_BLOCK_LINKING),Game_BlockLinking);
|
||||
AddModCheckBox(GetDlgItem(IDC_SMM_CACHE),Game_SMM_Cache);
|
||||
AddModCheckBox(GetDlgItem(IDC_SMM_DMA),Game_SMM_PIDMA);
|
||||
AddModCheckBox(GetDlgItem(IDC_SMM_VALIDATE),Game_SMM_ValidFunc);
|
||||
AddModCheckBox(GetDlgItem(IDC_SMM_TLB),Game_SMM_TLB);
|
||||
AddModCheckBox(GetDlgItem(IDC_SMM_PROTECT),Game_SMM_Protect);
|
||||
::ShowWindow(GetDlgItem(IDC_SMM_STORE),SW_HIDE);
|
||||
AddModCheckBox(GetDlgItem(IDC_ROM_REGCACHE), Game_RegCache);
|
||||
AddModCheckBox(GetDlgItem(IDC_BLOCK_LINKING), Game_BlockLinking);
|
||||
AddModCheckBox(GetDlgItem(IDC_SMM_CACHE), Game_SMM_Cache);
|
||||
AddModCheckBox(GetDlgItem(IDC_SMM_DMA), Game_SMM_PIDMA);
|
||||
AddModCheckBox(GetDlgItem(IDC_SMM_VALIDATE), Game_SMM_ValidFunc);
|
||||
AddModCheckBox(GetDlgItem(IDC_SMM_TLB), Game_SMM_TLB);
|
||||
AddModCheckBox(GetDlgItem(IDC_SMM_PROTECT), Game_SMM_Protect);
|
||||
::ShowWindow(GetDlgItem(IDC_SMM_STORE), SW_HIDE);
|
||||
//AddModCheckBox(GetDlgItem(IDC_SMM_STORE),Game_SMM_StoreInstruc);
|
||||
AddModCheckBox(GetDlgItem(IDC_ROM_FASTSP),Game_FastSP);
|
||||
AddModCheckBox(GetDlgItem(IDC_ROM_FASTSP), Game_FastSP);
|
||||
|
||||
CModifiedComboBox * ComboBox;
|
||||
ComboBox = AddModComboBox(GetDlgItem(IDC_CPU_TYPE),Game_CpuType);
|
||||
ComboBox = AddModComboBox(GetDlgItem(IDC_CPU_TYPE), Game_CpuType);
|
||||
if (ComboBox)
|
||||
{
|
||||
ComboBox->AddItemW(GS(CORE_RECOMPILER), CPU_Recompiler);
|
||||
|
@ -61,7 +60,7 @@ CGameRecompilePage::CGameRecompilePage (HWND hParent, const RECT & rcDispay )
|
|||
}
|
||||
}
|
||||
|
||||
ComboBox = AddModComboBox(GetDlgItem(IDC_FUNCFIND),Game_FuncLookupMode);
|
||||
ComboBox = AddModComboBox(GetDlgItem(IDC_FUNCFIND), Game_FuncLookupMode);
|
||||
if (ComboBox)
|
||||
{
|
||||
ComboBox->AddItemW(GS(FLM_PLOOKUP), FuncFind_PhysicalLookup);
|
||||
|
@ -81,12 +80,12 @@ void CGameRecompilePage::HidePage()
|
|||
ShowWindow(SW_HIDE);
|
||||
}
|
||||
|
||||
void CGameRecompilePage::ApplySettings( bool UpdateScreen )
|
||||
void CGameRecompilePage::ApplySettings(bool UpdateScreen)
|
||||
{
|
||||
CSettingsPageImpl<CGameRecompilePage>::ApplySettings(UpdateScreen);
|
||||
}
|
||||
|
||||
bool CGameRecompilePage::EnableReset ( void )
|
||||
bool CGameRecompilePage::EnableReset(void)
|
||||
{
|
||||
if (CSettingsPageImpl<CGameRecompilePage>::EnableReset()) { return true; }
|
||||
return false;
|
||||
|
@ -96,4 +95,3 @@ void CGameRecompilePage::ResetPage()
|
|||
{
|
||||
CSettingsPageImpl<CGameRecompilePage>::ResetPage();
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -10,38 +10,37 @@
|
|||
****************************************************************************/
|
||||
#include "stdafx.h"
|
||||
|
||||
#ifdef WINDOWS_UI
|
||||
#include "Settings Page.h"
|
||||
#include "Settings Page - Game - Status.h"
|
||||
|
||||
CGameStatusPage::CGameStatusPage (HWND hParent, const RECT & rcDispay )
|
||||
CGameStatusPage::CGameStatusPage(HWND hParent, const RECT & rcDispay)
|
||||
{
|
||||
if (!Create(hParent,rcDispay))
|
||||
if (!Create(hParent, rcDispay))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
CIniFile RomIniFile (g_Settings->LoadStringVal(SupportFile_RomDatabase).c_str());
|
||||
CIniFile RomIniFile(g_Settings->LoadStringVal(SupportFile_RomDatabase).c_str());
|
||||
strlist Keys;
|
||||
RomIniFile.GetKeyList("Rom Status",Keys);
|
||||
RomIniFile.GetKeyList("Rom Status", Keys);
|
||||
stdstr Status = g_Settings->LoadStringVal(Rdb_Status);
|
||||
|
||||
CModifiedComboBoxTxt * ComboBox;
|
||||
ComboBox = AddModComboBoxTxt(GetDlgItem(IDC_STATUS_TYPE),Rdb_Status);
|
||||
ComboBox = AddModComboBoxTxt(GetDlgItem(IDC_STATUS_TYPE), Rdb_Status);
|
||||
if (ComboBox)
|
||||
{
|
||||
for (strlist::iterator item = Keys.begin(); item != Keys.end(); item++ )
|
||||
for (strlist::iterator item = Keys.begin(); item != Keys.end(); item++)
|
||||
{
|
||||
if (strstr(item->c_str(),".Sel") != NULL) { continue; }
|
||||
if (strstr(item->c_str(),".Auto") != NULL) { continue; }
|
||||
if (strstr(item->c_str(), ".Sel") != NULL) { continue; }
|
||||
if (strstr(item->c_str(), ".Auto") != NULL) { continue; }
|
||||
ComboBox->AddItem(item->c_str(), item->c_str());
|
||||
}
|
||||
ComboBox->SetTextField(GetDlgItem(IDC_STATUS_TEXT));
|
||||
}
|
||||
CModifiedEditBox * TxtBox;
|
||||
TxtBox = AddModTextBox(GetDlgItem(IDC_NOTES_CORE),Rdb_NotesCore,true);
|
||||
TxtBox = AddModTextBox(GetDlgItem(IDC_NOTES_CORE), Rdb_NotesCore, true);
|
||||
TxtBox->SetTextField(GetDlgItem(IDC_NOTES_CORE_TEXT));
|
||||
TxtBox = AddModTextBox(GetDlgItem(IDC_NOTES_PLUGIN),Rdb_NotesPlugin,true);
|
||||
TxtBox = AddModTextBox(GetDlgItem(IDC_NOTES_PLUGIN), Rdb_NotesPlugin, true);
|
||||
TxtBox->SetTextField(GetDlgItem(IDC_NOTES_PLUGIN_TEXT));
|
||||
|
||||
UpdatePageSettings();
|
||||
|
@ -57,12 +56,12 @@ void CGameStatusPage::HidePage()
|
|||
ShowWindow(SW_HIDE);
|
||||
}
|
||||
|
||||
void CGameStatusPage::ApplySettings( bool UpdateScreen )
|
||||
void CGameStatusPage::ApplySettings(bool UpdateScreen)
|
||||
{
|
||||
CSettingsPageImpl<CGameStatusPage>::ApplySettings(UpdateScreen);
|
||||
}
|
||||
|
||||
bool CGameStatusPage::EnableReset ( void )
|
||||
bool CGameStatusPage::EnableReset(void)
|
||||
{
|
||||
if (CSettingsPageImpl<CGameStatusPage>::EnableReset()) { return true; }
|
||||
return false;
|
||||
|
@ -72,4 +71,3 @@ void CGameStatusPage::ResetPage()
|
|||
{
|
||||
CSettingsPageImpl<CGameStatusPage>::ResetPage();
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -10,31 +10,30 @@
|
|||
****************************************************************************/
|
||||
#include "stdafx.h"
|
||||
|
||||
#ifdef WINDOWS_UI
|
||||
#include "Settings Page.h"
|
||||
|
||||
COptionsGameBrowserPage::COptionsGameBrowserPage (HWND hParent, const RECT & rcDispay ) :
|
||||
m_OrderChanged(false),
|
||||
m_OrderReset(false)
|
||||
COptionsGameBrowserPage::COptionsGameBrowserPage(HWND hParent, const RECT & rcDispay) :
|
||||
m_OrderChanged(false),
|
||||
m_OrderReset(false)
|
||||
{
|
||||
if (!Create(hParent,rcDispay))
|
||||
if (!Create(hParent, rcDispay))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
SetDlgItemTextW(m_hWnd, IDC_ROMSEL_TEXT2,GS(RB_ROMS));
|
||||
SetDlgItemTextW(m_hWnd, IDC_ROMSEL_TEXT4,GS(RB_DIRS));
|
||||
SetDlgItemTextW(m_hWnd, IDC_USE_ROMBROWSER,GS(RB_USE));
|
||||
SetDlgItemTextW(m_hWnd, IDC_RECURSION,GS(RB_DIR_RECURSION));
|
||||
SetDlgItemTextW(m_hWnd, IDC_ROMSEL_TEXT5,GS(RB_AVALIABLE_FIELDS));
|
||||
SetDlgItemTextW(m_hWnd, IDC_ROMSEL_TEXT6,GS(RB_SHOW_FIELDS));
|
||||
SetDlgItemTextW(m_hWnd, IDC_ADD,GS(RB_ADD));
|
||||
SetDlgItemTextW(m_hWnd, IDC_REMOVE,GS(RB_REMOVE));
|
||||
SetDlgItemTextW(m_hWnd, IDC_UP,GS(RB_UP));
|
||||
SetDlgItemTextW(m_hWnd, IDC_DOWN,GS(RB_DOWN));
|
||||
|
||||
AddModCheckBox(GetDlgItem(IDC_USE_ROMBROWSER),RomBrowser_Enabled);
|
||||
AddModCheckBox(GetDlgItem(IDC_RECURSION),RomBrowser_Recursive);
|
||||
SetDlgItemTextW(m_hWnd, IDC_ROMSEL_TEXT2, GS(RB_ROMS));
|
||||
SetDlgItemTextW(m_hWnd, IDC_ROMSEL_TEXT4, GS(RB_DIRS));
|
||||
SetDlgItemTextW(m_hWnd, IDC_USE_ROMBROWSER, GS(RB_USE));
|
||||
SetDlgItemTextW(m_hWnd, IDC_RECURSION, GS(RB_DIR_RECURSION));
|
||||
SetDlgItemTextW(m_hWnd, IDC_ROMSEL_TEXT5, GS(RB_AVALIABLE_FIELDS));
|
||||
SetDlgItemTextW(m_hWnd, IDC_ROMSEL_TEXT6, GS(RB_SHOW_FIELDS));
|
||||
SetDlgItemTextW(m_hWnd, IDC_ADD, GS(RB_ADD));
|
||||
SetDlgItemTextW(m_hWnd, IDC_REMOVE, GS(RB_REMOVE));
|
||||
SetDlgItemTextW(m_hWnd, IDC_UP, GS(RB_UP));
|
||||
SetDlgItemTextW(m_hWnd, IDC_DOWN, GS(RB_DOWN));
|
||||
|
||||
AddModCheckBox(GetDlgItem(IDC_USE_ROMBROWSER), RomBrowser_Enabled);
|
||||
AddModCheckBox(GetDlgItem(IDC_RECURSION), RomBrowser_Recursive);
|
||||
|
||||
m_Avaliable.Attach(GetDlgItem(IDC_AVALIABLE));
|
||||
m_Using.Attach(GetDlgItem(IDC_USING));
|
||||
|
@ -44,63 +43,63 @@ COptionsGameBrowserPage::COptionsGameBrowserPage (HWND hParent, const RECT & rcD
|
|||
UpdatePageSettings();
|
||||
}
|
||||
|
||||
void COptionsGameBrowserPage::UpdateFieldList ( const ROMBROWSER_FIELDS_LIST & Fields )
|
||||
void COptionsGameBrowserPage::UpdateFieldList(const ROMBROWSER_FIELDS_LIST & Fields)
|
||||
{
|
||||
m_Avaliable.ResetContent();
|
||||
m_Using.ResetContent();
|
||||
|
||||
m_OrderChanged = false;
|
||||
for (int i = 0, n = Fields.size(); i < n; i++)
|
||||
for (int i = 0, n = Fields.size(); i < n; i++)
|
||||
{
|
||||
if (Fields[i].PosChanged())
|
||||
{
|
||||
m_OrderChanged = true;
|
||||
}
|
||||
int Pos = Fields[i].Pos();
|
||||
if (Pos < 0)
|
||||
{
|
||||
m_Avaliable.SetItemData(m_Avaliable.AddStringW(GS(Fields[i].LangID())),i);
|
||||
if (Pos < 0)
|
||||
{
|
||||
m_Avaliable.SetItemData(m_Avaliable.AddStringW(GS(Fields[i].LangID())), i);
|
||||
continue;
|
||||
}
|
||||
int listCount = m_Using.GetCount();
|
||||
if (Pos > listCount) { Pos = listCount; }
|
||||
m_Using.SetItemData(m_Using.InsertStringW(Pos,GS(Fields[i].LangID())),i);
|
||||
m_Using.SetItemData(m_Using.InsertStringW(Pos, GS(Fields[i].LangID())), i);
|
||||
}
|
||||
}
|
||||
|
||||
void COptionsGameBrowserPage::UpdatePageSettings ( void )
|
||||
void COptionsGameBrowserPage::UpdatePageSettings(void)
|
||||
{
|
||||
UpdateFieldList(m_Fields);
|
||||
CSettingsPageImpl<COptionsGameBrowserPage>::UpdatePageSettings();
|
||||
FixCtrlState();
|
||||
}
|
||||
|
||||
void COptionsGameBrowserPage::UseRomBrowserChanged ( UINT Code, int id, HWND ctl )
|
||||
void COptionsGameBrowserPage::UseRomBrowserChanged(UINT Code, int id, HWND ctl)
|
||||
{
|
||||
CheckBoxChanged(Code,id,ctl);
|
||||
CheckBoxChanged(Code, id, ctl);
|
||||
FixCtrlState();
|
||||
}
|
||||
|
||||
void COptionsGameBrowserPage::FixCtrlState ( void )
|
||||
void COptionsGameBrowserPage::FixCtrlState(void)
|
||||
{
|
||||
bool bEnabled = (SendDlgItemMessage(IDC_USE_ROMBROWSER,BM_GETCHECK,0,0) == BST_CHECKED);
|
||||
::EnableWindow(GetDlgItem(IDC_ROMSEL_TEXT5),bEnabled);
|
||||
::EnableWindow(GetDlgItem(IDC_ROMSEL_TEXT6),bEnabled);
|
||||
::EnableWindow(GetDlgItem(IDC_AVALIABLE),bEnabled);
|
||||
::EnableWindow(GetDlgItem(IDC_ADD),bEnabled);
|
||||
::EnableWindow(GetDlgItem(IDC_REMOVE),bEnabled);
|
||||
::EnableWindow(GetDlgItem(IDC_USING),bEnabled);
|
||||
::EnableWindow(GetDlgItem(IDC_UP),bEnabled);
|
||||
::EnableWindow(GetDlgItem(IDC_DOWN),bEnabled);
|
||||
::EnableWindow(GetDlgItem(IDC_RECURSION),bEnabled);
|
||||
bool bEnabled = (SendDlgItemMessage(IDC_USE_ROMBROWSER, BM_GETCHECK, 0, 0) == BST_CHECKED);
|
||||
::EnableWindow(GetDlgItem(IDC_ROMSEL_TEXT5), bEnabled);
|
||||
::EnableWindow(GetDlgItem(IDC_ROMSEL_TEXT6), bEnabled);
|
||||
::EnableWindow(GetDlgItem(IDC_AVALIABLE), bEnabled);
|
||||
::EnableWindow(GetDlgItem(IDC_ADD), bEnabled);
|
||||
::EnableWindow(GetDlgItem(IDC_REMOVE), bEnabled);
|
||||
::EnableWindow(GetDlgItem(IDC_USING), bEnabled);
|
||||
::EnableWindow(GetDlgItem(IDC_UP), bEnabled);
|
||||
::EnableWindow(GetDlgItem(IDC_DOWN), bEnabled);
|
||||
::EnableWindow(GetDlgItem(IDC_RECURSION), bEnabled);
|
||||
}
|
||||
|
||||
void COptionsGameBrowserPage::AddFieldClicked ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ )
|
||||
void COptionsGameBrowserPage::AddFieldClicked(UINT /*Code*/, int /*id*/, HWND /*ctl*/)
|
||||
{
|
||||
int index = m_Avaliable.GetCurSel();
|
||||
if (index < 0)
|
||||
if (index < 0)
|
||||
{
|
||||
return;
|
||||
return;
|
||||
}
|
||||
//remove from list
|
||||
int i = m_Avaliable.GetItemData(index);
|
||||
|
@ -108,20 +107,20 @@ void COptionsGameBrowserPage::AddFieldClicked ( UINT /*Code*/, int /*id*/, HWND
|
|||
|
||||
//select next in list
|
||||
int listCount = m_Avaliable.GetCount();
|
||||
if (index >= listCount) { index -= 1;}
|
||||
if (index >= listCount) { index -= 1; }
|
||||
m_Avaliable.SetCurSel(index);
|
||||
|
||||
//Add to list
|
||||
index = m_Using.AddStringW(GS(m_Fields[i].LangID()));
|
||||
m_Using.SetItemData(index,i);
|
||||
m_Using.SetItemData(index, i);
|
||||
m_Using.SetCurSel(index);
|
||||
|
||||
m_OrderChanged = true;
|
||||
m_OrderReset = false;
|
||||
SendMessage(GetParent(),PSM_CHANGED ,(WPARAM)m_hWnd,0);
|
||||
SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0);
|
||||
}
|
||||
|
||||
void COptionsGameBrowserPage::RemoveFieldClicked ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ )
|
||||
void COptionsGameBrowserPage::RemoveFieldClicked(UINT /*Code*/, int /*id*/, HWND /*ctl*/)
|
||||
{
|
||||
int index = m_Using.GetCurSel();
|
||||
if (index < 0)
|
||||
|
@ -147,42 +146,42 @@ void COptionsGameBrowserPage::RemoveFieldClicked ( UINT /*Code*/, int /*id*/, HW
|
|||
SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0);
|
||||
}
|
||||
|
||||
void COptionsGameBrowserPage::MoveFieldUpClicked ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ )
|
||||
void COptionsGameBrowserPage::MoveFieldUpClicked(UINT /*Code*/, int /*id*/, HWND /*ctl*/)
|
||||
{
|
||||
int index = m_Using.GetCurSel();
|
||||
if (index <= 0)
|
||||
{
|
||||
return;
|
||||
if (index <= 0)
|
||||
{
|
||||
return;
|
||||
}
|
||||
int i = m_Using.GetItemData(index);
|
||||
m_Using.DeleteString(index);
|
||||
|
||||
index = m_Using.InsertStringW(index - 1,GS(m_Fields[i].LangID()));
|
||||
m_Using.SetItemData(index,i);
|
||||
index = m_Using.InsertStringW(index - 1, GS(m_Fields[i].LangID()));
|
||||
m_Using.SetItemData(index, i);
|
||||
m_Using.SetCurSel(index);
|
||||
|
||||
m_OrderChanged = true;
|
||||
m_OrderReset = false;
|
||||
SendMessage(GetParent(),PSM_CHANGED ,(WPARAM)m_hWnd,0);
|
||||
SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0);
|
||||
}
|
||||
|
||||
void COptionsGameBrowserPage::MoveFieldDownClicked ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ )
|
||||
void COptionsGameBrowserPage::MoveFieldDownClicked(UINT /*Code*/, int /*id*/, HWND /*ctl*/)
|
||||
{
|
||||
int index = m_Using.GetCurSel();
|
||||
if (index < 0 || index >= (m_Using.GetCount() - 1))
|
||||
{
|
||||
return;
|
||||
{
|
||||
return;
|
||||
}
|
||||
int i = m_Using.GetItemData(index);
|
||||
m_Using.DeleteString(index);
|
||||
|
||||
index = m_Using.InsertStringW(index + 1,GS(m_Fields[i].LangID()));
|
||||
m_Using.SetItemData(index,i);
|
||||
index = m_Using.InsertStringW(index + 1, GS(m_Fields[i].LangID()));
|
||||
m_Using.SetItemData(index, i);
|
||||
m_Using.SetCurSel(index);
|
||||
|
||||
m_OrderChanged = true;
|
||||
m_OrderReset = false;
|
||||
SendMessage(GetParent(),PSM_CHANGED ,(WPARAM)m_hWnd,0);
|
||||
SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0);
|
||||
}
|
||||
|
||||
void COptionsGameBrowserPage::HidePage()
|
||||
|
@ -195,19 +194,21 @@ void COptionsGameBrowserPage::ShowPage()
|
|||
ShowWindow(SW_SHOW);
|
||||
}
|
||||
|
||||
void COptionsGameBrowserPage::ApplySettings( bool UpdateScreen )
|
||||
void COptionsGameBrowserPage::ApplySettings(bool UpdateScreen)
|
||||
{
|
||||
bool bColChanged = false;
|
||||
if (m_OrderReset)
|
||||
{
|
||||
for (size_t i = 0; i < m_Fields.size(); i++ )
|
||||
for (size_t i = 0; i < m_Fields.size(); i++)
|
||||
{
|
||||
m_Fields[i].ResetPos();
|
||||
}
|
||||
bColChanged = true;
|
||||
} else {
|
||||
}
|
||||
else
|
||||
{
|
||||
size_t Item, listCount = m_Using.GetCount();
|
||||
for (Item = 0; Item < listCount; Item ++ )
|
||||
for (Item = 0; Item < listCount; Item++)
|
||||
{
|
||||
int Pos = m_Using.GetItemData(Item);
|
||||
if (m_OrderReset || m_Fields[Pos].Pos() != Item)
|
||||
|
@ -218,7 +219,7 @@ void COptionsGameBrowserPage::ApplySettings( bool UpdateScreen )
|
|||
}
|
||||
|
||||
listCount = m_Avaliable.GetCount();
|
||||
for (Item = 0; Item < listCount; Item ++ )
|
||||
for (Item = 0; Item < listCount; Item++)
|
||||
{
|
||||
int Pos = m_Avaliable.GetItemData(Item);
|
||||
if (m_OrderReset || m_Fields[Pos].Pos() != -1)
|
||||
|
@ -230,13 +231,13 @@ void COptionsGameBrowserPage::ApplySettings( bool UpdateScreen )
|
|||
}
|
||||
if (bColChanged)
|
||||
{
|
||||
g_Settings->SaveBool(RomBrowser_ColoumnsChanged,!g_Settings->LoadBool(RomBrowser_ColoumnsChanged));
|
||||
g_Settings->SaveBool(RomBrowser_ColoumnsChanged, !g_Settings->LoadBool(RomBrowser_ColoumnsChanged));
|
||||
}
|
||||
|
||||
CSettingsPageImpl<COptionsGameBrowserPage>::ApplySettings(UpdateScreen);
|
||||
}
|
||||
|
||||
bool COptionsGameBrowserPage::EnableReset ( void )
|
||||
bool COptionsGameBrowserPage::EnableReset(void)
|
||||
{
|
||||
if (m_OrderChanged) { return true; }
|
||||
return CSettingsPageImpl<COptionsGameBrowserPage>::EnableReset();
|
||||
|
@ -244,14 +245,13 @@ bool COptionsGameBrowserPage::EnableReset ( void )
|
|||
|
||||
void COptionsGameBrowserPage::ResetPage()
|
||||
{
|
||||
if (m_OrderChanged)
|
||||
{
|
||||
if (m_OrderChanged)
|
||||
{
|
||||
ROMBROWSER_FIELDS_LIST Fields;
|
||||
CRomBrowser::GetFieldInfo(Fields,true);
|
||||
CRomBrowser::GetFieldInfo(Fields, true);
|
||||
UpdateFieldList(Fields);
|
||||
m_OrderReset = true;
|
||||
SendMessage(GetParent(),PSM_CHANGED,(WPARAM)m_hWnd,0);
|
||||
SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0);
|
||||
}
|
||||
CSettingsPageImpl<COptionsGameBrowserPage>::ResetPage();
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -10,58 +10,56 @@
|
|||
****************************************************************************/
|
||||
#include "stdafx.h"
|
||||
|
||||
#ifdef WINDOWS_UI
|
||||
#include "Settings Page.h"
|
||||
|
||||
COptionsShortCutsPage::COptionsShortCutsPage (HWND hParent, const RECT & rcDispay ) :
|
||||
m_EnableReset(false)
|
||||
COptionsShortCutsPage::COptionsShortCutsPage(HWND hParent, const RECT & rcDispay) :
|
||||
m_EnableReset(false)
|
||||
{
|
||||
if (!Create(hParent,rcDispay))
|
||||
if (!Create(hParent, rcDispay))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
SetDlgItemTextW(m_hWnd, IDC_S_CPU_STATE,GS(ACCEL_CPUSTATE_TITLE));
|
||||
SetDlgItemTextW(m_hWnd, IDC_MENU_ITEM_TEXT,GS(ACCEL_MENUITEM_TITLE));
|
||||
SetDlgItemTextW(m_hWnd, IDC_S_CURRENT_KEYS,GS(ACCEL_CURRENTKEYS_TITLE));
|
||||
SetDlgItemTextW(m_hWnd, IDC_S_SELECT_SHORT,GS(ACCEL_SELKEY_TITLE));
|
||||
SetDlgItemTextW(m_hWnd, IDC_S_CURRENT_ASSIGN,GS(ACCEL_ASSIGNEDTO_TITLE));
|
||||
SetDlgItemTextW(m_hWnd, IDC_ASSIGN,GS(ACCEL_ASSIGN_BTN));
|
||||
SetDlgItemTextW(m_hWnd, IDC_REMOVE,GS(ACCEL_REMOVE_BTN));
|
||||
SetDlgItemTextW(m_hWnd, IDC_S_CPU_STATE, GS(ACCEL_CPUSTATE_TITLE));
|
||||
SetDlgItemTextW(m_hWnd, IDC_MENU_ITEM_TEXT, GS(ACCEL_MENUITEM_TITLE));
|
||||
SetDlgItemTextW(m_hWnd, IDC_S_CURRENT_KEYS, GS(ACCEL_CURRENTKEYS_TITLE));
|
||||
SetDlgItemTextW(m_hWnd, IDC_S_SELECT_SHORT, GS(ACCEL_SELKEY_TITLE));
|
||||
SetDlgItemTextW(m_hWnd, IDC_S_CURRENT_ASSIGN, GS(ACCEL_ASSIGNEDTO_TITLE));
|
||||
SetDlgItemTextW(m_hWnd, IDC_ASSIGN, GS(ACCEL_ASSIGN_BTN));
|
||||
SetDlgItemTextW(m_hWnd, IDC_REMOVE, GS(ACCEL_REMOVE_BTN));
|
||||
SetDlgItemTextW(m_hWnd, IDC_KEY_PROMPT, GS(ACCEL_DETECTKEY));
|
||||
|
||||
m_CreateNewShortCut.AttachToDlgItem(m_hWnd,IDC_S_SELECT_SHORT);
|
||||
m_CreateNewShortCut.AttachToDlgItem(m_hWnd, IDC_S_SELECT_SHORT);
|
||||
m_CpuState.Attach(GetDlgItem(IDC_C_CPU_STATE));
|
||||
m_MenuItems.Attach(GetDlgItem(IDC_MENU_ITEMS));
|
||||
m_CurrentKeys.Attach(GetDlgItem(IDC_CURRENT_KEYS));
|
||||
m_VirtualKeyList.Attach(GetDlgItem(IDC_VIRTUALKEY));
|
||||
|
||||
m_MenuItems.ModifyStyle(0,TVS_SHOWSELALWAYS);
|
||||
m_MenuItems.ModifyStyle(0, TVS_SHOWSELALWAYS);
|
||||
|
||||
m_CpuState.SetItemData(m_CpuState.AddStringW(GS(ACCEL_CPUSTATE_1)),CMenuShortCutKey::GAME_NOT_RUNNING);
|
||||
m_CpuState.SetItemData(m_CpuState.AddStringW(GS(ACCEL_CPUSTATE_3)),CMenuShortCutKey::GAME_RUNNING_WINDOW);
|
||||
m_CpuState.SetItemData(m_CpuState.AddStringW(GS(ACCEL_CPUSTATE_4)),CMenuShortCutKey::GAME_RUNNING_FULLSCREEN);
|
||||
m_CpuState.SetItemData(m_CpuState.AddStringW(GS(ACCEL_CPUSTATE_1)), CMenuShortCutKey::GAME_NOT_RUNNING);
|
||||
m_CpuState.SetItemData(m_CpuState.AddStringW(GS(ACCEL_CPUSTATE_3)), CMenuShortCutKey::GAME_RUNNING_WINDOW);
|
||||
m_CpuState.SetItemData(m_CpuState.AddStringW(GS(ACCEL_CPUSTATE_4)), CMenuShortCutKey::GAME_RUNNING_FULLSCREEN);
|
||||
m_CpuState.SetCurSel(0);
|
||||
|
||||
|
||||
int VirtualKeyListSize;
|
||||
VIRTUAL_KEY * VirtualKeyList = CMenuShortCutKey::VirtualKeyList(VirtualKeyListSize);
|
||||
for (int count = 0; count < VirtualKeyListSize; count++)
|
||||
for (int count = 0; count < VirtualKeyListSize; count++)
|
||||
{
|
||||
m_VirtualKeyList.SetItemData(m_VirtualKeyList.AddString(VirtualKeyList[count].Name),VirtualKeyList[count].Key);
|
||||
m_VirtualKeyList.SetItemData(m_VirtualKeyList.AddString(VirtualKeyList[count].Name), VirtualKeyList[count].Key);
|
||||
}
|
||||
|
||||
OnCpuStateChanged(LBN_SELCHANGE,IDC_C_CPU_STATE,GetDlgItem(IDC_C_CPU_STATE));
|
||||
OnCpuStateChanged(LBN_SELCHANGE, IDC_C_CPU_STATE, GetDlgItem(IDC_C_CPU_STATE));
|
||||
CheckResetEnable();
|
||||
|
||||
}
|
||||
|
||||
void COptionsShortCutsPage::CheckResetEnable ( void )
|
||||
void COptionsShortCutsPage::CheckResetEnable(void)
|
||||
{
|
||||
MSC_MAP & ShortCuts = m_ShortCuts.GetShortCuts();
|
||||
for (MSC_MAP::iterator Item = ShortCuts.begin(); Item != ShortCuts.end(); Item++)
|
||||
for (MSC_MAP::iterator Item = ShortCuts.begin(); Item != ShortCuts.end(); Item++)
|
||||
{
|
||||
const SHORTCUT_KEY_LIST & ShortCutList = Item->second.GetAccelItems();
|
||||
for (SHORTCUT_KEY_LIST::const_iterator ShortCut_item = ShortCutList.begin(); ShortCut_item != ShortCutList.end(); ShortCut_item ++)
|
||||
for (SHORTCUT_KEY_LIST::const_iterator ShortCut_item = ShortCutList.begin(); ShortCut_item != ShortCutList.end(); ShortCut_item++)
|
||||
{
|
||||
if (!ShortCut_item->Inactive() && !ShortCut_item->UserAdded())
|
||||
{
|
||||
|
@ -70,7 +68,6 @@ void COptionsShortCutsPage::CheckResetEnable ( void )
|
|||
m_EnableReset = true;
|
||||
return;
|
||||
}
|
||||
|
||||
}
|
||||
m_EnableReset = false;
|
||||
}
|
||||
|
@ -82,16 +79,16 @@ void COptionsShortCutsPage::OnCpuStateChanged(UINT /*Code*/, int /*id*/, HWND /*
|
|||
MSC_MAP & ShortCuts = m_ShortCuts.GetShortCuts();
|
||||
m_MenuItems.DeleteAllItems();
|
||||
|
||||
for (MSC_MAP::iterator Item = ShortCuts.begin(); Item != ShortCuts.end(); Item++)
|
||||
for (MSC_MAP::iterator Item = ShortCuts.begin(); Item != ShortCuts.end(); Item++)
|
||||
{
|
||||
ACCESS_MODE ItemMode = Item->second.AccessMode();
|
||||
if ((ItemMode & AccessLevel) != AccessLevel )
|
||||
if ((ItemMode & AccessLevel) != AccessLevel)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
//find Parent
|
||||
HTREEITEM hParent = m_MenuItems.GetChildItem(TVI_ROOT);
|
||||
while (hParent)
|
||||
while (hParent)
|
||||
{
|
||||
if (m_MenuItems.GetItemData(hParent) == (DWORD_PTR)Item->second.Section())
|
||||
{
|
||||
|
@ -102,156 +99,156 @@ void COptionsShortCutsPage::OnCpuStateChanged(UINT /*Code*/, int /*id*/, HWND /*
|
|||
|
||||
if (hParent == NULL)
|
||||
{
|
||||
hParent = m_MenuItems.InsertItemW(TVIF_TEXT | TVIF_PARAM,GS(Item->second.Section()),0,0,0,0, Item->second.Section(),TVI_ROOT,TVI_LAST);
|
||||
hParent = m_MenuItems.InsertItemW(TVIF_TEXT | TVIF_PARAM, GS(Item->second.Section()), 0, 0, 0, 0, Item->second.Section(), TVI_ROOT, TVI_LAST);
|
||||
}
|
||||
|
||||
wstring str = GS(Item->second.Title());
|
||||
std::wstring::size_type pos = str.find( L"&" );
|
||||
while ( pos != std::wstring::npos )
|
||||
std::wstring::size_type pos = str.find(L"&");
|
||||
while (pos != std::wstring::npos)
|
||||
{
|
||||
str.replace( pos, 1, L"" );
|
||||
pos = str.find( L"&", pos );
|
||||
str.replace(pos, 1, L"");
|
||||
pos = str.find(L"&", pos);
|
||||
}
|
||||
pos = str.find( L"..." );
|
||||
while ( pos != std::wstring::npos )
|
||||
pos = str.find(L"...");
|
||||
while (pos != std::wstring::npos)
|
||||
{
|
||||
str.replace( pos, 3, L"" );
|
||||
pos = str.find( L"...", pos );
|
||||
str.replace(pos, 3, L"");
|
||||
pos = str.find(L"...", pos);
|
||||
}
|
||||
|
||||
HTREEITEM hItem = m_MenuItems.InsertItemW(TVIF_TEXT | TVIF_PARAM,str.c_str(),0,0,0,0, (DWORD_PTR)&Item->second,hParent,TVI_LAST);
|
||||
HTREEITEM hItem = m_MenuItems.InsertItemW(TVIF_TEXT | TVIF_PARAM, str.c_str(), 0, 0, 0, 0, (DWORD_PTR)&Item->second, hParent, TVI_LAST);
|
||||
|
||||
const SHORTCUT_KEY_LIST & ShortCutList = Item->second.GetAccelItems();
|
||||
for (SHORTCUT_KEY_LIST::const_iterator ShortCut_item = ShortCutList.begin(); ShortCut_item != ShortCutList.end(); ShortCut_item ++)
|
||||
for (SHORTCUT_KEY_LIST::const_iterator ShortCut_item = ShortCutList.begin(); ShortCut_item != ShortCutList.end(); ShortCut_item++)
|
||||
{
|
||||
if (!ShortCut_item->Inactive() && !ShortCut_item->UserAdded())
|
||||
{
|
||||
continue;
|
||||
}
|
||||
m_MenuItems.SetItemState(hItem,TVIS_BOLD,TVIS_BOLD);
|
||||
m_MenuItems.SetItemState(hParent,TVIS_BOLD,TVIS_BOLD);
|
||||
m_MenuItems.SetItemState(hItem, TVIS_BOLD, TVIS_BOLD);
|
||||
m_MenuItems.SetItemState(hParent, TVIS_BOLD, TVIS_BOLD);
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
void COptionsShortCutsPage::OnRemoveClicked ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ )
|
||||
void COptionsShortCutsPage::OnRemoveClicked(UINT /*Code*/, int /*id*/, HWND /*ctl*/)
|
||||
{
|
||||
HTREEITEM hSelectedItem = m_MenuItems.GetSelectedItem();
|
||||
if (hSelectedItem == NULL)
|
||||
{
|
||||
if (hSelectedItem == NULL)
|
||||
{
|
||||
g_Notify->DisplayError(GS(MSG_NO_SEL_SHORTCUT));
|
||||
return;
|
||||
return;
|
||||
}
|
||||
HTREEITEM hParent = m_MenuItems.GetParentItem(hSelectedItem);
|
||||
if (hParent == NULL)
|
||||
{
|
||||
g_Notify->DisplayError(GS(MSG_NO_SEL_SHORTCUT));
|
||||
return;
|
||||
g_Notify->DisplayError(GS(MSG_NO_SEL_SHORTCUT));
|
||||
return;
|
||||
}
|
||||
|
||||
CShortCutItem * ShortCut = (CShortCutItem *)m_MenuItems.GetItemData(hSelectedItem);
|
||||
|
||||
|
||||
//Make sure an item is selected
|
||||
int index = m_CurrentKeys.GetCurSel();
|
||||
if (index < 0)
|
||||
if (index < 0)
|
||||
{
|
||||
g_Notify->DisplayError(GS(MSG_NO_SEL_SHORTCUT));
|
||||
return;
|
||||
g_Notify->DisplayError(GS(MSG_NO_SEL_SHORTCUT));
|
||||
return;
|
||||
}
|
||||
ShortCut->RemoveItem((CMenuShortCutKey *)m_CurrentKeys.GetItemData(index));
|
||||
m_MenuItems.SetItemState(hSelectedItem,TVIS_BOLD,TVIS_BOLD);
|
||||
m_MenuItems.SetItemState(hParent,TVIS_BOLD,TVIS_BOLD);
|
||||
m_MenuItems.SetItemState(hSelectedItem, TVIS_BOLD, TVIS_BOLD);
|
||||
m_MenuItems.SetItemState(hParent, TVIS_BOLD, TVIS_BOLD);
|
||||
m_EnableReset = true;
|
||||
|
||||
|
||||
RefreshShortCutOptions(hSelectedItem);
|
||||
SendMessage(GetParent(),PSM_CHANGED ,(WPARAM)m_hWnd,0);
|
||||
SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0);
|
||||
}
|
||||
|
||||
void COptionsShortCutsPage::OnDetectKeyClicked ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ )
|
||||
void COptionsShortCutsPage::OnDetectKeyClicked(UINT /*Code*/, int /*id*/, HWND /*ctl*/)
|
||||
{
|
||||
CloseHandle(CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)stInputGetKeys,this,0,NULL));
|
||||
CloseHandle(CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)stInputGetKeys, this, 0, NULL));
|
||||
}
|
||||
|
||||
void COptionsShortCutsPage::OnAssignClicked ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ )
|
||||
void COptionsShortCutsPage::OnAssignClicked(UINT /*Code*/, int /*id*/, HWND /*ctl*/)
|
||||
{
|
||||
//Get the virtual key info
|
||||
int index = m_VirtualKeyList.GetCurSel();
|
||||
if (index < 0)
|
||||
{
|
||||
if (index < 0)
|
||||
{
|
||||
g_Notify->DisplayError(GS(MSG_NO_SHORTCUT_SEL));
|
||||
return;
|
||||
}
|
||||
|
||||
WORD key = (WORD)SendDlgItemMessage(IDC_VIRTUALKEY,CB_GETITEMDATA,index,0);
|
||||
bool bCtrl = (SendDlgItemMessage(IDC_CTL,BM_GETCHECK, 0,0) == BST_CHECKED);
|
||||
bool bAlt = (SendDlgItemMessage(IDC_ALT,BM_GETCHECK, 0,0) == BST_CHECKED);
|
||||
bool bShift = (SendDlgItemMessage(IDC_SHIFT,BM_GETCHECK, 0,0) == BST_CHECKED);
|
||||
|
||||
WORD key = (WORD)SendDlgItemMessage(IDC_VIRTUALKEY, CB_GETITEMDATA, index, 0);
|
||||
bool bCtrl = (SendDlgItemMessage(IDC_CTL, BM_GETCHECK, 0, 0) == BST_CHECKED);
|
||||
bool bAlt = (SendDlgItemMessage(IDC_ALT, BM_GETCHECK, 0, 0) == BST_CHECKED);
|
||||
bool bShift = (SendDlgItemMessage(IDC_SHIFT, BM_GETCHECK, 0, 0) == BST_CHECKED);
|
||||
|
||||
ACCESS_MODE AccessLevel = (ACCESS_MODE)m_CpuState.GetItemData(m_CpuState.GetCurSel());
|
||||
|
||||
|
||||
HTREEITEM hSelectedItem = m_MenuItems.GetSelectedItem();
|
||||
if (hSelectedItem == NULL)
|
||||
{
|
||||
g_Notify->DisplayError(GS(MSG_NO_MENUITEM_SEL));
|
||||
return;
|
||||
if (hSelectedItem == NULL)
|
||||
{
|
||||
g_Notify->DisplayError(GS(MSG_NO_MENUITEM_SEL));
|
||||
return;
|
||||
}
|
||||
HTREEITEM hParent = m_MenuItems.GetParentItem(hSelectedItem);
|
||||
if (hParent == NULL)
|
||||
{
|
||||
g_Notify->DisplayError(GS(MSG_NO_MENUITEM_SEL));
|
||||
return;
|
||||
g_Notify->DisplayError(GS(MSG_NO_MENUITEM_SEL));
|
||||
return;
|
||||
}
|
||||
|
||||
CShortCutItem * ShortCut = (CShortCutItem *)m_MenuItems.GetItemData(hSelectedItem);
|
||||
|
||||
LanguageStringID strid = m_ShortCuts.GetMenuItemName(key,bCtrl,bAlt,bShift,AccessLevel);
|
||||
if (strid != EMPTY_STRING)
|
||||
LanguageStringID strid = m_ShortCuts.GetMenuItemName(key, bCtrl, bAlt, bShift, AccessLevel);
|
||||
if (strid != EMPTY_STRING)
|
||||
{
|
||||
g_Notify->DisplayError(GS(MSG_MENUITEM_ASSIGNED));
|
||||
return;
|
||||
}
|
||||
ShortCut->AddShortCut(key,bCtrl,bAlt,bShift,AccessLevel,true,false);
|
||||
m_MenuItems.SetItemState(hSelectedItem,TVIS_BOLD,TVIS_BOLD);
|
||||
m_MenuItems.SetItemState(hParent,TVIS_BOLD,TVIS_BOLD);
|
||||
ShortCut->AddShortCut(key, bCtrl, bAlt, bShift, AccessLevel, true, false);
|
||||
m_MenuItems.SetItemState(hSelectedItem, TVIS_BOLD, TVIS_BOLD);
|
||||
m_MenuItems.SetItemState(hParent, TVIS_BOLD, TVIS_BOLD);
|
||||
m_EnableReset = true;
|
||||
|
||||
|
||||
RefreshShortCutOptions(hSelectedItem);
|
||||
SendMessage(GetParent(),PSM_CHANGED ,(WPARAM)m_hWnd,0);
|
||||
SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0);
|
||||
}
|
||||
|
||||
void COptionsShortCutsPage::OnShortCutChanged ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ )
|
||||
void COptionsShortCutsPage::OnShortCutChanged(UINT /*Code*/, int /*id*/, HWND /*ctl*/)
|
||||
{
|
||||
//Get the virtual key info
|
||||
int index = m_VirtualKeyList.GetCurSel();
|
||||
if (index < 0) { return; }
|
||||
WORD key = (WORD)m_VirtualKeyList.GetItemData(index);
|
||||
bool bCtrl = (SendDlgItemMessage(IDC_CTL,BM_GETCHECK, 0,0) == BST_CHECKED);
|
||||
bool bAlt = (SendDlgItemMessage(IDC_ALT,BM_GETCHECK, 0,0) == BST_CHECKED);
|
||||
bool bShift = (SendDlgItemMessage(IDC_SHIFT,BM_GETCHECK, 0,0) == BST_CHECKED);
|
||||
WORD key = (WORD)m_VirtualKeyList.GetItemData(index);
|
||||
bool bCtrl = (SendDlgItemMessage(IDC_CTL, BM_GETCHECK, 0, 0) == BST_CHECKED);
|
||||
bool bAlt = (SendDlgItemMessage(IDC_ALT, BM_GETCHECK, 0, 0) == BST_CHECKED);
|
||||
bool bShift = (SendDlgItemMessage(IDC_SHIFT, BM_GETCHECK, 0, 0) == BST_CHECKED);
|
||||
|
||||
ACCESS_MODE AccessLevel = (ACCESS_MODE)m_CpuState.GetItemData(m_CpuState.GetCurSel());
|
||||
|
||||
stdstr str;
|
||||
str.FromUTF16(GS(m_ShortCuts.GetMenuItemName(key,bCtrl,bAlt,bShift,AccessLevel)));
|
||||
str.FromUTF16(GS(m_ShortCuts.GetMenuItemName(key, bCtrl, bAlt, bShift, AccessLevel)));
|
||||
if (str.length() > 0)
|
||||
{
|
||||
str.resize(std::remove(str.begin(), str.end(), '&') - str.begin());
|
||||
} else {
|
||||
}
|
||||
else
|
||||
{
|
||||
str = "None";
|
||||
}
|
||||
SetDlgItemText(IDC_ASSIGNED_MENU_ITEM,str.c_str());
|
||||
SetDlgItemText(IDC_ASSIGNED_MENU_ITEM, str.c_str());
|
||||
}
|
||||
|
||||
LRESULT COptionsShortCutsPage::OnMenuItemChanged ( LPNMHDR lpnmh )
|
||||
LRESULT COptionsShortCutsPage::OnMenuItemChanged(LPNMHDR lpnmh)
|
||||
{
|
||||
RefreshShortCutOptions(((LPNMTREEVIEW)lpnmh)->itemNew.hItem);
|
||||
return true;
|
||||
}
|
||||
|
||||
void COptionsShortCutsPage::RefreshShortCutOptions ( HTREEITEM hItem )
|
||||
void COptionsShortCutsPage::RefreshShortCutOptions(HTREEITEM hItem)
|
||||
{
|
||||
HTREEITEM hParent = m_MenuItems.GetParentItem(hItem);
|
||||
if (hParent == NULL)
|
||||
|
@ -259,14 +256,13 @@ void COptionsShortCutsPage::RefreshShortCutOptions ( HTREEITEM hItem )
|
|||
return;
|
||||
}
|
||||
|
||||
|
||||
ACCESS_MODE AccessLevel = (ACCESS_MODE)m_CpuState.GetItemData(m_CpuState.GetCurSel());
|
||||
CShortCutItem * ShortCut = (CShortCutItem *)m_MenuItems.GetItemData(hItem);
|
||||
|
||||
m_CurrentKeys.ResetContent();
|
||||
|
||||
const SHORTCUT_KEY_LIST & ShortCutList = ShortCut->GetAccelItems();
|
||||
for (SHORTCUT_KEY_LIST::const_iterator ShortCut_item = ShortCutList.begin(); ShortCut_item != ShortCutList.end(); ShortCut_item ++)
|
||||
for (SHORTCUT_KEY_LIST::const_iterator ShortCut_item = ShortCutList.begin(); ShortCut_item != ShortCutList.end(); ShortCut_item++)
|
||||
{
|
||||
if (ShortCut_item->Inactive())
|
||||
{
|
||||
|
@ -274,24 +270,23 @@ void COptionsShortCutsPage::RefreshShortCutOptions ( HTREEITEM hItem )
|
|||
}
|
||||
|
||||
ACCESS_MODE ItemMode = ShortCut_item->AccessMode();
|
||||
if ((ItemMode & AccessLevel) != AccessLevel )
|
||||
if ((ItemMode & AccessLevel) != AccessLevel)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
stdstr Name = ShortCut_item->Name();
|
||||
m_CurrentKeys.SetItemData(m_CurrentKeys.AddString(Name.c_str()),(DWORD_PTR)&*ShortCut_item);
|
||||
m_CurrentKeys.SetItemData(m_CurrentKeys.AddString(Name.c_str()), (DWORD_PTR)&*ShortCut_item);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
BOOL CALLBACK KeyPromptDlgProc (HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM /*lParam*/)
|
||||
BOOL CALLBACK KeyPromptDlgProc(HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM /*lParam*/)
|
||||
{
|
||||
switch (uMsg)
|
||||
switch (uMsg)
|
||||
{
|
||||
case WM_INITDIALOG:
|
||||
break;
|
||||
case WM_COMMAND:
|
||||
switch (LOWORD(wParam))
|
||||
switch (LOWORD(wParam))
|
||||
{
|
||||
case IDCANCEL:
|
||||
SetForegroundWindow(GetParent(hDlg));
|
||||
|
@ -305,49 +300,48 @@ BOOL CALLBACK KeyPromptDlgProc (HWND hDlg, UINT uMsg, WPARAM wParam, LPARAM /*lP
|
|||
return TRUE;
|
||||
}
|
||||
|
||||
void COptionsShortCutsPage::InputGetKeys (void)
|
||||
void COptionsShortCutsPage::InputGetKeys(void)
|
||||
{
|
||||
HWND hKeyDlg = CreateDialogParam(GetModuleHandle(NULL),MAKEINTRESOURCE(IDD_Key_Prompt),m_hWnd,(DLGPROC)KeyPromptDlgProc,(LPARAM)::GetDlgItem(m_hWnd,IDC_VIRTUALKEY));
|
||||
::EnableWindow(GetParent(),false);
|
||||
HWND hKeyDlg = CreateDialogParam(GetModuleHandle(NULL), MAKEINTRESOURCE(IDD_Key_Prompt), m_hWnd, (DLGPROC)KeyPromptDlgProc, (LPARAM)::GetDlgItem(m_hWnd, IDC_VIRTUALKEY));
|
||||
::EnableWindow(GetParent(), false);
|
||||
MSG msg;
|
||||
|
||||
for(bool fDone=false;!fDone;MsgWaitForMultipleObjects(0,NULL,false,45,QS_ALLINPUT)) {
|
||||
while(PeekMessage(&msg,0,0,0,PM_REMOVE)) {
|
||||
if(msg.message == WM_QUIT) {
|
||||
for (bool fDone = false; !fDone; MsgWaitForMultipleObjects(0, NULL, false, 45, QS_ALLINPUT)) {
|
||||
while (PeekMessage(&msg, 0, 0, 0, PM_REMOVE)) {
|
||||
if (msg.message == WM_QUIT) {
|
||||
fDone = true;
|
||||
::PostMessage(NULL,WM_QUIT,0,0);
|
||||
::PostMessage(NULL, WM_QUIT, 0, 0);
|
||||
break;
|
||||
}
|
||||
if (msg.message == WM_KEYDOWN || msg.message == WM_SYSKEYDOWN ) {
|
||||
if (msg.message == WM_KEYDOWN || msg.message == WM_SYSKEYDOWN) {
|
||||
int nVirtKey = (int)msg.wParam;
|
||||
if (nVirtKey == VK_SHIFT) { continue; }
|
||||
if (nVirtKey == VK_CONTROL) { continue; }
|
||||
if (nVirtKey == VK_MENU) { continue; }
|
||||
SendDlgItemMessage(IDC_VIRTUALKEY,CB_SETCURSEL,(WPARAM)-1,0);
|
||||
for (int count = 0; count < SendDlgItemMessage(IDC_VIRTUALKEY,CB_GETCOUNT,0,0); count++) {
|
||||
int Data = (int)SendDlgItemMessage(IDC_VIRTUALKEY,CB_GETITEMDATA,count,0);
|
||||
SendDlgItemMessage(IDC_VIRTUALKEY, CB_SETCURSEL, (WPARAM)-1, 0);
|
||||
for (int count = 0; count < SendDlgItemMessage(IDC_VIRTUALKEY, CB_GETCOUNT, 0, 0); count++) {
|
||||
int Data = (int)SendDlgItemMessage(IDC_VIRTUALKEY, CB_GETITEMDATA, count, 0);
|
||||
if (Data != nVirtKey) { continue; }
|
||||
SendDlgItemMessage(IDC_VIRTUALKEY,CB_SETCURSEL,count,0);
|
||||
SendDlgItemMessage(IDC_CTL,BM_SETCHECK, (GetKeyState(VK_CONTROL) & 0x80) != 0 ? BST_CHECKED : BST_UNCHECKED,0);
|
||||
SendDlgItemMessage(IDC_ALT,BM_SETCHECK, (GetKeyState(VK_MENU) & 0x80) != 0 ? BST_CHECKED : BST_UNCHECKED,0);
|
||||
SendDlgItemMessage(IDC_SHIFT,BM_SETCHECK, (GetKeyState(VK_SHIFT) & 0x80) != 0 ? BST_CHECKED : BST_UNCHECKED,0);
|
||||
SendMessage(WM_COMMAND,MAKELPARAM(IDC_VIRTUALKEY,LBN_SELCHANGE),(LPARAM)::GetDlgItem(m_hWnd,IDC_VIRTUALKEY));
|
||||
SendDlgItemMessage(IDC_VIRTUALKEY, CB_SETCURSEL, count, 0);
|
||||
SendDlgItemMessage(IDC_CTL, BM_SETCHECK, (GetKeyState(VK_CONTROL) & 0x80) != 0 ? BST_CHECKED : BST_UNCHECKED, 0);
|
||||
SendDlgItemMessage(IDC_ALT, BM_SETCHECK, (GetKeyState(VK_MENU) & 0x80) != 0 ? BST_CHECKED : BST_UNCHECKED, 0);
|
||||
SendDlgItemMessage(IDC_SHIFT, BM_SETCHECK, (GetKeyState(VK_SHIFT) & 0x80) != 0 ? BST_CHECKED : BST_UNCHECKED, 0);
|
||||
SendMessage(WM_COMMAND, MAKELPARAM(IDC_VIRTUALKEY, LBN_SELCHANGE), (LPARAM)::GetDlgItem(m_hWnd, IDC_VIRTUALKEY));
|
||||
SetForegroundWindow(GetParent());
|
||||
::DestroyWindow(hKeyDlg);
|
||||
}
|
||||
continue;
|
||||
}
|
||||
if(!::IsDialogMessage(hKeyDlg,&msg)) {
|
||||
if (!::IsDialogMessage(hKeyDlg, &msg)) {
|
||||
TranslateMessage(&msg);
|
||||
DispatchMessage(&msg);
|
||||
}
|
||||
}
|
||||
|
||||
if(!::IsWindow(hKeyDlg)) { fDone = true; }
|
||||
|
||||
if (!::IsWindow(hKeyDlg)) { fDone = true; }
|
||||
}
|
||||
::SetFocus(GetParent());
|
||||
::EnableWindow(GetParent(),true);
|
||||
::EnableWindow(GetParent(), true);
|
||||
}
|
||||
|
||||
void COptionsShortCutsPage::HidePage()
|
||||
|
@ -360,13 +354,13 @@ void COptionsShortCutsPage::ShowPage()
|
|||
ShowWindow(SW_SHOW);
|
||||
}
|
||||
|
||||
void COptionsShortCutsPage::ApplySettings( bool /*UpdateScreen*/ )
|
||||
void COptionsShortCutsPage::ApplySettings(bool /*UpdateScreen*/)
|
||||
{
|
||||
m_ShortCuts.Save();
|
||||
g_Settings->SaveBool(Info_ShortCutsChanged,true);
|
||||
g_Settings->SaveBool(Info_ShortCutsChanged, true);
|
||||
}
|
||||
|
||||
bool COptionsShortCutsPage::EnableReset ( void )
|
||||
bool COptionsShortCutsPage::EnableReset(void)
|
||||
{
|
||||
return m_EnableReset;
|
||||
}
|
||||
|
@ -375,9 +369,8 @@ void COptionsShortCutsPage::ResetPage()
|
|||
{
|
||||
m_EnableReset = false;
|
||||
m_ShortCuts.Load(true);
|
||||
OnCpuStateChanged(LBN_SELCHANGE,IDC_C_CPU_STATE,GetDlgItem(IDC_C_CPU_STATE));
|
||||
SendMessage(GetParent(),PSM_CHANGED ,(WPARAM)m_hWnd,0);
|
||||
OnCpuStateChanged(LBN_SELCHANGE, IDC_C_CPU_STATE, GetDlgItem(IDC_C_CPU_STATE));
|
||||
SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0);
|
||||
m_CurrentKeys.ResetContent();
|
||||
CSettingsPageImpl<COptionsShortCutsPage>::ResetPage();
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -10,13 +10,12 @@
|
|||
****************************************************************************/
|
||||
#include "stdafx.h"
|
||||
|
||||
#ifdef WINDOWS_UI
|
||||
#include "Settings Page.h"
|
||||
|
||||
CGeneralOptionsPage::CGeneralOptionsPage(CSettingConfig * SettingsConfig, HWND hParent, const RECT & rcDispay ) :
|
||||
m_SettingsConfig(SettingsConfig)
|
||||
CGeneralOptionsPage::CGeneralOptionsPage(CSettingConfig * SettingsConfig, HWND hParent, const RECT & rcDispay) :
|
||||
m_SettingsConfig(SettingsConfig)
|
||||
{
|
||||
if (!Create(hParent,rcDispay))
|
||||
if (!Create(hParent, rcDispay))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
@ -31,15 +30,15 @@ CGeneralOptionsPage::CGeneralOptionsPage(CSettingConfig * SettingsConfig, HWND h
|
|||
SetDlgItemTextW(m_hWnd, IDC_MAXROMDIR_TXT, GS(RB_MAX_DIRS));
|
||||
SetDlgItemTextW(m_hWnd, IDC_ROMSEL_TEXT4, GS(RB_DIRS));
|
||||
|
||||
AddModCheckBox(GetDlgItem(IDC_AUTOSLEEP),Setting_AutoSleep);
|
||||
AddModCheckBox(GetDlgItem(IDC_LOAD_FULLSCREEN),Setting_AutoFullscreen);
|
||||
AddModCheckBox(GetDlgItem(IDC_SCREEN_SAVER),Setting_DisableScrSaver);
|
||||
AddModCheckBox(GetDlgItem(IDC_BASIC_MODE),UserInterface_BasicMode);
|
||||
AddModCheckBox(GetDlgItem(IDC_AUTOSLEEP), Setting_AutoSleep);
|
||||
AddModCheckBox(GetDlgItem(IDC_LOAD_FULLSCREEN), Setting_AutoFullscreen);
|
||||
AddModCheckBox(GetDlgItem(IDC_SCREEN_SAVER), Setting_DisableScrSaver);
|
||||
AddModCheckBox(GetDlgItem(IDC_BASIC_MODE), UserInterface_BasicMode);
|
||||
|
||||
CModifiedEditBox * TxtBox = AddModTextBox(GetDlgItem(IDC_REMEMBER),File_RecentGameFileCount, false);
|
||||
CModifiedEditBox * TxtBox = AddModTextBox(GetDlgItem(IDC_REMEMBER), File_RecentGameFileCount, false);
|
||||
TxtBox->SetTextField(GetDlgItem(IDC_MAXROMS_TXT));
|
||||
|
||||
TxtBox = AddModTextBox(GetDlgItem(IDC_REMEMBERDIR),Directory_RecentGameDirCount, false);
|
||||
TxtBox = AddModTextBox(GetDlgItem(IDC_REMEMBERDIR), Directory_RecentGameDirCount, false);
|
||||
TxtBox->SetTextField(GetDlgItem(IDC_MAXROMDIR_TXT));
|
||||
|
||||
UpdatePageSettings();
|
||||
|
@ -55,12 +54,12 @@ void CGeneralOptionsPage::ShowPage()
|
|||
ShowWindow(SW_SHOW);
|
||||
}
|
||||
|
||||
void CGeneralOptionsPage::ApplySettings( bool UpdateScreen )
|
||||
void CGeneralOptionsPage::ApplySettings(bool UpdateScreen)
|
||||
{
|
||||
CSettingsPageImpl<CGeneralOptionsPage>::ApplySettings(UpdateScreen);
|
||||
}
|
||||
|
||||
bool CGeneralOptionsPage::EnableReset ( void )
|
||||
bool CGeneralOptionsPage::EnableReset(void)
|
||||
{
|
||||
if (CSettingsPageImpl<CGeneralOptionsPage>::EnableReset()) { return true; }
|
||||
return false;
|
||||
|
@ -72,9 +71,8 @@ void CGeneralOptionsPage::ResetPage()
|
|||
m_SettingsConfig->UpdateAdvanced((int)::SendMessage(GetDlgItem(IDC_BASIC_MODE), BM_GETCHECK, 0, 0) == 0);
|
||||
}
|
||||
|
||||
void CGeneralOptionsPage::OnBasicMode ( UINT Code, int id, HWND ctl )
|
||||
void CGeneralOptionsPage::OnBasicMode(UINT Code, int id, HWND ctl)
|
||||
{
|
||||
CheckBoxChanged(Code,id,ctl);
|
||||
CheckBoxChanged(Code, id, ctl);
|
||||
m_SettingsConfig->UpdateAdvanced((int)::SendMessage(ctl, BM_GETCHECK, 0, 0) == 0);
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -10,53 +10,52 @@
|
|||
****************************************************************************/
|
||||
#include "stdafx.h"
|
||||
|
||||
#ifdef WINDOWS_UI
|
||||
#include "Settings Page.h"
|
||||
|
||||
COptionPluginPage::COptionPluginPage (HWND hParent, const RECT & rcDispay )
|
||||
COptionPluginPage::COptionPluginPage(HWND hParent, const RECT & rcDispay)
|
||||
{
|
||||
if (!Create(hParent,rcDispay))
|
||||
if (!Create(hParent, rcDispay))
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
//Set the text for all gui Items
|
||||
SetDlgItemTextW(m_hWnd, RSP_ABOUT,GS(PLUG_ABOUT));
|
||||
SetDlgItemTextW(m_hWnd, GFX_ABOUT,GS(PLUG_ABOUT));
|
||||
SetDlgItemTextW(m_hWnd, AUDIO_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_GFX_NAME,GS(PLUG_GFX));
|
||||
SetDlgItemTextW(m_hWnd, IDC_AUDIO_NAME,GS(PLUG_AUDIO));
|
||||
SetDlgItemTextW(m_hWnd, IDC_CONT_NAME,GS(PLUG_CTRL));
|
||||
|
||||
SetDlgItemTextW(m_hWnd, IDC_HLE_GFX,GS(PLUG_HLE_GFX));
|
||||
SetDlgItemTextW(m_hWnd, IDC_HLE_AUDIO,GS(PLUG_HLE_AUDIO));
|
||||
//Set the text for all gui Items
|
||||
SetDlgItemTextW(m_hWnd, RSP_ABOUT, GS(PLUG_ABOUT));
|
||||
SetDlgItemTextW(m_hWnd, GFX_ABOUT, GS(PLUG_ABOUT));
|
||||
SetDlgItemTextW(m_hWnd, AUDIO_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_GFX_NAME, GS(PLUG_GFX));
|
||||
SetDlgItemTextW(m_hWnd, IDC_AUDIO_NAME, GS(PLUG_AUDIO));
|
||||
SetDlgItemTextW(m_hWnd, IDC_CONT_NAME, GS(PLUG_CTRL));
|
||||
|
||||
SetDlgItemTextW(m_hWnd, IDC_HLE_GFX, GS(PLUG_HLE_GFX));
|
||||
SetDlgItemTextW(m_hWnd, IDC_HLE_AUDIO, GS(PLUG_HLE_AUDIO));
|
||||
|
||||
m_GfxGroup.Attach(GetDlgItem(IDC_GFX_NAME));
|
||||
m_AudioGroup.Attach(GetDlgItem(IDC_AUDIO_NAME));
|
||||
m_ControlGroup.Attach(GetDlgItem(IDC_CONT_NAME));
|
||||
m_RspGroup.Attach(GetDlgItem(IDC_RSP_NAME));
|
||||
|
||||
AddPlugins(GFX_LIST,Plugin_GFX_Current,PLUGIN_TYPE_GFX);
|
||||
AddPlugins(AUDIO_LIST,Plugin_AUDIO_Current,PLUGIN_TYPE_AUDIO);
|
||||
AddPlugins(CONT_LIST,Plugin_CONT_Current,PLUGIN_TYPE_CONTROLLER);
|
||||
AddPlugins(RSP_LIST,Plugin_RSP_Current,PLUGIN_TYPE_RSP);
|
||||
AddPlugins(GFX_LIST, Plugin_GFX_Current, PLUGIN_TYPE_GFX);
|
||||
AddPlugins(AUDIO_LIST, Plugin_AUDIO_Current, PLUGIN_TYPE_AUDIO);
|
||||
AddPlugins(CONT_LIST, Plugin_CONT_Current, PLUGIN_TYPE_CONTROLLER);
|
||||
AddPlugins(RSP_LIST, Plugin_RSP_Current, PLUGIN_TYPE_RSP);
|
||||
|
||||
AddModCheckBox(GetDlgItem(IDC_HLE_GFX), Plugin_UseHleGfx);
|
||||
AddModCheckBox(GetDlgItem(IDC_HLE_AUDIO), Plugin_UseHleAudio);
|
||||
|
||||
AddModCheckBox(GetDlgItem(IDC_HLE_GFX),Plugin_UseHleGfx);
|
||||
AddModCheckBox(GetDlgItem(IDC_HLE_AUDIO),Plugin_UseHleAudio);
|
||||
|
||||
UpdatePageSettings();
|
||||
}
|
||||
|
||||
void COptionPluginPage::AddPlugins (int ListId,SettingID Type, PLUGIN_TYPE PluginType )
|
||||
void COptionPluginPage::AddPlugins(int ListId, SettingID Type, PLUGIN_TYPE PluginType)
|
||||
{
|
||||
stdstr Default = g_Settings->LoadStringVal(Type);
|
||||
|
||||
CModifiedComboBox * ComboBox;
|
||||
ComboBox = AddModComboBox(GetDlgItem(ListId),Type);
|
||||
for (int i = 0, n = m_PluginList.GetPluginCount(); i < n; i++ )
|
||||
ComboBox = AddModComboBox(GetDlgItem(ListId), Type);
|
||||
for (int i = 0, n = m_PluginList.GetPluginCount(); i < n; i++)
|
||||
{
|
||||
const CPluginList::PLUGIN * Plugin = m_PluginList.GetPluginInfo(i);
|
||||
if (Plugin == NULL)
|
||||
|
@ -67,7 +66,7 @@ void COptionPluginPage::AddPlugins (int ListId,SettingID Type, PLUGIN_TYPE Plugi
|
|||
{
|
||||
continue;
|
||||
}
|
||||
if (_stricmp(Default.c_str(),Plugin->FileName.c_str()) == 0)
|
||||
if (_stricmp(Default.c_str(), Plugin->FileName.c_str()) == 0)
|
||||
{
|
||||
ComboBox->SetDefault((WPARAM)Plugin);
|
||||
}
|
||||
|
@ -75,10 +74,10 @@ void COptionPluginPage::AddPlugins (int ListId,SettingID Type, PLUGIN_TYPE Plugi
|
|||
}
|
||||
}
|
||||
|
||||
void COptionPluginPage::ShowAboutButton ( int id )
|
||||
void COptionPluginPage::ShowAboutButton(int id)
|
||||
{
|
||||
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)
|
||||
{
|
||||
|
@ -92,11 +91,11 @@ void COptionPluginPage::ShowAboutButton ( int id )
|
|||
return;
|
||||
}
|
||||
int index = ComboBox->GetCurSel();
|
||||
if (index == CB_ERR)
|
||||
if (index == CB_ERR)
|
||||
{
|
||||
return;
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
const CPluginList::PLUGIN ** PluginPtr = (const CPluginList::PLUGIN **)ComboBox->GetItemDataPtr(index);
|
||||
if (PluginPtr == NULL)
|
||||
{
|
||||
|
@ -108,30 +107,30 @@ void COptionPluginPage::ShowAboutButton ( int id )
|
|||
{
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
//Load the plugin
|
||||
UINT LastErrorMode = SetErrorMode( SEM_FAILCRITICALERRORS );
|
||||
HMODULE hLib = LoadLibrary(Plugin->FullPath);
|
||||
UINT LastErrorMode = SetErrorMode(SEM_FAILCRITICALERRORS);
|
||||
HMODULE hLib = LoadLibrary(Plugin->FullPath);
|
||||
SetErrorMode(LastErrorMode);
|
||||
if (hLib == NULL)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
|
||||
//Get DLL about
|
||||
void (__cdecl *DllAbout) ( HWND hWnd );
|
||||
DllAbout = (void (__cdecl *)(HWND))GetProcAddress( hLib, "DllAbout" );
|
||||
|
||||
void(__cdecl *DllAbout) (HWND hWnd);
|
||||
DllAbout = (void(__cdecl *)(HWND))GetProcAddress(hLib, "DllAbout");
|
||||
|
||||
//call the function from the dll
|
||||
DllAbout(m_hWnd);
|
||||
|
||||
FreeLibrary(hLib);
|
||||
}
|
||||
|
||||
void COptionPluginPage::PluginItemChanged ( int id, int AboutID, bool bSetChanged )
|
||||
void COptionPluginPage::PluginItemChanged(int id, int AboutID, bool bSetChanged)
|
||||
{
|
||||
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)
|
||||
{
|
||||
|
@ -146,9 +145,9 @@ void COptionPluginPage::PluginItemChanged ( int id, int AboutID, bool bSetChange
|
|||
}
|
||||
|
||||
int index = ComboBox->GetCurSel();
|
||||
if (index == CB_ERR)
|
||||
if (index == CB_ERR)
|
||||
{
|
||||
return;
|
||||
return;
|
||||
}
|
||||
const CPluginList::PLUGIN ** PluginPtr = (const CPluginList::PLUGIN **)ComboBox->GetItemDataPtr(index);
|
||||
if (PluginPtr)
|
||||
|
@ -156,27 +155,27 @@ void COptionPluginPage::PluginItemChanged ( int id, int AboutID, bool bSetChange
|
|||
const CPluginList::PLUGIN * Plugin = *PluginPtr;
|
||||
if (Plugin)
|
||||
{
|
||||
::EnableWindow(GetDlgItem(AboutID),Plugin->AboutFunction);
|
||||
::EnableWindow(GetDlgItem(AboutID), Plugin->AboutFunction);
|
||||
}
|
||||
}
|
||||
|
||||
if (bSetChanged)
|
||||
{
|
||||
ComboBox->SetChanged(true);
|
||||
SendMessage(GetParent(),PSM_CHANGED,(WPARAM)m_hWnd,0);
|
||||
SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0);
|
||||
}
|
||||
}
|
||||
|
||||
void COptionPluginPage::UpdatePageSettings ( void )
|
||||
void COptionPluginPage::UpdatePageSettings(void)
|
||||
{
|
||||
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;
|
||||
stdstr SelectedValue;
|
||||
|
||||
ComboBox->SetChanged(g_Settings->LoadStringVal(cb_iter->first,SelectedValue));
|
||||
for (int i = 0, n = ComboBox->GetCount(); i < n; i++ )
|
||||
|
||||
ComboBox->SetChanged(g_Settings->LoadStringVal(cb_iter->first, SelectedValue));
|
||||
for (int i = 0, n = ComboBox->GetCount(); i < n; i++)
|
||||
{
|
||||
const CPluginList::PLUGIN ** PluginPtr = (const CPluginList::PLUGIN **)ComboBox->GetItemDataPtr(i);
|
||||
if (PluginPtr == NULL)
|
||||
|
@ -188,17 +187,17 @@ void COptionPluginPage::UpdatePageSettings ( void )
|
|||
{
|
||||
continue;
|
||||
}
|
||||
if (_stricmp(SelectedValue.c_str(),Plugin->FileName.c_str()) != 0)
|
||||
if (_stricmp(SelectedValue.c_str(), Plugin->FileName.c_str()) != 0)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
ComboBox->SetDefault((WPARAM)Plugin);
|
||||
}
|
||||
}
|
||||
PluginItemChanged(GFX_LIST,GFX_ABOUT,false);
|
||||
PluginItemChanged(AUDIO_LIST,AUDIO_ABOUT,false);
|
||||
PluginItemChanged(CONT_LIST,CONT_ABOUT,false);
|
||||
PluginItemChanged(RSP_LIST,RSP_ABOUT,false);
|
||||
PluginItemChanged(GFX_LIST, GFX_ABOUT, false);
|
||||
PluginItemChanged(AUDIO_LIST, AUDIO_ABOUT, false);
|
||||
PluginItemChanged(CONT_LIST, CONT_ABOUT, false);
|
||||
PluginItemChanged(RSP_LIST, RSP_ABOUT, false);
|
||||
}
|
||||
|
||||
void COptionPluginPage::HidePage()
|
||||
|
@ -211,12 +210,12 @@ void COptionPluginPage::ShowPage()
|
|||
ShowWindow(SW_SHOW);
|
||||
}
|
||||
|
||||
void COptionPluginPage::ApplySettings( bool UpdateScreen )
|
||||
void COptionPluginPage::ApplySettings(bool UpdateScreen)
|
||||
{
|
||||
CSettingsPageImpl<COptionPluginPage>::ApplySettings(UpdateScreen);
|
||||
}
|
||||
|
||||
bool COptionPluginPage::EnableReset ( void )
|
||||
bool COptionPluginPage::EnableReset(void)
|
||||
{
|
||||
if (CSettingsPageImpl<COptionPluginPage>::EnableReset()) { return true; }
|
||||
return false;
|
||||
|
@ -227,17 +226,17 @@ void COptionPluginPage::ResetPage()
|
|||
CSettingsPageImpl<COptionPluginPage>::ResetPage();
|
||||
}
|
||||
|
||||
void COptionPluginPage::ApplyComboBoxes ( void )
|
||||
void COptionPluginPage::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;
|
||||
if (ComboBox->IsChanged())
|
||||
{
|
||||
int index = ComboBox->GetCurSel();
|
||||
if (index == CB_ERR)
|
||||
if (index == CB_ERR)
|
||||
{
|
||||
return;
|
||||
return;
|
||||
}
|
||||
|
||||
const CPluginList::PLUGIN ** PluginPtr = (const CPluginList::PLUGIN **)ComboBox->GetItemDataPtr(index);
|
||||
|
@ -248,7 +247,7 @@ void COptionPluginPage::ApplyComboBoxes ( void )
|
|||
|
||||
const CPluginList::PLUGIN * Plugin = *PluginPtr;
|
||||
|
||||
g_Settings->SaveString(cb_iter->first,Plugin->FileName.c_str());
|
||||
g_Settings->SaveString(cb_iter->first, Plugin->FileName.c_str());
|
||||
}
|
||||
if (ComboBox->IsReset())
|
||||
{
|
||||
|
@ -258,7 +257,7 @@ void COptionPluginPage::ApplyComboBoxes ( void )
|
|||
}
|
||||
}
|
||||
|
||||
bool COptionPluginPage::ResetComboBox ( CModifiedComboBox & ComboBox, SettingID Type )
|
||||
bool COptionPluginPage::ResetComboBox(CModifiedComboBox & ComboBox, SettingID Type)
|
||||
{
|
||||
if (!ComboBox.IsChanged())
|
||||
{
|
||||
|
@ -286,18 +285,18 @@ bool COptionPluginPage::ResetComboBox ( CModifiedComboBox & ComboBox, SettingID
|
|||
return false;
|
||||
}
|
||||
|
||||
void COptionPluginPage::HleGfxChanged ( UINT /*Code*/, int id, HWND /*ctl*/ )
|
||||
void COptionPluginPage::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;
|
||||
if ((int)Button->GetMenu() != id)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
}
|
||||
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)
|
||||
{
|
||||
Button->SetCheck(BST_CHECKED);
|
||||
|
@ -305,23 +304,23 @@ void COptionPluginPage::HleGfxChanged ( UINT /*Code*/, int id, HWND /*ctl*/ )
|
|||
}
|
||||
}
|
||||
Button->SetChanged(true);
|
||||
SendMessage(GetParent(),PSM_CHANGED,(WPARAM)m_hWnd,0);
|
||||
SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void COptionPluginPage::HleAudioChanged ( UINT /*Code*/, int id, HWND /*ctl*/ )
|
||||
void COptionPluginPage::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;
|
||||
if ((int)Button->GetMenu() != id)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
}
|
||||
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)
|
||||
{
|
||||
Button->SetCheck(BST_UNCHECKED);
|
||||
|
@ -329,8 +328,7 @@ void COptionPluginPage::HleAudioChanged ( UINT /*Code*/, int id, HWND /*ctl*/ )
|
|||
}
|
||||
}
|
||||
Button->SetChanged(true);
|
||||
SendMessage(GetParent(),PSM_CHANGED,(WPARAM)m_hWnd,0);
|
||||
SendMessage(GetParent(), PSM_CHANGED, (WPARAM)m_hWnd, 0);
|
||||
break;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -17,51 +17,51 @@ class COptionPluginPage :
|
|||
public CSettingsPage
|
||||
{
|
||||
BEGIN_MSG_MAP_EX(COptionPluginPage)
|
||||
COMMAND_HANDLER_EX(GFX_LIST,LBN_SELCHANGE,GfxPluginChanged)
|
||||
COMMAND_HANDLER_EX(AUDIO_LIST,LBN_SELCHANGE,AudioPluginChanged)
|
||||
COMMAND_HANDLER_EX(CONT_LIST,LBN_SELCHANGE,ControllerPluginChanged)
|
||||
COMMAND_HANDLER_EX(RSP_LIST,LBN_SELCHANGE,RspPluginChanged)
|
||||
COMMAND_ID_HANDLER_EX(GFX_ABOUT,GfxPluginAbout)
|
||||
COMMAND_ID_HANDLER_EX(AUDIO_ABOUT,AudioPluginAbout)
|
||||
COMMAND_ID_HANDLER_EX(CONT_ABOUT,ControllerPluginAbout)
|
||||
COMMAND_ID_HANDLER_EX(RSP_ABOUT,RspPluginAbout)
|
||||
COMMAND_ID_HANDLER_EX(IDC_HLE_GFX,HleGfxChanged)
|
||||
COMMAND_ID_HANDLER_EX(IDC_HLE_AUDIO,HleAudioChanged)
|
||||
END_MSG_MAP()
|
||||
COMMAND_HANDLER_EX(GFX_LIST, LBN_SELCHANGE, GfxPluginChanged)
|
||||
COMMAND_HANDLER_EX(AUDIO_LIST, LBN_SELCHANGE, AudioPluginChanged)
|
||||
COMMAND_HANDLER_EX(CONT_LIST, LBN_SELCHANGE, ControllerPluginChanged)
|
||||
COMMAND_HANDLER_EX(RSP_LIST, LBN_SELCHANGE, RspPluginChanged)
|
||||
COMMAND_ID_HANDLER_EX(GFX_ABOUT, GfxPluginAbout)
|
||||
COMMAND_ID_HANDLER_EX(AUDIO_ABOUT, AudioPluginAbout)
|
||||
COMMAND_ID_HANDLER_EX(CONT_ABOUT, ControllerPluginAbout)
|
||||
COMMAND_ID_HANDLER_EX(RSP_ABOUT, RspPluginAbout)
|
||||
COMMAND_ID_HANDLER_EX(IDC_HLE_GFX, HleGfxChanged)
|
||||
COMMAND_ID_HANDLER_EX(IDC_HLE_AUDIO, HleAudioChanged)
|
||||
END_MSG_MAP()
|
||||
|
||||
enum { IDD = IDD_Settings_PlugSel };
|
||||
enum { IDD = IDD_Settings_PlugSel };
|
||||
|
||||
public:
|
||||
COptionPluginPage(HWND hParent, const RECT & rcDispay );
|
||||
COptionPluginPage(HWND hParent, const RECT & rcDispay);
|
||||
|
||||
LanguageStringID PageTitle ( void ) { return TAB_PLUGIN; }
|
||||
void HidePage ( void );
|
||||
void ShowPage ( void );
|
||||
void ApplySettings ( bool UpdateScreen );
|
||||
bool EnableReset ( void );
|
||||
void ResetPage ( void );
|
||||
LanguageStringID PageTitle(void) { return TAB_PLUGIN; }
|
||||
void HidePage(void);
|
||||
void ShowPage(void);
|
||||
void ApplySettings(bool UpdateScreen);
|
||||
bool EnableReset(void);
|
||||
void ResetPage(void);
|
||||
|
||||
private:
|
||||
void GfxPluginAbout ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ ) { ShowAboutButton(GFX_LIST); }
|
||||
void AudioPluginAbout ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ ) { ShowAboutButton(AUDIO_LIST); }
|
||||
void ControllerPluginAbout ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ ) { ShowAboutButton(CONT_LIST); }
|
||||
void RspPluginAbout ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ ) { ShowAboutButton(RSP_LIST); }
|
||||
void GfxPluginAbout(UINT /*Code*/, int /*id*/, HWND /*ctl*/) { ShowAboutButton(GFX_LIST); }
|
||||
void AudioPluginAbout(UINT /*Code*/, int /*id*/, HWND /*ctl*/) { ShowAboutButton(AUDIO_LIST); }
|
||||
void ControllerPluginAbout(UINT /*Code*/, int /*id*/, HWND /*ctl*/) { ShowAboutButton(CONT_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 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 RspPluginChanged ( UINT /*Code*/, int /*id*/, HWND /*ctl*/ ) { PluginItemChanged(RSP_LIST,RSP_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 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 HleGfxChanged ( UINT Code, int id, HWND ctl );
|
||||
void HleAudioChanged ( UINT Code, int id, HWND ctl );
|
||||
void HleGfxChanged(UINT Code, int id, HWND ctl);
|
||||
void HleAudioChanged(UINT Code, int id, HWND ctl);
|
||||
|
||||
void ShowAboutButton ( int id );
|
||||
void PluginItemChanged ( int id, int AboutID, bool bSetChanged = true );
|
||||
void ShowAboutButton(int id);
|
||||
void PluginItemChanged(int id, int AboutID, bool bSetChanged = true);
|
||||
|
||||
void AddPlugins (int ListId,SettingID Type, PLUGIN_TYPE PluginType );
|
||||
void UpdatePageSettings ( void );
|
||||
void ApplyComboBoxes ( void );
|
||||
bool ResetComboBox ( CModifiedComboBox & ComboBox, SettingID Type );
|
||||
void AddPlugins(int ListId, SettingID Type, PLUGIN_TYPE PluginType);
|
||||
void UpdatePageSettings(void);
|
||||
void ApplyComboBoxes(void);
|
||||
bool ResetComboBox(CModifiedComboBox & ComboBox, SettingID Type);
|
||||
|
||||
CPartialGroupBox m_GfxGroup, m_AudioGroup, m_ControlGroup, m_RspGroup;
|
||||
CPluginList m_PluginList;
|
||||
|
|
|
@ -10,15 +10,14 @@
|
|||
****************************************************************************/
|
||||
#include "stdafx.h"
|
||||
|
||||
#ifdef WINDOWS_UI
|
||||
#include "Settings Page.h"
|
||||
|
||||
CConfigSettingSection::CConfigSettingSection( LPCWSTR PageTitle ) :
|
||||
m_PageTitle(PageTitle)
|
||||
CConfigSettingSection::CConfigSettingSection(LPCWSTR PageTitle) :
|
||||
m_PageTitle(PageTitle)
|
||||
{
|
||||
}
|
||||
|
||||
CConfigSettingSection::~CConfigSettingSection ()
|
||||
CConfigSettingSection::~CConfigSettingSection()
|
||||
{
|
||||
for (size_t i = 0; i < m_Pages.size(); i++)
|
||||
{
|
||||
|
@ -28,12 +27,12 @@ CConfigSettingSection::~CConfigSettingSection ()
|
|||
m_Pages.clear();
|
||||
}
|
||||
|
||||
void CConfigSettingSection::AddPage(CSettingsPage * Page )
|
||||
void CConfigSettingSection::AddPage(CSettingsPage * Page)
|
||||
{
|
||||
m_Pages.push_back(Page);
|
||||
}
|
||||
|
||||
CSettingsPage * CConfigSettingSection::GetPage ( int PageNo )
|
||||
CSettingsPage * CConfigSettingSection::GetPage(int PageNo)
|
||||
{
|
||||
if (PageNo < 0 || PageNo >= (int)m_Pages.size())
|
||||
{
|
||||
|
@ -41,4 +40,3 @@ CSettingsPage * CConfigSettingSection::GetPage ( int PageNo )
|
|||
}
|
||||
return m_Pages[PageNo];
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -10,16 +10,15 @@
|
|||
****************************************************************************/
|
||||
#include "stdafx.h"
|
||||
|
||||
#ifdef WINDOWS_UI
|
||||
CModifiedEditBox::CModifiedEditBox(bool bString /* = true */, HWND hWnd /* = NULL */) :
|
||||
CEdit(hWnd),
|
||||
m_Changed(false),
|
||||
m_Reset(false),
|
||||
m_BoldFont(NULL),
|
||||
m_OriginalFont(NULL),
|
||||
m_TextField(NULL),
|
||||
m_bString(bString)
|
||||
{
|
||||
CEdit(hWnd),
|
||||
m_Changed(false),
|
||||
m_Reset(false),
|
||||
m_BoldFont(NULL),
|
||||
m_OriginalFont(NULL),
|
||||
m_TextField(NULL),
|
||||
m_bString(bString)
|
||||
{
|
||||
}
|
||||
|
||||
CModifiedEditBox::~CModifiedEditBox()
|
||||
|
@ -30,7 +29,7 @@ CModifiedEditBox::~CModifiedEditBox()
|
|||
}
|
||||
}
|
||||
|
||||
void CModifiedEditBox::SetReset ( bool Reset )
|
||||
void CModifiedEditBox::SetReset(bool Reset)
|
||||
{
|
||||
m_Reset = Reset;
|
||||
if (m_Reset)
|
||||
|
@ -39,7 +38,7 @@ void CModifiedEditBox::SetReset ( bool Reset )
|
|||
}
|
||||
}
|
||||
|
||||
void CModifiedEditBox::SetChanged (bool Changed)
|
||||
void CModifiedEditBox::SetChanged(bool Changed)
|
||||
{
|
||||
m_Changed = Changed;
|
||||
if (m_Changed)
|
||||
|
@ -47,61 +46,61 @@ void CModifiedEditBox::SetChanged (bool Changed)
|
|||
SetReset(false);
|
||||
if (m_BoldFont == NULL)
|
||||
{
|
||||
m_OriginalFont = (HFONT)SendMessage(WM_GETFONT);
|
||||
m_OriginalFont = (HFONT)SendMessage(WM_GETFONT);
|
||||
|
||||
LOGFONT lfSystemVariableFont;
|
||||
GetObject ( m_OriginalFont, sizeof(LOGFONT), &lfSystemVariableFont );
|
||||
GetObject(m_OriginalFont, sizeof(LOGFONT), &lfSystemVariableFont);
|
||||
lfSystemVariableFont.lfWeight = FW_BOLD;
|
||||
|
||||
m_BoldFont = CreateFontIndirect ( &lfSystemVariableFont );
|
||||
m_BoldFont = CreateFontIndirect(&lfSystemVariableFont);
|
||||
}
|
||||
SendMessage(WM_SETFONT,(WPARAM)m_BoldFont);
|
||||
SendMessage(WM_SETFONT, (WPARAM)m_BoldFont);
|
||||
InvalidateRect(NULL);
|
||||
if (m_TextField)
|
||||
{
|
||||
::SendMessage(m_TextField,WM_SETFONT,(WPARAM)m_BoldFont,0);
|
||||
::SendMessage(m_TextField, WM_SETFONT, (WPARAM)m_BoldFont, 0);
|
||||
::InvalidateRect(m_TextField, NULL, true);
|
||||
|
||||
}
|
||||
} else {
|
||||
}
|
||||
else
|
||||
{
|
||||
if (m_OriginalFont)
|
||||
{
|
||||
SendMessage(WM_SETFONT,(WPARAM)m_OriginalFont);
|
||||
SendMessage(WM_SETFONT, (WPARAM)m_OriginalFont);
|
||||
InvalidateRect(NULL);
|
||||
if (m_TextField)
|
||||
{
|
||||
::SendMessage(m_TextField,WM_SETFONT,(WPARAM)m_OriginalFont,0);
|
||||
::SendMessage(m_TextField, WM_SETFONT, (WPARAM)m_OriginalFont, 0);
|
||||
::InvalidateRect(m_TextField, NULL, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
stdstr CModifiedEditBox::GetWindowText( void )
|
||||
stdstr CModifiedEditBox::GetWindowText(void)
|
||||
{
|
||||
stdstr Result;
|
||||
ATLASSERT(::IsWindow(m_hWnd));
|
||||
|
||||
int nLen = ::GetWindowTextLength(m_hWnd);
|
||||
if(nLen == 0)
|
||||
if (nLen == 0)
|
||||
{
|
||||
return Result;
|
||||
}
|
||||
Result.resize(nLen+1);
|
||||
::GetWindowText(m_hWnd,(char *)Result.c_str(),nLen+1);
|
||||
Result.resize(nLen + 1);
|
||||
::GetWindowText(m_hWnd, (char *)Result.c_str(), nLen + 1);
|
||||
return Result;
|
||||
}
|
||||
|
||||
void CModifiedEditBox::SetTextField (HWND hWnd)
|
||||
void CModifiedEditBox::SetTextField(HWND hWnd)
|
||||
{
|
||||
if (m_TextField && m_OriginalFont)
|
||||
{
|
||||
::SendMessage(m_TextField,WM_SETFONT,(WPARAM)m_OriginalFont,0);
|
||||
::SendMessage(m_TextField, WM_SETFONT, (WPARAM)m_OriginalFont, 0);
|
||||
}
|
||||
m_TextField = hWnd;
|
||||
if (m_Changed && m_BoldFont)
|
||||
{
|
||||
::SendMessage(m_TextField,WM_SETFONT,(WPARAM)m_BoldFont,0);
|
||||
::SendMessage(m_TextField, WM_SETFONT, (WPARAM)m_BoldFont, 0);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -10,7 +10,6 @@
|
|||
****************************************************************************/
|
||||
#include "stdafx.h"
|
||||
|
||||
#ifdef WINDOWS_UI
|
||||
BOOL CPartialGroupBox::Attach(HWND hWnd)
|
||||
{
|
||||
ATLASSUME(m_hWnd == NULL);
|
||||
|
@ -34,7 +33,7 @@ BOOL CPartialGroupBox::Attach(HWND hWnd)
|
|||
|
||||
BOOL CPartialGroupBox::AttachToDlgItem(HWND parent, UINT dlgID)
|
||||
{
|
||||
return Attach(::GetDlgItem(parent,dlgID));
|
||||
return Attach(::GetDlgItem(parent, dlgID));
|
||||
}
|
||||
|
||||
void CPartialGroupBox::Draw3dLine(CPaintDC & dc, LPCRECT lpRect, COLORREF clrTopLeft, COLORREF /*clrBottomRight*/)
|
||||
|
@ -68,39 +67,39 @@ void CPartialGroupBox::OnPaint(HDC /*hDC*/)
|
|||
wchar_t grptext[500];
|
||||
GetWindowTextW(m_hWnd, grptext, sizeof(grptext) / sizeof(grptext[0]));
|
||||
|
||||
CRect fontsizerect(0,0,0,0);
|
||||
CRect fontsizerect(0, 0, 0, 0);
|
||||
dc.DrawTextW(grptext, -1, fontsizerect, DT_SINGLELINE | DT_LEFT | DT_CALCRECT);
|
||||
|
||||
CRect framerect(controlrect);
|
||||
framerect.top += (fontsizerect.Height())/2;
|
||||
long Style = GetStyle();
|
||||
framerect.top += (fontsizerect.Height()) / 2;
|
||||
long Style = GetStyle();
|
||||
|
||||
if((Style & 0xF000) == BS_FLAT)
|
||||
if ((Style & 0xF000) == BS_FLAT)
|
||||
{
|
||||
dc.Draw3dRect(framerect,RGB(0,0,0),RGB(0,0,0));
|
||||
framerect.DeflateRect(1,1);
|
||||
dc.Draw3dRect(framerect,RGB(255,255,255),RGB(255,255,255));
|
||||
dc.Draw3dRect(framerect, RGB(0, 0, 0), RGB(0, 0, 0));
|
||||
framerect.DeflateRect(1, 1);
|
||||
dc.Draw3dRect(framerect, RGB(255, 255, 255), RGB(255, 255, 255));
|
||||
}
|
||||
else
|
||||
{
|
||||
Draw3dLine(dc,framerect,GetSysColor(COLOR_3DSHADOW),GetSysColor(COLOR_3DHILIGHT));
|
||||
framerect.DeflateRect(1,1);
|
||||
Draw3dLine(dc,framerect,GetSysColor(COLOR_3DHILIGHT),GetSysColor(COLOR_3DSHADOW));
|
||||
Draw3dLine(dc, framerect, GetSysColor(COLOR_3DSHADOW), GetSysColor(COLOR_3DHILIGHT));
|
||||
framerect.DeflateRect(1, 1);
|
||||
Draw3dLine(dc, framerect, GetSysColor(COLOR_3DHILIGHT), GetSysColor(COLOR_3DSHADOW));
|
||||
}
|
||||
|
||||
if (wcslen(grptext))
|
||||
{
|
||||
CRect fontrect(controlrect);
|
||||
fontrect.bottom = controlrect.top+fontsizerect.Height();
|
||||
fontrect.bottom = controlrect.top + fontsizerect.Height();
|
||||
|
||||
if((Style & 0xF00) == BS_RIGHT)
|
||||
if ((Style & 0xF00) == BS_RIGHT)
|
||||
{
|
||||
fontrect.right -= 6;
|
||||
fontrect.left = fontrect.right - fontsizerect.Width();
|
||||
}
|
||||
else if((Style & 0xF00) == BS_CENTER)
|
||||
else if ((Style & 0xF00) == BS_CENTER)
|
||||
{
|
||||
fontrect.left += (controlrect.Width()-fontsizerect.Width())/2;
|
||||
fontrect.left += (controlrect.Width() - fontsizerect.Width()) / 2;
|
||||
fontrect.right = fontrect.left + fontsizerect.Width();
|
||||
}
|
||||
else //BS_LEFT or default
|
||||
|
@ -109,15 +108,14 @@ void CPartialGroupBox::OnPaint(HDC /*hDC*/)
|
|||
fontrect.right = fontrect.left + fontsizerect.Width();
|
||||
}
|
||||
|
||||
fontrect.InflateRect(2,0);
|
||||
dc.FillRect(fontrect,GetSysColor(COLOR_BTNFACE));
|
||||
fontrect.DeflateRect(2,0);
|
||||
fontrect.InflateRect(2, 0);
|
||||
dc.FillRect(fontrect, GetSysColor(COLOR_BTNFACE));
|
||||
fontrect.DeflateRect(2, 0);
|
||||
|
||||
//Draw Caption
|
||||
dc.SetBkMode(OPAQUE);
|
||||
dc.SetBkColor(GetSysColor(COLOR_BTNFACE));
|
||||
|
||||
dc.DrawTextW(grptext,-1,fontrect,DT_SINGLELINE|DT_LEFT);
|
||||
dc.DrawTextW(grptext, -1, fontrect, DT_SINGLELINE | DT_LEFT);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
|
Loading…
Reference in New Issue