Esempio n. 1
0
 public void SaveCurrent()
 {
     try
     {
         if (Current != null)
         {
             Current.Save();
         }
     }
     catch (SaveProjectException ex)
     {
         ErrorWindow err = new ErrorWindow
         {
             ShortDesc = LocalString.Get("Error_SaveProject_short"),
             FullDesc  = LocalString.Get("Error_SaveProject_full"),
             Exception = ex
         };
         err.ShowDialog();
     }
 }
Esempio n. 2
0
        public void Load(string path)
        {
            try
            {
                // Закрыть предыдущий
                if (Current != null)
                {
                    CloseCurrent();
                }

                // Открыть новый
                Current = CodeProject.Load(path);

                // Поставить фокус на проджект эксплорер
                //_mainWindowView.ActivateProjectExplorer();

                Logger.LogWithBinding("Status_ProjectOpened");
            }
            catch (ParsingProjectException ex)
            {
                ErrorWindow err = new ErrorWindow
                {
                    ShortDesc = LocalString.Get("Error_OpenProject_short"),
                    FullDesc  = LocalString.Get("Error_OpenProject_full"),
                    Exception = ex
                };
                err.ShowDialog();
            }
            catch (FileNotFoundException ex)
            {
                ErrorWindow err = new ErrorWindow
                {
                    ShortDesc = LocalString.Get("Error_OpenProject_short"),
                    FullDesc  = LocalString.Get("Error_OpenProject_full"),
                    Exception = ex
                };
                err.ShowDialog();
            }
        }
Esempio n. 3
0
        public void CloseCurrent()
        {
            try
            {
                if (Current != null)
                {
                    Current.Close();
                    Current = null;

                    Logger.LogWithBinding("Status_ProjectClosed");
                }
            }
            catch (SaveProjectException ex)
            {
                ErrorWindow err = new ErrorWindow
                {
                    ShortDesc = LocalString.Get("Error_CloseProject_short"),
                    FullDesc  = LocalString.Get("Error_CloseProject_full"),
                    Exception = ex
                };
                err.ShowDialog();
            }
        }
Esempio n. 4
0
        private void LoadXML()
        {
            try
            {
                using (var xml_reader = new XmlTextReader(Path))
                    using (var reader = new XmlValidatingReader(xml_reader))
                    {
                        int fileErrorsCounter = 0;

                        XmlSchema schema = XmlSchema.Read(new StringReader(Resources.ResourceManager.GetString("ProjectSchema")), null);
                        reader.Schemas.Add(schema);

                        while (reader.Read())
                        {
                            if (reader.NodeType == XmlNodeType.Element && reader.Name == "Project")
                            {
                                //project.Name = reader.GetAttribute("Name");
                                //project.DefaultCodeFileExtension = reader.GetAttribute("DefaultCodeFileExtension");
                                NextDefaultFileNumber = Convert.ToInt32(reader.GetAttribute("NextDefaultFileNumber"));
                            }
                            // Files
                            else if (reader.NodeType == XmlNodeType.Element && reader.Name == "Files")
                            {
                            }
                            else if (reader.NodeType == XmlNodeType.Element && reader.Name == "File")
                            {
                                try
                                {
                                    CodeFile file = new CodeFile(reader.GetAttribute("Path"), false);
                                    AddFile(file, false);
                                }
                                catch (LoadCodeFileException ex)
                                {
                                    fileErrorsCounter++;

                                    ErrorWindow err = new ErrorWindow
                                    {
                                        ShortDesc = LocalString.Get("Error_LoadFileInProject_short") + " '" + System.IO.Path.GetFileName(ex.FileName) + "'.",
                                        FullDesc  = LocalString.Get("Error_LoadFileInProject_full"),
                                        Exception = ex
                                    };
                                    err.ShowDialog();
                                }
                            }
                            // WorkDirs
                            else if (reader.NodeType == XmlNodeType.Element && reader.Name == "WorkDirs")
                            {
                            }
                            if (reader.NodeType == XmlNodeType.Element && reader.Name == "WorkDir")
                            {
                                WorkDirs.Add(reader.GetAttribute("Path"));
                            }
                        }

                        if (fileErrorsCounter > 0)
                        {
                        }
                    }
            }
            catch (IOException ex)                  { throw new ParsingProjectException(Path, ex); }
            catch (XmlException ex)                 { throw new ParsingProjectException(Path, ex); }
            catch (XmlSchemaException ex)           { throw new ParsingProjectException(Path, ex); }
            catch (UnauthorizedAccessException ex)  { throw new ParsingProjectException(Path, ex); }
        }