コード例 #1
0
ファイル: Library.cs プロジェクト: jcabrera96/GameLinker
        private async void ListItemClicked(object sender, EventArgs e)
        {
            switch ((int)lastItemHovered.Tag)
            {
            case -1:
                if (!await OnedriveHelper.Instance.IsAuthenticated())
                {
                    MessageBox.Show(
                        (string)lang["add_game_disabled"], "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }
                NewGameForm addGameForm = new NewGameForm(GenerateGamesList);
                addGameForm.ShowDialog(this);
                break;

            default:
                if (!await OnedriveHelper.Instance.IsAuthenticated())
                {
                    MessageBox.Show(
                        (string)lang["restore_disabled"], "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    return;
                }
                Game   selectedGame = LibraryHelper.Library.GetGames()[(int)lastItemHovered.Tag];
                string message      = (string)lang["restore_game"] + Environment.NewLine + Environment.NewLine + (string)lang["data_path"] +
                                      Environment.NewLine + (selectedGame.DataPath == "" ? (string)lang["none"] : selectedGame.DataPath) + Environment.NewLine +
                                      Environment.NewLine + (string)lang["saves_path"] + Environment.NewLine + (selectedGame.SavePath == "" ? (string)lang["none"] : selectedGame.SavePath);
                DialogResult answer = MessageBox.Show(message, (string)lang["warning"], MessageBoxButtons.YesNoCancel, MessageBoxIcon.Warning);
                if (answer == DialogResult.Yes)
                {
                    UploadProgressForm uploadForm = new UploadProgressForm();
                    uploadForm.Owner = this;
                    await CompressionHelper.JoinAndDecompress(selectedGame, uploadForm, selectedGame.DataPath, selectedGame.SavePath);
                }
                else if (answer == DialogResult.No)
                {
                    UploadProgressForm uploadForm = new UploadProgressForm();
                    uploadForm.Owner = this;
                    string dataPath = "", savesPath = "";
                    if (selectedGame.DataPath != "")
                    {
                        DialogResult dataResult = dataFolderBrowserDialog.ShowDialog();
                        if (dataResult == DialogResult.OK)
                        {
                            dataPath = dataFolderBrowserDialog.SelectedPath;
                        }
                    }
                    if (selectedGame.SavePath != "")
                    {
                        DialogResult savesResult = savesFolderBrowserDialog.ShowDialog();
                        if (savesResult == DialogResult.OK)
                        {
                            savesPath = savesFolderBrowserDialog.SelectedPath;
                        }
                    }
                    await CompressionHelper.JoinAndDecompress(selectedGame, uploadForm, dataPath, savesPath);
                }
                break;
            }
        }
コード例 #2
0
        private static Game GetNewGameFromForm()
        {
            Game game;

            using (var gameForm = new NewGameForm())
            {
                gameForm.ShowDialog();
                game = gameForm.Game;
            }

            return(game);
        }