Exemplo n.º 1
0
        public bool Load()
        {
            if (!File.ExistsNow())
            {
                RefreshUserPresets();
                return(false);
            }

            var xml = Persistent.LoadXml(File);

            if (xml == null)
            {
                RimHUD.Mod.Error($"Unable to load preset '{Label}'");
                return(false);
            }

            var docked   = xml.Element(HudLayout.DockedElementName);
            var floating = xml.Element(HudLayout.FloatingElementName);

            if (docked != null)
            {
                HudLayout.Docked = HudLayout.FromXml(docked);
            }
            if (floating != null)
            {
                HudLayout.Floating = HudLayout.FromXml(floating);
            }

            Persistent.Save();

            return(true);
        }
Exemplo n.º 2
0
        public static void LoadLayouts(bool reset)
        {
            var docked   = new FileInfo(Path.Combine(Mod.ConfigDirectory.FullName, HudLayout.DockedFileName));
            var floating = new FileInfo(Path.Combine(Mod.ConfigDirectory.FullName, HudLayout.FloatingFileName));

            if (!reset && docked.Exists && LoadXml(docked) is XElement dockedXe)
            {
                HudLayout.Docked = HudLayout.FromXml(dockedXe);
            }
            else
            {
                HudLayout.Docked.ToXml().Save(docked.FullName);
            }

            if (!reset && floating.Exists && LoadXml(floating) is XElement floatingXe)
            {
                HudLayout.Floating = HudLayout.FromXml(floatingXe);
            }
            else
            {
                HudLayout.Floating.ToXml().Save(floating.FullName);
            }
        }
Exemplo n.º 3
0
        private static void LoadLayouts()
        {
            var docked   = new FileInfo(Path.Combine(Mod.ConfigDirectory.FullName, HudLayout.DockedFileName));
            var floating = new FileInfo(Path.Combine(Mod.ConfigDirectory.FullName, HudLayout.FloatingFileName));

            if (docked.Exists)
            {
                HudLayout.Docked = HudLayout.FromXml(XDocument.Load(docked.FullName));
            }
            else
            {
                HudLayout.Docked.AsXDocument().Save(docked.FullName);
            }

            if (floating.Exists)
            {
                HudLayout.Floating = HudLayout.FromXml(XDocument.Load(floating.FullName));
            }
            else
            {
                HudLayout.Floating.AsXDocument().Save(floating.FullName);
            }
        }