Пример #1
0
 /// <summary>
 /// Sets the default values.
 /// </summary>
 private void SetToDefault()
 {
     MainFormState   = new MainFormState();
     ProjectDir      = ScadaUtils.IsRunningOnWin ? @"C:\SCADA\Projects\" : "/opt/scada/Projects/";
     RecentProjects  = new List <string>();
     RecentSelection = new RecentSelection();
 }
Пример #2
0
 /// <summary>
 /// Sets the default values.
 /// </summary>
 private void SetToDefault()
 {
     MainFormState   = new MainFormState();
     ProjectDir      = AdminUtils.ProjectDir;
     RecentProjects  = new List <string>();
     RecentSelection = new RecentSelection();
 }
Пример #3
0
        /// <summary>
        /// Saves the state to the specified file.
        /// </summary>
        public bool Save(string fileName, out string errMsg)
        {
            try
            {
                XmlDocument    xmlDoc  = new XmlDocument();
                XmlDeclaration xmlDecl = xmlDoc.CreateXmlDeclaration("1.0", "utf-8", null);
                xmlDoc.AppendChild(xmlDecl);

                XmlElement rootElem = xmlDoc.CreateElement("ScadaAdminState");
                xmlDoc.AppendChild(rootElem);

                MainFormState.SaveToXml(rootElem.AppendElem("MainFormState"));
                rootElem.AppendElem("ProjectDir", ProjectDir);

                XmlElement recentProjectsElem = rootElem.AppendElem("RecentProjects");
                foreach (string path in RecentProjects)
                {
                    recentProjectsElem.AppendElem("Path", path);
                }

                xmlDoc.Save(fileName);
                errMsg = "";
                return(true);
            }
            catch (Exception ex)
            {
                errMsg = AppPhrases.SaveAppStateError + ":" + Environment.NewLine + ex.Message;
                return(false);
            }
        }
Пример #4
0
 /// <summary>
 /// Sets the default values.
 /// </summary>
 private void SetToDefault()
 {
     MainFormState = new MainFormState();
     ProjectDir    = Path.Combine(
         Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments),
         AdminUtils.ProjectDir);
     RecentProjects = new List <string>();
 }
Пример #5
0
        /// <summary>
        /// Loads the state from the specified file.
        /// </summary>
        public bool Load(string fileName, out string errMsg)
        {
            try
            {
                SetToDefault();

                if (File.Exists(fileName))
                {
                    XmlDocument xmlDoc = new XmlDocument();
                    xmlDoc.Load(fileName);
                    XmlElement rootElem = xmlDoc.DocumentElement;

                    if (rootElem.SelectSingleNode("MainFormState") is XmlNode mainFormStateNode)
                    {
                        MainFormState.LoadFromXml(mainFormStateNode);
                    }

                    ProjectDir = rootElem.GetChildAsString("ProjectDir");

                    if (rootElem.SelectSingleNode("RecentProjects") is XmlNode recentProjectsNode)
                    {
                        XmlNodeList pathNodeList = recentProjectsNode.SelectNodes("Path");
                        foreach (XmlNode pathNode in pathNodeList)
                        {
                            RecentProjects.Add(pathNode.InnerText);
                        }
                    }
                }

                errMsg = "";
                return(true);
            }
            catch (Exception ex)
            {
                errMsg = AppPhrases.LoadAppStateError + ":" + Environment.NewLine + ex.Message;
                return(false);
            }
        }