예제 #1
0
        /// <summary>
        /// エンジンオプション設定ダイアログを出す。
        ///
        /// この構築のために思考エンジンに接続してoption文字列を取得しないといけなかったりしてわりと大変。
        /// </summary>
        private void ShowEngineOptionSettingDialog()
        {
            var opt           = EngineCommonOptionsSampleOptions.InstanceForConsideration();
            var consideration = ViewModel.DialogType == ConsiderationEngineSettingDialogType.ConsiderationSetting;

            var dialog = EngineOptionSettingDialogBuilder.Build(
                EngineCommonOptionsSample.CreateEngineCommonOptions(opt),                                           // 共通設定のベース(検討、詰検討用)
                consideration ? TheApp.app.EngineConfigs.ConsiderationConfig : TheApp.app.EngineConfigs.MateConfig, // 共通設定の値はこの値で上書き
                ViewModel.EngineDefineFolderPath                                                                    // 個別設定の情報はここにある。
                );

            // 構築に失敗。
            if (dialog == null)
            {
                return;
            }

            try
            {
                FormLocationUtility.CenteringToThisForm(dialog, this);

                // modal dialogとして出す
                dialog.ShowDialog(this);
            }
            finally
            {
                dialog.Dispose();
            }
        }
예제 #2
0
        /// <summary>
        /// エンジンオプション設定ダイアログを出す。
        ///
        /// この構築のために思考エンジンに接続してoption文字列を取得しないといけなかったりしてわりと大変。
        /// </summary>
        private void ShowEngineOptionSettingDialog()
        {
            var dialog = EngineOptionSettingDialogBuilder.Build(
                EngineCommonOptionsSample.CreateEngineCommonOptions(), // 共通設定のベース
                TheApp.app.EngineConfigs.NormalConfig,                 // 共通設定の値はこの値で上書き
                ViewModel.EngineDefineFolderPath                       // 個別設定の情報はここにある。
                );

            // 構築に失敗。
            if (dialog == null)
            {
                return;
            }

            // 「詳細設定」ボタンをDisableにする。
            //ViewModel.SettingButton = false;
            // → この処理やめる。modal dialogとして出せばOk.

            FormLocationUtility.CenteringToThisForm(dialog, this.Parent as Form /* thisはControlなのでParentはFormのはず.. */);

            // modal dialogとして出す
            dialog.ShowDialog(this.Parent);
        }