public MainViewModel(CommonSettings commonSettings, UserSettings userSettings) { _commonSettings = commonSettings; _userSettings = userSettings; Human = new HumanPlayerViewModel(userSettings.GameSettings, commonSettings); Settings = new AppSettingsViewModel(userSettings.GameSettings.AppSettings); MainMenu = new MainMenuViewModel(userSettings) { IsVisible = false }; BackLink.Default = new BackLink(Settings, userSettings); Cancel = new CustomCommand(Cancel_Executed); ShowMenu(); NewGame = new CustomCommand(New_Executed); Open = new AsyncCommand(OnlineGame_Executed); NetworkGame = new CustomCommand(NetworkGame_Executed); BestPlayers = new CustomCommand(Best_Executed); About = new CustomCommand(About_Executed); SetProfile = new CustomCommand(SetProfile_Executed); _startMenu.MainCommands.Add(new UICommand { Header = Resources.MainMenu_SingleGame.ToUpper(), Command = NewGame }); _startMenu.MainCommands.Add(new UICommand { Header = Resources.MainMenu_OnlineGame.ToUpper(), Command = Open }); _startMenu.MainCommands.Add(new UICommand { Header = Resources.MainMenu_NetworkGame.ToUpper(), Command = NetworkGame }); _startMenu.MainCommands.Add(new UICommand { Header = Resources.MainMenu_BestPlayers.ToUpper(), Command = BestPlayers }); _startMenu.MainCommands.Add(new UICommand { Header = Resources.MainMenu_About.ToUpper(), Command = About }); _startMenu.MainCommands.Add(new UICommand { Header = Resources.MainMenu_Exit.ToUpper(), Command = PlatformSpecific.PlatformManager.Instance.Close }); _startMenu.Human = Human; _startMenu.SetProfile = SetProfile; CancelUpdate = new CustomCommand(obj => Update = null); Human.NewAccountCreating += HumanPlayer_NewAccountCreating; Human.NewAccountCreated += HumanPlayer_NewAccountCreated; Human.AccountEditing += Human_AccountEditing; ShowSlideMenu = new CustomCommand(ShowSlideMenu_Executed); }
internal BackLink(AppSettingsViewModel settings, UserSettings userSettings) { _settings = settings; _userSettings = userSettings; }