mirror of
https://github.com/AppleWin/AppleWin.git
synced 2024-10-01 19:56:21 +00:00
Merged from cm630 branch
Fix for browsing for CiderPress changed curr dir Fix for pressing "OK" on Advanced sheet resulted in resetting savestate file to default
This commit is contained in:
parent
1251cff260
commit
08c46a4464
@ -174,7 +174,7 @@ BEGIN
|
|||||||
GROUPBOX "Floppy Controller",IDC_STATIC,2,21,206,73
|
GROUPBOX "Floppy Controller",IDC_STATIC,2,21,206,73
|
||||||
GROUPBOX "Harddisk Controller",IDC_STATIC,2,113,205,71
|
GROUPBOX "Harddisk Controller",IDC_STATIC,2,113,205,71
|
||||||
LTEXT "Path to CiderPress:",IDC_STATIC,5,190,74,8
|
LTEXT "Path to CiderPress:",IDC_STATIC,5,190,74,8
|
||||||
EDITTEXT IDC_CIDERPRESS_FILENAME,5,200,143,12,ES_AUTOHSCROLL
|
EDITTEXT IDC_CIDERPRESS_FILENAME,5,200,143,12,ES_AUTOHSCROLL | ES_READONLY
|
||||||
PUSHBUTTON "Browse...",IDC_CIDERPRESS_BROWSE,154,200,50,14
|
PUSHBUTTON "Browse...",IDC_CIDERPRESS_BROWSE,154,200,50,14
|
||||||
END
|
END
|
||||||
|
|
||||||
@ -207,7 +207,7 @@ BEGIN
|
|||||||
CONTROL "Save State on exit",IDC_SAVESTATE_ON_EXIT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,68,74,10
|
CONTROL "Save State on exit",IDC_SAVESTATE_ON_EXIT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,16,68,74,10
|
||||||
PUSHBUTTON "Save State",IDC_SAVESTATE,16,85,85,15
|
PUSHBUTTON "Save State",IDC_SAVESTATE,16,85,85,15
|
||||||
PUSHBUTTON "Load State",IDC_LOADSTATE,16,107,85,15
|
PUSHBUTTON "Load State",IDC_LOADSTATE,16,107,85,15
|
||||||
EDITTEXT IDC_SAVESTATE_FILENAME,5,23,143,12,ES_AUTOHSCROLL
|
EDITTEXT IDC_SAVESTATE_FILENAME,5,23,143,12,ES_AUTOHSCROLL | ES_READONLY
|
||||||
LTEXT "(F11 during emulation)",IDC_STATIC,110,88,74,8
|
LTEXT "(F11 during emulation)",IDC_STATIC,110,88,74,8
|
||||||
LTEXT "(F12 during emulation)",IDC_STATIC,110,110,90,8
|
LTEXT "(F12 during emulation)",IDC_STATIC,110,110,90,8
|
||||||
PUSHBUTTON "Browse...",IDC_SAVESTATE_BROWSE,154,22,50,14
|
PUSHBUTTON "Browse...",IDC_SAVESTATE_BROWSE,154,22,50,14
|
||||||
|
@ -482,7 +482,7 @@ void LoadConfiguration ()
|
|||||||
|
|
||||||
// Current/Starting Dir is the "root" of where the user keeps his disk images
|
// Current/Starting Dir is the "root" of where the user keeps his disk images
|
||||||
RegLoadString(TEXT("Preferences"),REGVALUE_PREF_START_DIR,1,g_sCurrentDir,MAX_PATH);
|
RegLoadString(TEXT("Preferences"),REGVALUE_PREF_START_DIR,1,g_sCurrentDir,MAX_PATH);
|
||||||
SetCurrentDirectory(g_sCurrentDir);
|
SetCurrentImageDir();
|
||||||
|
|
||||||
char szUthernetInt[MAX_PATH] = {0};
|
char szUthernetInt[MAX_PATH] = {0};
|
||||||
RegLoadString(TEXT("Configuration"),TEXT("Uthernet Interface"),1,szUthernetInt,MAX_PATH);
|
RegLoadString(TEXT("Configuration"),TEXT("Uthernet Interface"),1,szUthernetInt,MAX_PATH);
|
||||||
@ -490,6 +490,13 @@ void LoadConfiguration ()
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//===========================================================================
|
||||||
|
|
||||||
|
void SetCurrentImageDir()
|
||||||
|
{
|
||||||
|
SetCurrentDirectory(g_sCurrentDir);
|
||||||
|
}
|
||||||
|
|
||||||
//===========================================================================
|
//===========================================================================
|
||||||
void RegisterExtensions ()
|
void RegisterExtensions ()
|
||||||
{
|
{
|
||||||
|
@ -1,5 +1,9 @@
|
|||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
|
void SetCurrentCLK6502();
|
||||||
|
void SetCurrentImageDir();
|
||||||
|
|
||||||
|
|
||||||
extern char VERSIONSTRING[]; // Contructed in WinMain()
|
extern char VERSIONSTRING[]; // Contructed in WinMain()
|
||||||
|
|
||||||
extern TCHAR *g_pAppTitle;
|
extern TCHAR *g_pAppTitle;
|
||||||
@ -41,5 +45,3 @@ extern bool g_bDisableDirectSound; // Cmd line switch: don't init DS (so n
|
|||||||
extern UINT g_Slot4; // Mockingboard or Mouse in slot4
|
extern UINT g_Slot4; // Mockingboard or Mouse in slot4
|
||||||
|
|
||||||
extern HANDLE g_hCustomRomF8; // NULL if no custom rom
|
extern HANDLE g_hCustomRomF8; // NULL if no custom rom
|
||||||
|
|
||||||
void SetCurrentCLK6502();
|
|
||||||
|
@ -964,17 +964,21 @@ static BOOL CALLBACK DiskDlgProc (HWND window,
|
|||||||
|
|
||||||
//===========================================================================
|
//===========================================================================
|
||||||
|
|
||||||
static char g_szNewDirectory[MAX_PATH];
|
static bool g_bSSNewFilename = false;
|
||||||
static char g_szNewFilename[MAX_PATH];
|
static char g_szSSNewDirectory[MAX_PATH];
|
||||||
|
static char g_szSSNewFilename[MAX_PATH];
|
||||||
|
|
||||||
static void SaveStateUpdate()
|
static void SaveStateUpdate()
|
||||||
{
|
{
|
||||||
Snapshot_SetFilename(g_szNewFilename);
|
if (g_bSSNewFilename)
|
||||||
|
{
|
||||||
|
Snapshot_SetFilename(g_szSSNewFilename);
|
||||||
|
|
||||||
RegSaveString(TEXT("Configuration"),REGVALUE_SAVESTATE_FILENAME,1,Snapshot_GetFilename());
|
RegSaveString(TEXT("Configuration"),REGVALUE_SAVESTATE_FILENAME,1,Snapshot_GetFilename());
|
||||||
|
|
||||||
if(g_szNewDirectory[0])
|
if(g_szSSNewDirectory[0])
|
||||||
RegSaveString(TEXT("Preferences"),REGVALUE_PREF_START_DIR,1,g_szNewDirectory);
|
RegSaveString(TEXT("Preferences"),REGVALUE_PREF_START_DIR,1,g_szSSNewDirectory);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static int SaveStateSelectImage(HWND hWindow, TCHAR* pszTitle, bool bSave)
|
static int SaveStateSelectImage(HWND hWindow, TCHAR* pszTitle, bool bSave)
|
||||||
@ -1018,13 +1022,14 @@ static int SaveStateSelectImage(HWND hWindow, TCHAR* pszTitle, bool bSave)
|
|||||||
|
|
||||||
if(nRes)
|
if(nRes)
|
||||||
{
|
{
|
||||||
strcpy(g_szNewFilename, &szFilename[ofn.nFileOffset]);
|
strcpy(g_szSSNewFilename, &szFilename[ofn.nFileOffset]);
|
||||||
|
|
||||||
szFilename[ofn.nFileOffset] = 0;
|
szFilename[ofn.nFileOffset] = 0;
|
||||||
if (_tcsicmp(szDirectory, szFilename))
|
if (_tcsicmp(szDirectory, szFilename))
|
||||||
strcpy(g_szNewDirectory, szFilename);
|
strcpy(g_szSSNewDirectory, szFilename);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
g_bSSNewFilename = nRes ? true : false;
|
||||||
return nRes;
|
return nRes;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1090,6 +1095,7 @@ static void AdvancedDlg_OK(HWND window, UINT afterclose)
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
if (NewApple2Clone != (g_uCloneType + APPLECLONE_MASK|APPLE2E_MASK))
|
if (NewApple2Clone != (g_uCloneType + APPLECLONE_MASK|APPLE2E_MASK))
|
||||||
|
{
|
||||||
MessageBox(window,
|
MessageBox(window,
|
||||||
TEXT(
|
TEXT(
|
||||||
"You have changed the emulated clone type "
|
"You have changed the emulated clone type "
|
||||||
@ -1098,6 +1104,8 @@ static void AdvancedDlg_OK(HWND window, UINT afterclose)
|
|||||||
"to Clone from the Configuration tab.\n\n"),
|
"to Clone from the Configuration tab.\n\n"),
|
||||||
TEXT("Clone type changed"),
|
TEXT("Clone type changed"),
|
||||||
MB_ICONQUESTION | MB_OK | MB_SETFOREGROUND) ;
|
MB_ICONQUESTION | MB_OK | MB_SETFOREGROUND) ;
|
||||||
|
g_uCloneType = NewApple2Clone - (APPLECLONE_MASK|APPLE2E_MASK);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (NewApple2Type > A2TYPE_APPLE2PLUS)
|
if (NewApple2Type > A2TYPE_APPLE2PLUS)
|
||||||
@ -1158,7 +1166,7 @@ static BOOL CALLBACK AdvancedDlgProc (HWND window,
|
|||||||
break;
|
break;
|
||||||
case IDC_SAVESTATE_BROWSE:
|
case IDC_SAVESTATE_BROWSE:
|
||||||
if(SaveStateSelectImage(window, TEXT("Select Save State file"), true))
|
if(SaveStateSelectImage(window, TEXT("Select Save State file"), true))
|
||||||
SendDlgItemMessage(window, IDC_SAVESTATE_FILENAME, WM_SETTEXT, 0, (LPARAM) g_szNewFilename);
|
SendDlgItemMessage(window, IDC_SAVESTATE_FILENAME, WM_SETTEXT, 0, (LPARAM) g_szSSNewFilename);
|
||||||
break;
|
break;
|
||||||
case IDC_SAVESTATE_ON_EXIT:
|
case IDC_SAVESTATE_ON_EXIT:
|
||||||
break;
|
break;
|
||||||
@ -1205,7 +1213,7 @@ static BOOL CALLBACK AdvancedDlgProc (HWND window,
|
|||||||
FillComboBox(window, IDC_CLONETYPE, g_CloneChoices, g_uCloneType);
|
FillComboBox(window, IDC_CLONETYPE, g_CloneChoices, g_uCloneType);
|
||||||
InitFreezeDlgButton(window);
|
InitFreezeDlgButton(window);
|
||||||
|
|
||||||
g_szNewDirectory[0] = 0x00;
|
g_szSSNewDirectory[0] = 0x00;
|
||||||
|
|
||||||
afterclose = 0;
|
afterclose = 0;
|
||||||
break;
|
break;
|
||||||
@ -1515,7 +1523,7 @@ DWORD PSP_GetVolumeMax()
|
|||||||
|
|
||||||
bool PSP_SaveStateSelectImage(HWND hWindow, bool bSave)
|
bool PSP_SaveStateSelectImage(HWND hWindow, bool bSave)
|
||||||
{
|
{
|
||||||
g_szNewDirectory[0] = 0x00;
|
g_szSSNewDirectory[0] = 0x00;
|
||||||
|
|
||||||
if(SaveStateSelectImage(hWindow, bSave ? TEXT("Select Save State file")
|
if(SaveStateSelectImage(hWindow, bSave ? TEXT("Select Save State file")
|
||||||
: TEXT("Select Load State file"), bSave))
|
: TEXT("Select Load State file"), bSave))
|
||||||
@ -1529,12 +1537,12 @@ bool PSP_SaveStateSelectImage(HWND hWindow, bool bSave)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//===========================================================================
|
||||||
|
|
||||||
string BrowseToCiderPress (HWND hWindow, TCHAR* pszTitle)
|
static string BrowseToCiderPress (HWND hWindow, TCHAR* pszTitle)
|
||||||
{
|
{
|
||||||
TCHAR szDirectory[MAX_PATH] = TEXT("");
|
TCHAR szDirectory[MAX_PATH] = TEXT("");
|
||||||
TCHAR szCPFilename[MAX_PATH];
|
TCHAR szCPFilename[MAX_PATH] = TEXT("");
|
||||||
strcpy(szCPFilename, "");
|
|
||||||
RegLoadString(TEXT("Configuration"), REGVALUE_CIDERPRESSLOC, 1, szCPFilename ,MAX_PATH);
|
RegLoadString(TEXT("Configuration"), REGVALUE_CIDERPRESSLOC, 1, szCPFilename ,MAX_PATH);
|
||||||
string PathName = szCPFilename;
|
string PathName = szCPFilename;
|
||||||
|
|
||||||
@ -1555,20 +1563,15 @@ string BrowseToCiderPress (HWND hWindow, TCHAR* pszTitle)
|
|||||||
int nRes = GetOpenFileName(&ofn);
|
int nRes = GetOpenFileName(&ofn);
|
||||||
if(nRes) //Okay is pressed
|
if(nRes) //Okay is pressed
|
||||||
{
|
{
|
||||||
strcpy(g_szNewFilename, &szCPFilename[ofn.nFileOffset]);
|
SetCurrentImageDir(); // Reset, since GetOpenFileName() will've changed curr dir
|
||||||
|
|
||||||
szCPFilename[ofn.nFileOffset] = 0;
|
|
||||||
if (_tcsicmp(szDirectory, szCPFilename))
|
|
||||||
strcpy(g_szNewDirectory, szCPFilename);
|
|
||||||
|
|
||||||
PathName = szCPFilename;
|
PathName = szCPFilename;
|
||||||
PathName.append (g_szNewFilename);
|
|
||||||
}
|
}
|
||||||
else //Cancel is pressed.
|
else //Cancel is pressed.
|
||||||
{
|
{
|
||||||
RegLoadString(TEXT("Configuration"), REGVALUE_CIDERPRESSLOC, 1, szCPFilename,MAX_PATH);
|
RegLoadString(TEXT("Configuration"), REGVALUE_CIDERPRESSLOC, 1, szCPFilename, MAX_PATH);
|
||||||
PathName = szCPFilename;
|
PathName = szCPFilename;
|
||||||
}
|
}
|
||||||
|
|
||||||
return PathName;
|
return PathName;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user