private void sevenZipLocationTextbox_TextChanged(object sender, System.Windows.Controls.TextChangedEventArgs e) { Extraction.sevenZipPath = sevenZipLocationTextbox.Text; if (Extraction.CheckLocation(Extraction.sevenZipPath)) { sevenZipSuccessTick.Visibility = Visibility.Visible; } else { sevenZipSuccessTick.Visibility = Visibility.Hidden; } CheckInstallability(); }
private bool CheckInstallability(bool forceFail = false) { bool readyForInstall = true; if (!Morrowind.CheckLocation(Morrowind.morrowindPath)) { readyForInstall = false; } if (!Extraction.CheckLocation(Extraction.sevenZipPath)) { readyForInstall = false; } if (!File.Exists(packageListLocationTextbox.Text)) { readyForInstall = false; } bool nexusWarnings = false; if (packages != null) { //Update Nexus requirement bool reqNex = false; foreach (Package p in packages) { if (!p.requiresNexus) { continue; } reqNex = true; break; } nexusWarnings = (reqNex && !(nexusAPIKeyTextBox.Text.Trim().Length > 0)) || forceFail; } else { readyForInstall = false; } nexusWarning.Visibility = nexusWarnings ? Visibility.Visible : Visibility.Hidden; nexusAPIKeyWarning.Visibility = nexusWarnings ? Visibility.Visible : Visibility.Hidden; nexusSuccessTick.Visibility = !nexusWarnings ? Visibility.Visible : Visibility.Hidden; installButton.IsEnabled = !nexusWarnings && readyForInstall; installReadyImage.Visibility = !nexusWarnings && readyForInstall ? Visibility.Visible : Visibility.Hidden; return(readyForInstall); }
public static void LoadConfig() { Log.Write("\nLoading config..."); string reg; reg = GetRegistryValue(K_morrowindPath); Morrowind.morrowindPath = reg == "" ? Morrowind.GetInstallLocation() : reg; reg = GetRegistryValue(K_packageListPath); Config.packageListPath = reg == "" ? Path.Combine(Morrowind.morrowindPath, "packageList.json") : reg; reg = GetRegistryValue(K_sevenZipPath); Extraction.sevenZipPath = reg == "" ? Extraction.GetInstallLocation() : reg; reg = GetRegistryValue(K_nexusAPIKey); Nexus.apiKey = reg; Config.hideStartupWarning = GetRegistryBool(K_hideStartupWarning); Log.Write(" done."); }
private static void Unpack(Package pak) { var destination = Path.Combine(Path.GetTempPath(), pak.list.name, pak.name); Extraction.Extract(pak, destination); }