Implement saving of (modified) engine settings
[xboard.git] / winboard / wsettings.c
index 893d91b..521ce78 100644 (file)
@@ -541,6 +541,12 @@ LRESULT CALLBACK SettingsProc(HWND hDlg, UINT message, WPARAM wParam, LPARAM lPa
                     GetOptionValues(hDlg, activeCps, activeList);\r
                else if( activeList[j].type  != Button) break;\r
                else if( !activeCps ) { (*(ButtonCallback*) activeList[j].target)(hDlg); break; }\r
+               if(j == 0) { // WinBoard save button\r
+                   SaveEngineSettings(activeCps == &second);\r
+                   EndDialog( hDlg, 0 );\r
+                   comboCallback = NULL; activeCps = NULL; settingsDlg = NULL;\r
+                   return TRUE;\r
+               }\r
                snprintf(buf, MSG_SIZ, "option %s\n", activeList[j].name);\r
                SendToProgram(buf, activeCps);\r
            }\r