/// <summary> /// Settingで渡されたSetButtonのハンドラを呼び出す。 /// </summary> public void SetButton(MainDialogToolStripButtonEnum name, bool enable) { if (Setting != null && Setting.SetButton != null) { Setting.SetButton(name, enable); } }
// -- 以下、ToolStripのハンドラ /// <summary> /// [UI thread] : ボタンの有効/無効を切り替えるためのハンドラ /// ボタンの番号が変わった時に呼び出し側を書き直すのが大変なので、 /// 名前で解決するものとする。 /// </summary> /// <param name="name"></param> /// <param name="enable"></param> private void SetButton(MainDialogToolStripButtonEnum name, bool enable) { ToolStripButton btn; switch (name) { case MainDialogToolStripButtonEnum.RESIGN: btn = this.toolStripButton1; break; case MainDialogToolStripButtonEnum.UNDO_MOVE: btn = this.toolStripButton2; break; case MainDialogToolStripButtonEnum.MOVE_NOW: btn = this.toolStripButton3; break; case MainDialogToolStripButtonEnum.INTERRUPT: btn = this.toolStripButton4; break; case MainDialogToolStripButtonEnum.REWIND: btn = this.toolStripButton9; break; case MainDialogToolStripButtonEnum.FORWARD: btn = this.toolStripButton10; break; case MainDialogToolStripButtonEnum.MAIN_BRANCH: btn = this.toolStripButton11; break; default: btn = null; break; } // 希望する状態と現在の状態が異なるなら、この時だけ更新する。 if (btn.Enabled != enable) { btn.Enabled = enable; } }