src/eric7/EricXML/MultiProjectReader.py

branch
eric7
changeset 10410
da82156f44e9
parent 9653
e67609152c5e
child 10423
299802979277
--- a/src/eric7/EricXML/MultiProjectReader.py	Fri Dec 15 14:07:43 2023 +0100
+++ b/src/eric7/EricXML/MultiProjectReader.py	Fri Dec 15 15:28:54 2023 +0100
@@ -11,6 +11,7 @@
 
 from PyQt6.QtCore import QUuid
 
+from eric7.MultiProject.MultiProjectProjectMeta import MultiProjectProjectMeta
 from eric7.SystemUtilities import FileSystemUtilities
 
 from .Config import multiProjectFileFormatVersion
@@ -80,35 +81,31 @@
         """
         Private method to read the project info.
         """
-        project = {}
+        uid = self.attribute("uid", "")
 
-        uid = self.attribute("uid", "")
-        if uid:
-            project["uid"] = uid
-        else:
-            # upgrade from pre 5.1 format
-            project["uid"] = QUuid.createUuid().toString()
-        project["master"] = self.toBool(self.attribute("isMaster", "False"))
+        project = MultiProjectProjectMeta(
+            name="",
+            file="",
+            uid=uid if uid else QUuid.createUuid().toString(),
+            master=self.toBool(self.attribute("isMaster", "False")),
+        )
 
         while not self.atEnd():
             self.readNext()
             if self.isEndElement() and self.name() == "Project":
-                if "category" not in project:
-                    # upgrade from 4.2 format
-                    project["category"] = ""
                 self.multiProject.addProject(project)
                 break
 
             if self.isStartElement():
                 if self.name() == "ProjectName":
-                    project["name"] = self.readElementText()
+                    project.name = self.readElementText()
                 elif self.name() == "ProjectFile":
-                    project["file"] = FileSystemUtilities.absoluteUniversalPath(
+                    project.file = FileSystemUtilities.absoluteUniversalPath(
                         self.readElementText(), self.path
                     )
                 elif self.name() == "ProjectDescription":
-                    project["description"] = self.readElementText()
+                    project.description = self.readElementText()
                 elif self.name() == "ProjectCategory":
-                    project["category"] = self.readElementText()
+                    project.category = self.readElementText()
                 else:
                     self.raiseUnexpectedStartTag(self.name())

eric ide

mercurial