private void mainRepositoryBindingSource_AddingNew(object sender, AddingNewEventArgs e) { //List<RepositoryLocationInfo> current = new RepositoryLocations().GetMainRepositories(); //current.Add(new RepositoryLocationInfo("", "", true)); //new RepositoryLocations().MainRepositories = current; //mainRepositoryBindingSource.DataSource = new RepositoryLocations(); RepositoryLocations re = ((RepositoryLocations)mainRepositoryBindingSource.DataSource); re.MainRepositories.Add(new RepositoryLocationInfo("", "", true)); mainRepositoryBindingSource.ResetBindings(false); }
public void UpdateRepository() { if (!Directory.Exists(RepositoryFolder)) { Directory.CreateDirectory(RepositoryFolder); } RepositoryFiles = new List <string>(); //remove old folder if (Directory.Exists(RepositoryFolder + "previous")) { Directory.Delete(RepositoryFolder + "previous", true); } Directory.CreateDirectory(RepositoryFolder + "previous"); foreach (string filename in Directory.GetFiles(RepositoryFolder, "*.xml")) { File.Copy(filename, Path.GetDirectoryName(filename) + Path.DirectorySeparatorChar + "previous" + Path.DirectorySeparatorChar + Path.GetFileName(filename)); } CurrentUpdatingIndex = 0; Dictionary <string, string> MainRepositories = new RepositoryLocations().GetEnabledMainRepositories(); FoundNumberOfRepositories = MainRepositories.Count; foreach (KeyValuePair <string, string> kv in MainRepositories) { DownloadRepositoryFiles(kv.Key, kv.Value); } CleanupOldRepositoryFiles(); LoadRepositoryFiles(); UpdateNewState(); Directory.Delete(RepositoryFolder + "previous", true); OnUpdate(100, "Done"); }
private void btnSave_Click(object sender, EventArgs e) { string result = string.Empty; if (DataIsValid(out result)) { if (mainRepositoryBindingSource.DataSource != null) { RepositoryLocations reps = (RepositoryLocations)mainRepositoryBindingSource.DataSource; reps.SaveRepository(); btnSave.Enabled = btnCancel.Enabled = false; if (MessageBox.Show(Resources.MessageBox_RepositoryRestartConfirm, Resources.MessageBox_RepositoryRestartCaption, MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes) { Application.Restart(); } } } else { MessageBox.Show(Resources.MessageBox_RepositoryInfoInvalid + result, Resources.MessageBox_RepositoryInfoInvalidCaption, MessageBoxButtons.OK, MessageBoxIcon.Error); } }
private static void SelectMainRepository() { RepositoryLocations _repositoryLocations = new RepositoryLocations(); string Language = Settings.Default.UILanguage; if (!Enum.IsDefined(typeof(HardwareTypeEnum), Settings.Default.HardwareType)) { return; } HardwareDetails det = HardwareDetailsFactory.CreateDetails((HardwareTypeEnum)Enum.Parse(typeof(HardwareTypeEnum), Settings.Default.HardwareType)); bool found = false; int i = 0; while ((i < _repositoryLocations.MainRepositories.Count) && (!found)) { if (_repositoryLocations.MainRepositories[i].Name.Equals("Main_Type" + det.RepositoryType + "_" + Language, StringComparison.CurrentCultureIgnoreCase)) { found = true; } else { i++; } } if (found) { bool changed = false; foreach (RepositoryLocationInfo info in _repositoryLocations.MainRepositories) { if (info.Name.StartsWith("Main_Type" + det.RepositoryType + "_" + Language, StringComparison.CurrentCultureIgnoreCase)) { if (!info.Enabled) { info.Enabled = true; changed = true; } } else if (info.Name.StartsWith("Main_", StringComparison.CurrentCultureIgnoreCase)) { if (info.Enabled) { info.Enabled = false; changed = true; } } } if (changed) { _repositoryLocations.SaveRepository(); } } else { foreach (RepositoryLocationInfo info in _repositoryLocations.MainRepositories) { if (info.Name.StartsWith("Main_Type" + det.RepositoryType + "_English", StringComparison.CurrentCultureIgnoreCase)) { info.Enabled = true; } else if (info.Name.StartsWith("Main_", StringComparison.CurrentCultureIgnoreCase)) { info.Enabled = false; } } _repositoryLocations.SaveRepository(); } }