AA2Install.formMain.forceSelectedMods C# (CSharp) Method

forceSelectedMods() public method

public forceSelectedMods ( bool suppressDialogs = false ) : void
suppressDialogs bool
return void
        public void forceSelectedMods(bool suppressDialogs = false)
        {
            if (lsvMods.SelectedItems.Count > 0)
            {
                List<Mod> mods = new List<Mod>(Enumerable.Range(0, lsvMods.SelectedItems.Count)
                    .Select(index => (Mod)lsvMods.SelectedItems[index].Tag));

                DialogResult result = DialogResult.No;
                if (!suppressDialogs)
                    result = currentOwner.InvokeMessageBox("Are you sure you want to force install mod(s): " + Environment.NewLine + mods.Select(m => m.Name).Aggregate((i, j) => i + Environment.NewLine + j) + "\nThis will delete backups of selected mods.", "Force mods?", MessageBoxButtons.YesNo);

                if (result == DialogResult.Yes || suppressDialogs)
                {
                    refreshModList(true);

                    foreach (Mod m in mods)
                    {
                        tryDelete(Paths.BACKUP + "\\" + m.Name.Replace(".zip", ".7z"));
                        int index = lsvMods.Items.IndexOfKey(m.Name);
                        lsvMods.Items[index].Checked = true;
                    }

                    inject(false, false, suppressDialogs);

                    refreshModList(true, txtSearch.Text);
                }
            }
        }