Ejemplo n.º 1
0
        /// <summary>
        /// 局面変更時に呼ばれます。
        /// </summary>
        private void OnBoardChanged(object sender, BoardChangedEventArgs e)
        {
            // 指し手が進んだときのエフェクトを追加します。
            if (EffectManager != null &&
                e.Move != null)
            {
                EffectManager.Moved(e.Move, e.IsUndo);
            }

            FormsUtil.InvalidateCommand();
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Stoppedイベントを発行します。
        /// </summary>
        private void RaiseStopped()
        {
            var handler = Interlocked.Exchange(ref Stopped, null);

            if (handler != null)
            {
                Util.SafeCall(() =>
                              handler(this, EventArgs.Empty));
            }

            FormsUtil.InvalidateCommand();
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 編集モード変更時に呼ばれ、駒やコマンドの初期化などを行います。
        /// </summary>
        private void EditModeUpdated(object sender, PropertyChangedEventArgs e)
        {
            EndMove();

            FormsUtil.InvalidateCommand();
        }