public NewGameViewModel(Identity identity, MainNavigationModel mainNavigation, NameNavigationModel nameNavigation) { _identity = identity; _mainNavigation = mainNavigation; _nameNavigation = nameNavigation; _depState = new Dependent(delegate { _state = _identity.User != null ? StateId.Challenge : _identity.Claims.Any(claim => !claim.Responses.Any()) ? StateId.PendingUserName : StateId.YourName; }); _depChallenge = new Dependent(delegate { _depState.OnGet(); _challenge = _state == StateId.Challenge ? new ChallengeViewModel(_identity.User, _mainNavigation) : null; }); _depYourName = new Dependent(delegate { _depState.OnGet(); _yourName = _state == StateId.YourName ? new YourNameViewModel(_identity, _nameNavigation) : null; }); _depPendingUserName = new Dependent(delegate { _depState.OnGet(); _pendingUserName = _state == StateId.PendingUserName ? new PendingUserNameViewModel(_identity.Claims.FirstOrDefault(claim => !claim.Responses.Any())) : null; }); }
public LocalGameState(LocalGame game, MainNavigationModel mainNavigation) { _game = game; _mainNavigation = mainNavigation; _depGameBoardRaw = new Dependent(UpdateGameBoardRaw); _depGameBoard = new Dependent(UpdateGameBoard); _depPreviewBoard = new Dependent(UpdatePreviewBoard); }
protected PlayerGameViewModel(MainNavigationModel mainNavigation) { _mainNavigation = mainNavigation; _depGameState = new Dependent(() => { _gameState = Player == null ? null : new RemoteGameState(Player, _mainNavigation); }); }
public RemoteGameState(Player player, MainNavigationModel mainNavigation) { _player = player; _mainNavigation = mainNavigation; if (_player != null) { _myColor = _player.Index == 0 ? PieceColor.Black : PieceColor.White; } _depGameBoardRaw = new Dependent(UpdateGameBoardRaw); _depGameBoard = new Dependent(UpdateGameBoard); _depPreviewBoard = new Dependent(UpdatePreviewBoard); }
public ViewModelLocator(Identity identity, IPresentationServices presentationServices, MainNavigationModel mainNavigationModel, NameNavigationModel nameNavigationModel) { _identity = identity; _presentationServices = presentationServices; _mainNavigationModel = mainNavigationModel; _nameNavigationModel = nameNavigationModel; _main = new MainViewModel(_presentationServices, _identity, _mainNavigationModel); _newGame = new NewGameViewModel(_identity, _mainNavigationModel, _nameNavigationModel); _depGame = new Dependent(delegate { if (_mainNavigationModel.SelectedPlayer != null) { _game = new RemoteGameViewModel(_mainNavigationModel.SelectedPlayer, _mainNavigationModel); } else if (_mainNavigationModel.SelectedGameRequest != null) { _game = new GameRequestViewModel(_mainNavigationModel.SelectedGameRequest, _mainNavigationModel); } else { LocalGame localGame = _identity.ActiveLocalGames.FirstOrDefault(); if (localGame != null) _game = new LocalGameViewModel(localGame, _mainNavigationModel); else _game = null; } }); _depChat = new Dependent(delegate { _chat = _mainNavigationModel.SelectedPlayer == null ? null : new ChatViewModel(_mainNavigationModel.SelectedPlayer, _mainNavigationModel); }); _settings = new SettingsViewModel(_identity); }
public GameSummaryViewModel(Player player, MainNavigationModel mainNavigation) { _player = player; _mainNavigation = mainNavigation; _gameState = new RemoteGameState(player, _mainNavigation); }
public MainViewModel(IPresentationServices presentationServices, Identity identity, MainNavigationModel mainNavigation) { _presentationServices = presentationServices; _identity = identity; _mainNavigation = mainNavigation; }
public LocalGameViewModel(LocalGame localGame, MainNavigationModel mainNavigation) { _gameState = new LocalGameState(localGame, mainNavigation); _mainNavigation = mainNavigation; }
public GameRequestViewModel(GameRequest gameRequest, MainNavigationModel mainNavigation) : base(mainNavigation) { _gameRequest = gameRequest; }
public ChallengeViewModel(User user, MainNavigationModel mainNavigation) { _user = user; _mainNavigation = mainNavigation; }
public ChatViewModel(Player selectedPlayer, MainNavigationModel mainNavigation) { _selectedPlayer = selectedPlayer; _mainNavigation = mainNavigation; }
public RemoteGameViewModel(Player player, MainNavigationModel mainNavigation) : base(mainNavigation) { _player = player; }