diff -r 6e260b424396 -r 2b104ad132a4 src/eric7/Project/ProjectFile.py --- a/src/eric7/Project/ProjectFile.py Wed Nov 16 10:10:06 2022 +0100 +++ b/src/eric7/Project/ProjectFile.py Wed Nov 16 10:53:40 2022 +0100 @@ -8,7 +8,8 @@ """ import contextlib -import copy + +##import copy import json import time import typing @@ -55,8 +56,8 @@ ), "copyright": "Copyright (C) {0} {1}, {2}".format( time.strftime("%Y"), - self.__project.pdata["AUTHOR"], - self.__project.pdata["EMAIL"], + self.__project.getProjectData(dataKey="AUTHOR"), + self.__project.getProjectData(dataKey="EMAIL"), ), } } @@ -64,19 +65,20 @@ if Preferences.getProject("TimestampFile"): projectDict["header"]["saved"] = time.strftime("%Y-%m-%d, %H:%M:%S") - projectDict["project"] = copy.deepcopy(self.__project.pdata) + projectDict["project"] = self.__project.getProjectData() # modify paths to contain universal separators - for key in ( - "SOURCES", - "FORMS", - "TRANSLATIONS", - "TRANSLATIONEXCEPTIONS", - "RESOURCES", - "INTERFACES", - "PROTOCOLS", - "OTHERS", - ): + for key in self.__project.getFileCategories() + ["TRANSLATIONEXCEPTIONS"]: + ##for key in ( + ##"SOURCES", + ##"FORMS", + ##"TRANSLATIONS", + ##"TRANSLATIONEXCEPTIONS", + ##"RESOURCES", + ##"INTERFACES", + ##"PROTOCOLS", + ##"OTHERS", + ##): with contextlib.suppress(KeyError): projectDict["project"][key] = sorted( [ @@ -140,16 +142,17 @@ return False # modify paths to contain native separators - for key in ( - "SOURCES", - "FORMS", - "TRANSLATIONS", - "TRANSLATIONEXCEPTIONS", - "RESOURCES", - "INTERFACES", - "PROTOCOLS", - "OTHERS", - ): + for key in self.__project.getFileCategories() + ["TRANSLATIONEXCEPTIONS"]: + ##( + ##"SOURCES", + ##"FORMS", + ##"TRANSLATIONS", + ##"TRANSLATIONEXCEPTIONS", + ##"RESOURCES", + ##"INTERFACES", + ##"PROTOCOLS", + ##"OTHERS", + ##): with contextlib.suppress(KeyError): projectDict["project"][key] = [ Utilities.toNativeSeparators(f) for f in projectDict["project"][key] @@ -167,6 +170,6 @@ projectDict["project"][key] ) - self.__project.pdata.update(projectDict["project"]) + self.__project.setProjectData(projectDict["project"]) return True