public object Convert(object[] values, Type targetType, object parameter, CultureInfo culture) { BoardPosition pos = (BoardPosition)values[0]; ChessPiecePosition piece = (ChessPiecePosition)values[1]; bool isSelected = (bool)values[2]; bool isHovered = (bool)values[3]; ChessViewModel viewModel = (ChessViewModel)values[4]; if (viewModel.SelectedSquare != null && isHovered) { return(RED_BRUSH); } if (isSelected) { return(RED_BRUSH); } if (isHovered) { return(GREEN_BRUSH); } if (viewModel.IsCheck && piece.Player == viewModel.CurrentPlayer && piece.PieceType == ChessPieceType.King) { return(YELLOW_BRUSH); } if ((pos.Row + pos.Col) % 2 == 0) { return(PATTERN_ONE); } else { return(PATTERN_TWO); } }
public PawnPromotionDialog(ChessViewModel model) { InitializeComponent(); DataContext = this; _model = model; }
public ChessPawnPromoteBlack(ChessViewModel vm) { InitializeComponent(); this.Resources.Add("cvm", vm); LastMove = vm.LastMove; }