Ejemplo n.º 1
0
 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!");
         }
     }
 }
Ejemplo n.º 2
0
        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";
        }
Ejemplo n.º 3
0
        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);
            }
        }