Data.HotkeysData.CopyData C# (CSharp) Method

CopyData() private method

private CopyData ( System.Xml.Linq.XDocument xml ) : void
xml System.Xml.Linq.XDocument
return void
        private void CopyData(XDocument xml)
        {
            try
            {
                foreach (

                    var copy in xml.Root.Elements("copys").Elements("copy"))
                {
                    bool ctrl, shift, window;

                    bool.TryParse(copy.Element("shift").Value, out shift);
                    bool.TryParse(copy.Element("window").Value, out window);
                    bool.TryParse(copy.Element("ctrl").Value, out ctrl);

                    var header = copy.Element("string").Element("header").Value;
                    var footer = copy.Element("string").Element("footer").Value;
                    var content = copy.Element("string").Element("content").Value;
                    var lowDpsContent = copy.Element("string").Element("low_dps_content")?.Value??content;
                    var lowDpsTreshold = int.Parse(copy.Element("string").Element("low_dps_threshold")?.Value ?? "6");
                    Keys key;
                    var keyValue = copy.Element("key").Value;
                    if (!Enum.TryParse(keyValue, out key))
                    {
                        var message = LP.Unable_to_get_key_from_string+ " " + keyValue + ". "+LP.Your_hotkeys_xml_file_is_invalid;
                        MessageBox.Show(message);
                        continue;
                    }
                    var order = copy.Element("string").Element("order").Value;
                    var orderBy = copy.Element("string").Element("order_by").Value;
                    var modifier = ConvertToModifierKey(ctrl, false, shift, window);
                    Copy.Add(new CopyKey(header, footer, content, modifier, key, orderBy, order, lowDpsContent,lowDpsTreshold));
                }
            }
            catch
            {
                MessageBox.Show(LP.Your_hotkeys_xml_file_is_invalid);
            }
        }