private void saveToolStripMenuItem_Click(object sender, EventArgs e) { if (eLC != null) { if (eLC.Save(MessageBox.Show("Do you want to encrypt the data?", "Question", MessageBoxButtons.YesNo) == DialogResult.Yes)) { MessageBox.Show("Saved!"); } } }
public void Import(object filename) { dst = ed.LoadElements((string)filename); ProgressStatus.Maximum = dst.Lists.Length; int a, b, c, d; for (a = 0; a < dst.Lists.Length; ++a) { if (a == dst.ConversationListIndex) { dst.Lists[a] = src.Lists[a]; } for (c = 0; c < etl.Count; ++c) { if (dst.Lists[a].listName == etl[c].list) { for (b = 0; b < dst.Lists[a].elementValues.Length; ++b) { if (dst.Lists[a].elementFields[0] == "ID") { if (Convert.ToInt32(dst.GetValue(a, b, 0)) == etl[c].id) { for (d = 0; d < dst.Lists[a].elementFields.Length; ++d) { foreach (Fields f in etl[c].f) { if (dst.Lists[a].elementFields[d].IndexOf(f.field) > -1) { dst.SetValue(a, b, d, f.value); //debugBox.Text += "ID: " + dst.GetValue(a, b, 0) + " => " + f.value + "\n"; } } } } } } } } ProgressStatus.Value++; } dst.Save((string)filename); ProgressStatus.Value = 0; debugBox.Text += "Русификация Elements.data успешно завершена\n"; }
private void convert_Click(object sender, EventArgs e) { short.TryParse(version_list.Text, out short dst_version); if (src_el.Version < dst_version) { MetroMessageBox.Show(this, "Мы крайне не рекомендуем использовать конвертирование в версию выше!", "Предупреждение"); } if (src_el.Version == dst_version) { MetroMessageBox.Show(this, "Странно конвертировать в ту же версию!", "Предупреждение"); } eListCollection dst_el = new eListCollection(this); eList[] conf = dst_el.loadConfiguration(files.Where(x => x.Contains(string.Format("v{0}.cfg", dst_version))).First()); dst_el.Lists = conf; dst_el.Version = dst_version; dst_el.Signature = src_el.Signature; Progress.Visible = true; Progress.Maximum = dst_el.Lists.Length; for (int i = 0; i < dst_el.Lists.Length; ++i) { ++Progress.Value; if (i != dst_el.ConversationListIndex) { var list = src_el.Lists.Where(x => x.listName == dst_el.Lists[i].listName).ToList(); if (list.Count > 0) { Dictionary <int, int> field_index = new Dictionary <int, int>(); for (int j = 0; j < dst_el.Lists[i].elementFields.Length; ++j) { int src = Array.IndexOf(list.First().elementFields, dst_el.Lists[i].elementFields[j]); field_index.Add(j, src); } dst_el.Lists[i].elementValues = new object[list.First().elementValues.Length][]; dst_el.Lists[i].listOffset = list.First().listOffset; for (int j = 0; j < list.First().elementValues.Length; ++j) { Application.DoEvents(); object[] values = new object[dst_el.Lists[i].elementFields.Length]; for (int k = 0; k < dst_el.Lists[i].elementFields.Length; ++k) { if (field_index.ContainsKey(k) && field_index[k] != -1) { values[k] = list.First().elementValues[j][field_index[k]]; } else { values[k] = GetEmptyValue(dst_el.Lists[i].elementTypes[k]); } } dst_el.Lists[i].elementValues[j] = values; } } else { dst_el.Lists[i].elementValues = new object[0][]; dst_el.Lists[i].listOffset = BitConverter.GetBytes(0); } } else { dst_el.Lists[i] = src_el.Lists[i]; } } Progress.Visible = false; Progress.Value = 0; SaveFileDialog sfd = new SaveFileDialog(); if (sfd.ShowDialog() == DialogResult.OK) { dst_el.Save(sfd.FileName); } }