Ejemplo n.º 1
0
        /// <summary>
        /// Event handler for mod delete button
        /// </summary>
        private async void modDeleteButton_Click(object sender, RoutedEventArgs e)
        {
            var gameDirectory = new DirectoryInfo(Properties.Settings.Default.FFXIV_Directory);
            var modding       = new Modding(gameDirectory);

            if ((ModListTreeView.SelectedItem as Category).ParentCategory.Name.Equals("ModPacks"))
            {
                if (FlexibleMessageBox.Show(
                        UIMessages.DeleteModPackMessage,
                        UIMessages.DeleteModPackTitle,
                        MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == System.Windows.Forms.DialogResult.Yes)
                {
                    var progress = await this.ShowProgressAsync(UIMessages.ModPack_Delete, UIMessages.PleaseStandByMessage);

                    await modding.DeleteModPack((ModListTreeView.SelectedItem as Category).Name);

                    (DataContext as ModListViewModel).RemoveModPack();

                    await progress.CloseAsync();
                }
            }
            else
            {
                var enumerable    = ModItemList.SelectedItems as IEnumerable;
                var selectedItems = enumerable.OfType <ModListViewModel.ModListModel>().ToArray();

                foreach (var selectedModItem in selectedItems)
                {
                    await modding.DeleteMod(selectedModItem.ModItem.fullPath);

                    (DataContext as ModListViewModel).RemoveItem(selectedModItem, (Category)ModListTreeView.SelectedItem);
                }
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Event handler for mod delete button
        /// </summary>
        private void modDeleteButton_Click(object sender, RoutedEventArgs e)
        {
            var gameDirectory = new DirectoryInfo(Properties.Settings.Default.FFXIV_Directory);
            var modding       = new Modding(gameDirectory);

            if ((ModListTreeView.SelectedItem as Category).ParentCategory.Name.Equals("ModPacks"))
            {
                if (FlexibleMessageBox.Show(
                        "Caution: This will delete all the mods for the currently selected Mod Pack.\n\nThis process is not reversible, do you want to continue?",
                        "Mod Pack Deletion Warning.",
                        MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == System.Windows.Forms.DialogResult.Yes)
                {
                    modding.DeleteModPack((ModListTreeView.SelectedItem as Category).Name);
                    (DataContext as ModListViewModel).RemoveModPack();
                }
            }
            else
            {
                var enumerable    = ModItemList.SelectedItems as IEnumerable;
                var selectedItems = enumerable.OfType <ModListViewModel.ModListModel>().ToArray();

                foreach (var selectedModItem in selectedItems)
                {
                    modding.DeleteMod(selectedModItem.ModItem.fullPath);
                    (DataContext as ModListViewModel).RemoveItem(selectedModItem, (Category)ModListTreeView.SelectedItem);
                }
            }
        }
Ejemplo n.º 3
0
        /// <summary>
        /// Event handler for mod delete button
        /// </summary>
        private async void modDeleteButton_Click(object sender, RoutedEventArgs e)
        {
            var gameDirectory = new DirectoryInfo(Properties.Settings.Default.FFXIV_Directory);
            var modding       = new Modding(gameDirectory);

            await LockUi("Deleting Mod", "Please wait...", this);

            try
            {
                if ((ModListTreeView.SelectedItem as Category).ParentCategory.Name.Equals("ModPacks"))
                {
                    if (FlexibleMessageBox.Show(
                            UIMessages.DeleteModPackMessage,
                            UIMessages.DeleteModPackTitle,
                            MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == System.Windows.Forms.DialogResult.Yes)
                    {
                        await modding.DeleteModPack((ModListTreeView.SelectedItem as Category).Name);

                        (DataContext as ModListViewModel).RemoveModPack();
                    }
                }
                else
                {
                    var enumerable    = ModItemList.SelectedItems as IEnumerable;
                    var selectedItems = enumerable.OfType <ModListViewModel.ModListModel>().ToArray();

                    foreach (var selectedModItem in selectedItems)
                    {
                        await modding.DeleteMod(selectedModItem.ModItem.fullPath);

                        (DataContext as ModListViewModel).RemoveItem(selectedModItem, (Category)ModListTreeView.SelectedItem);
                    }
                }
            }
            catch (Exception Ex)
            {
                FlexibleMessageBox.Show("Unable to delete Mod or Modpack.\n\nError: " + Ex.Message, "Mod Delete Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            finally {
                await UnlockUi(this);
            }
        }