Boolean saveSettingsOnExit;
char *settingsFileName;
+static int
+LoadGamePopUp (FILE *f, int gameNumber, char *title)
+{
+ cmailMsgLoaded = FALSE;
+ if (gameNumber == 0) {
+ int error = GameListBuild(f);
+ if (error) {
+ DisplayError(_("Cannot build game list"), error);
+ } else if (!ListEmpty(&gameList) &&
+ ((ListGame *) gameList.tailPred)->number > 1) {
+ GameListPopUp(f, title);
+ return TRUE;
+ }
+ GameListDestroy();
+ gameNumber = 1;
+ }
+ return LoadGame(f, gameNumber, title, FALSE);
+}
+
void
LoadGameProc ()
{
void
FlipViewProc ()
{
+ if(twoBoards) { partnerUp = 1; DrawPosition(True, NULL); partnerUp = 0; }
flipView = !flipView;
DrawPosition(True, NULL);
}
void
SaveOnExitProc ()
{
- Arg args[16];
-
- saveSettingsOnExit = !saveSettingsOnExit;
+ saveSettingsOnExit = !saveSettingsOnExit;
- MarkMenuItem("Options.SaveSettingsonExit", saveSettingsOnExit);
+ MarkMenuItem("Options.SaveSettingsonExit", saveSettingsOnExit);
}
void
SaveSettingsProc ()
{
- SaveSettings(settingsFileName);
+ SaveSettings(settingsFileName);
}
void
DebugProc ()
{
appData.debugMode = !appData.debugMode;
+ if(!strcmp(appData.nameOfDebugFile, "stderr")) return; // stderr is already open, and should never be closed
+ if(!appData.debugMode) fclose(debugFP);
+ else {
+ debugFP = fopen(appData.nameOfDebugFile, "w");
+ if(debugFP == NULL) debugFP = stderr;
+ else setbuf(debugFP, NULL);
+ }
}
void
void
PonderNextMoveProc ()
{
- Arg args[16];
-
- PonderNextMoveEvent(!appData.ponderNextMove);
- MARK_MENU_ITEM("Options.PonderNextMove", appData.ponderNextMove);
+ PonderNextMoveEvent(!appData.ponderNextMove);
+ MARK_MENU_ITEM("Options.PonderNextMove", appData.ponderNextMove);
}
void
void
HideThinkingProc ()
{
- Arg args[16];
-
- appData.hideThinkingFromHuman = !appData.hideThinkingFromHuman; // [HGM] thinking: taken out of ShowThinkingEvent
- ShowThinkingEvent();
+ appData.hideThinkingFromHuman = !appData.hideThinkingFromHuman; // [HGM] thinking: taken out of ShowThinkingEvent
+ ShowThinkingEvent();
- MARK_MENU_ITEM("Options.HideThinking", appData.hideThinkingFromHuman);
+ MARK_MENU_ITEM("Options.HideThinking", appData.hideThinkingFromHuman);
}
/*
};
MenuItem engineMenu[] = {
- {N_("Load New Engine ..."), "LoadEngine", LoadEngineProc},
+ {N_("Load New 1st Engine ..."), "LoadEngine", LoadEngine1Proc},
+ {N_("Load New 2nd Engine ..."), "LoadEngine", LoadEngine2Proc},
{"----", NULL, NothingProc},
{N_("Engine #1 Settings ..."), "Engine#1Settings", FirstSettingsProc},
{N_("Engine #2 Settings ..."), "Engine#2Settings", SecondSettingsProc},