Sanguosha.UI.Controls.PlayerViewModel._OnCardSelected C# (CSharp) Method

_OnCardSelected() private method

private _OnCardSelected ( object sender, EventArgs args ) : void
sender object
args System.EventArgs
return void
        private void _OnCardSelected(object sender, EventArgs args)
        {
            var card = sender as CardViewModel;
            if (card.IsSelected)
            {
                /*
                if (card == _lastSelectedCard)
                {
                    Trace.Assert(false);
                }
                else*/
                if (_lastSelectedCard != null && _cardsInSwitchMode.Contains(card))
                {
                    _lastSelectedCard.OnSelectedChanged -= _OnCardSelected;
                    _lastSelectedCard.IsSelected = false;
                    _lastSelectedCard.OnSelectedChanged += _OnCardSelected;
                    // _lastSelectedCard = null;
                }

                _lastSelectedCard = card;
            }
            else if (card == _lastSelectedCard)
            {
                _lastSelectedCard = null;
            }

            if (currentUsageVerifier != null)
            {
                _UpdateCardUsageStatus();
            }
        }