ChessBoardVisualLib.ViewModel.ChessBoardViewModel.MouseClick C# (CSharp) Method

MouseClick() public method

public MouseClick ( SquareItem item ) : MouseOperationResults
item SquareItem
return MouseOperationResults
        public MouseOperationResults MouseClick(SquareItem item)
        {
            if (this.IsFigureMoving)
            {
                this.IsFigureMoving = false;
                this.UnHighlightSquares();

                if (this.TryFinishMove(item))
                    return MouseOperationResults.MoveFinished;

                if (item.FigureType == Figure.Nobody)
                    return MouseOperationResults.MoveCanceled;

                if (item.FigureColor == this.CurrentPlayerColor)
                    this.InitFigureMoveBegin(item);
            }
            else
            {
                if (item.FigureType == Figure.Nobody)
                    return MouseOperationResults.MoveCanceled;

                this.InitFigureMoveBegin(item);
            }

            return MouseOperationResults.NewMove;
        }