示例#1
0
        public TableausView(ISolitaireGameInstance gameInstance)
        {
            InitializeComponent();

            var vm = new TableausViewModel(gameInstance);

            DataContext = vm;
        }
示例#2
0
        //shows whats on the table
        public TableausViewModel(ISolitaireGameInstance gameInstance)
        {
            StackViewModels = new ObservableCollection <VerticalCardStackViewModel>();

            foreach (var tableau in gameInstance.Tableaus)
            {
                StackViewModels.Add(new VerticalCardStackViewModel(tableau));
            }
        }
        //Overflow Instance
        public OverflowCardStackViewModel(ISolitaireGameInstance gameInstance, IEventAggregator eventAggregator)
        {
            var stack = gameInstance.OverflowStack;

            _eventAggregator = eventAggregator;
            _cards           = new List <Card>(stack);
            _wasteStack      = new List <Card>();
            DealtCards       = new ObservableCollection <Card>();
            TopCard          = stack[stack.Count - 1];

            DealStackCommand            = new DelegateCommand(DealStack);
            SendCardToFoundationCommand = new DelegateCommand(SendCardToFoundation);
        }
示例#4
0
        public FoundationsView(ISolitaireGameInstance gameInstance, IEventAggregator eventAggregator)
        {
            InitializeComponent();

            DataContext = new FoundationsViewModel(gameInstance, eventAggregator);
        }
示例#5
0
        public OverflowCardStackView(ISolitaireGameInstance gameInstance, IEventAggregator eventAggregator)
        {
            InitializeComponent();

            DataContext = new OverflowCardStackViewModel(gameInstance, eventAggregator);
        }
 //new foundation
 public FoundationsViewModel(ISolitaireGameInstance gameInstance, IEventAggregator eventAggregator)
 {
     _eventAggregator = eventAggregator;
     Foundations      = new Dictionary <Card.Suits, IFoundation>(gameInstance.Foundations);
     _eventAggregator.GetEvent <CardTransferRequestEvent>().Subscribe(AcceptCard);
 }