private void btnOK_Click(object sender, EventArgs e) { if (lstEngines.Items.Count > 0 && lstEngines.SelectedValue != null) { string engineFilePath = lstEngines.SelectedValue.ToString(); int hashTableSize = (int)numHashTableSize.Value; if (selectedEngine != null) { selectedEngine.Close(); } selectedEngine = new UCIEngine(engineFilePath, hashTableSize, this.Game); if (engineParameters != null) { engineParameters.SetEngineParameters(selectedEngine); } selectedEngine.UseTablebases = chkUseTablebases.Checked; selectedEngine.Load(); selectedEngine.Close(); if (selectedBook != null && selectedBook.BookOptions != null && selectedBook.BookOptions.UseBook) { selectedBook.SetOptions(selectedBook.BookOptions); } else { selectedBook = null; } this.DialogResult = DialogResult.OK; this.Close(); } }
private void LoadNewEngine() { if (!IsNewEngineSelected) { return; } EngineManager objEngineManager = new EngineManager(); objEngineManager.SaveDefaultEngine(lstEngines.SelectedValue.ToString()); int hashTableSize = Convert.ToInt32(cmbHashTableSize.SelectedValue); InfinitySettings.Settings.DefaultEngineXml = objEngineManager.LoadDefaultEngine(); string engineFile = InfinitySettings.Settings.DefaultEngineXml.FilePath; selectedEngine = new UCIEngine(engineFile, hashTableSize, this.Game); if (engineParameters != null) { engineParameters.SetEngineParameters(selectedEngine); } UCIEngine oldEngine = this.Game.DefaultEngine; if (oldEngine != null) { oldEngine.Close(); } selectedEngine.UseTablebases = chkUseTablebases.Checked; selectedEngine.Load(); }