Fix "Log Sound As" and "Stop Sound Logging"

This commit is contained in:
jeblanchard 2008-05-31 02:59:28 +00:00
parent 38eb679ebc
commit a607572b61
1 changed files with 13 additions and 10 deletions

View File

@ -101,6 +101,7 @@ static HMENU fceumenu = 0;
static int tog = 0; static int tog = 0;
static int CheckedAutoFirePattern = MENU_AUTOFIRE_PATTERN_1; static int CheckedAutoFirePattern = MENU_AUTOFIRE_PATTERN_1;
static int CheckedAutoFireOffset = MENU_AUTOFIRE_OFFSET_1; static int CheckedAutoFireOffset = MENU_AUTOFIRE_OFFSET_1;
static bool loggingSound = false;
static HMENU recentmenu, recentdmenu; static HMENU recentmenu, recentdmenu;
@ -1057,24 +1058,26 @@ LRESULT FAR PASCAL AppWndProc(HWND hWnd,UINT msg,WPARAM wParam,LPARAM lParam)
break; break;
case MENU_LOG_SOUND: //mbg merge 7/18/06 changed ID from 120 case MENU_LOG_SOUND: //mbg merge 7/18/06 changed ID from 120
// Record sound menu was selected // (new-ish record sound / stop logging code:)
// TODO: Proper stop logging
{ {
MENUITEMINFO mi; MENUITEMINFO mi;
// Evil: if (loggingSound)
char *strT = "Stop Sound Logging"; {
char *strF = "Log Sound As..."; CloseWave();
char *str = CreateSoundSave() ? strT : strF; loggingSound = false;
}
else loggingSound = CreateSoundSave();
memset(&mi,0,sizeof(mi)); memset(&mi,0,sizeof(mi));
mi.fMask=MIIM_DATA|MIIM_TYPE; mi.fMask=MIIM_DATA|MIIM_TYPE;
mi.cbSize=sizeof(mi); mi.cbSize=sizeof(mi);
GetMenuItemInfo(fceumenu,120,0,&mi); GetMenuItemInfo(fceumenu,MENU_LOG_SOUND,0,&mi);
mi.fMask=MIIM_DATA|MIIM_TYPE; mi.fMask=MIIM_DATA|MIIM_TYPE;
mi.cbSize=sizeof(mi); mi.cbSize=sizeof(mi);
mi.dwTypeData=str; if (loggingSound) mi.dwTypeData = "Stop Sound Logging";
mi.cch=strlen(str); else mi.dwTypeData = "Log Sound As...";
SetMenuItemInfo(fceumenu,120,0,&mi); mi.cch=strlen(mi.dwTypeData);
SetMenuItemInfo(fceumenu,MENU_LOG_SOUND,0,&mi);
} }
break; break;