public static Glass_GlassManager_Settings LoadFromXML(string path, bool showDebug = true)
        {
            if (!File.Exists(path))
            {
                if (showDebug)
                {
                    Debug.Log("Glass_GlassManager_Settings: File does not exists:" + path);
                }
                return(null);
            }
            XmlSerializer xmlserialiser = new XmlSerializer(typeof(Glass_GlassManager_Settings));
            FileStream    filestream    = new FileStream(path, FileMode.Open);

            Glass_GlassManager_Settings loadedSettings = null;

            try
            {
                loadedSettings = xmlserialiser.Deserialize(filestream) as Glass_GlassManager_Settings;
            }
            catch (Exception e)
            {
                if (showDebug)
                {
                    Debug.Log("Glass_GlassManager_Settings: Unable to load GlassManager settings from XML '" + path + "': " + e.Message);
                }
                loadedSettings = null;
            }

            filestream.Close();
            return(loadedSettings);
        }
 public Glass_GlassManager_Settings Newest(Glass_GlassManager_Settings left, Glass_GlassManager_Settings right)
 {
     if (left.Newer(right))
     {
         return(left);
     }
     return(right);
 }
        public override bool Equals(object o)
        {
            if (base.Equals(o))
            {
                return(true);
            }

            if (o == null)
            {
                return(this == null);
            }

            Glass_GlassManager_Settings otherSettings = (Glass_GlassManager_Settings)o;

            if (otherSettings.glassPresetName == glassPresetName)
            {
                //  currently matching based on preset name as they should load from the same file
                return(true);
            }

            return(false);
        }
 public bool Newer(Glass_GlassManager_Settings other)
 {
     return(lastEdited > other.lastEdited);
 }