Exemple #1
0
        private static void SaveUsableFromList <T>(XContainer xRoot, string elementName, UsableFromList <T> item)
            where T : struct, IConvertible
        {
            if (!item.Use)
            {
                return;
            }

            var xElement = new XElement(elementName);

            xRoot.Add(xElement);

            xElement.Add(new XElement(UseNode, item.Use));
            xElement.Add(new XElement(SelectedNode, item.Selected));
        }
Exemple #2
0
        private static void LoadUsableFromList <T>(XContainer xParent, string entryName, UsableFromList <T> item) where T : struct, IConvertible
        {
            var xFoundElement = xParent.Element(entryName);

            if (xFoundElement == null)
            {
                return;
            }

            if (!LoadBoolean(xFoundElement, UseNode, b => item.Use = b))
            {
                return;
            }

            if (!Load(xFoundElement, SelectedNode, out T result))
            {
                return;
            }

            item.Selected = result;
        }