Пример #1
0
        private GameDataModel GameDataInFolder(string aFolder)
        {
            GameDataModel result = null;

            GameConfig config = new GameConfig();

            // Always write a default config file
            string defConfigFilePath = aFolder + System.IO.Path.DirectorySeparatorChar + DEFAULT_CONFIG_FILE;
            File.WriteAllText(defConfigFilePath, JsonConvert.SerializeObject(config, Formatting.Indented));

            // Try and get the game config
            string configPath = aFolder + "/" + CONFIG_FILE;
            if (File.Exists(configPath))
            {
                try
                {
                    config = JsonConvert.DeserializeObject<GameConfig>(File.ReadAllText(configPath));

                    if (config.HasRequiredFields())
                    {
                        result = new GameDataModel(aFolder, config.Executable, config.Title, config.Icon, config.Screenshot, config.DescriptionFile);
                    }
                }
                catch (JsonException e)
                {
                    // TODO(doug) - handle
                }
            }

            return result;
        }
Пример #2
0
 public GameViewModel(GameDataModel aModel, Action<GameDataModel> aOnClick)
 {
     _model = aModel;
     _onClick = aOnClick;
     OnClickCommand = new RelayCommand(wasClicked); ;
 }
 private void GameWasClicked(GameDataModel aGame)
 {
     log.Info("Selected game: " + aGame.Title);
     GameDetailViewModel gameDetailView = ViewModelLocator.Locator().GameDetailViewModel;
     gameDetailView.Game = aGame;
     MessengerInstance.Send<ApplicationViewModel.ChangePageMessage>(new ApplicationViewModel.ChangePageMessage(gameDetailView));
 }