src/eric7/Project/PropertiesDialog.py

branch
eric7
changeset 9514
2b104ad132a4
parent 9482
a2bc06a54d9d
child 9549
67295777d9fe
child 9610
b45bccbdf331
diff -r 6e260b424396 -r 2b104ad132a4 src/eric7/Project/PropertiesDialog.py
--- a/src/eric7/Project/PropertiesDialog.py	Wed Nov 16 10:10:06 2022 +0100
+++ b/src/eric7/Project/PropertiesDialog.py	Wed Nov 16 10:53:40 2022 +0100
@@ -60,7 +60,9 @@
         self.makePropertiesDlg = None
 
         patterns = []
-        for pattern, filetype in self.project.pdata["FILETYPES"].items():
+        for pattern, filetype in self.project.getProjectData(
+            dataKey="FILETYPES"
+        ).items():
             if filetype == "SOURCES":
                 patterns.append(pattern)
         filters = self.tr("Source Files ({0});;All Files (*)").format(
@@ -90,22 +92,30 @@
             name = os.path.splitext(self.project.pfile)[0]
             self.nameEdit.setText(os.path.basename(name))
             self.languageComboBox.setCurrentIndex(
-                self.languageComboBox.findText(self.project.pdata["PROGLANGUAGE"])
+                self.languageComboBox.findText(
+                    self.project.getProjectData(dataKey="PROGLANGUAGE")
+                )
             )
-            self.mixedLanguageCheckBox.setChecked(self.project.pdata["MIXEDLANGUAGE"])
+            self.mixedLanguageCheckBox.setChecked(
+                self.project.getProjectData(dataKey="MIXEDLANGUAGE")
+            )
             curIndex = self.projectTypeComboBox.findData(
-                self.project.pdata["PROJECTTYPE"]
+                self.project.getProjectData(dataKey="PROJECTTYPE")
             )
             if curIndex == -1:
                 curIndex = self.projectTypeComboBox.findData("PyQt6")
             self.projectTypeComboBox.setCurrentIndex(curIndex)
             self.dirPicker.setText(self.project.ppath)
-            self.versionEdit.setText(self.project.pdata["VERSION"])
-            self.mainscriptPicker.setText(self.project.pdata["MAINSCRIPT"])
-            self.authorEdit.setText(self.project.pdata["AUTHOR"])
-            self.emailEdit.setText(self.project.pdata["EMAIL"])
-            self.descriptionEdit.setPlainText(self.project.pdata["DESCRIPTION"])
-            self.eolComboBox.setCurrentIndex(self.project.pdata["EOL"])
+            self.versionEdit.setText(self.project.getProjectData(dataKey="VERSION"))
+            self.mainscriptPicker.setText(
+                self.project.getProjectData(dataKey="MAINSCRIPT")
+            )
+            self.authorEdit.setText(self.project.getProjectData(dataKey="AUTHOR"))
+            self.emailEdit.setText(self.project.getProjectData(dataKey="EMAIL"))
+            self.descriptionEdit.setPlainText(
+                self.project.getProjectData(dataKey="DESCRIPTION")
+            )
+            self.eolComboBox.setCurrentIndex(self.project.getProjectData(dataKey="EOL"))
             self.vcsLabel.show()
             if self.project.vcs is not None:
                 vcsSystemsDict = (
@@ -114,7 +124,9 @@
                     .getPluginDisplayStrings("version_control")
                 )
                 try:
-                    vcsSystemDisplay = vcsSystemsDict[self.project.pdata["VCS"]]
+                    vcsSystemDisplay = vcsSystemsDict[
+                        self.project.getProjectData(dataKey="VCS")
+                    ]
                 except KeyError:
                     vcsSystemDisplay = "None"
                 self.vcsLabel.setText(
@@ -128,20 +140,24 @@
                 self.vcsInfoButton.hide()
             self.vcsCheckBox.hide()
             self.makeCheckBox.setChecked(
-                self.project.pdata["MAKEPARAMS"]["MakeEnabled"]
+                self.project.getProjectData(dataKey="MAKEPARAMS")["MakeEnabled"]
             )
             cindex = self.docstringStyleComboBox.findData(
-                self.project.pdata["DOCSTRING"]
+                self.project.getProjectData(dataKey="DOCSTRING")
             )
             self.docstringStyleComboBox.setCurrentIndex(cindex)
             with contextlib.suppress(KeyError):
                 cindex = self.testingFrameworkComboBox.findData(
-                    self.project.pdata["TESTING_FRAMEWORK"]
+                    self.project.getProjectData(dataKey="TESTING_FRAMEWORK")
                 )
                 self.testingFrameworkComboBox.setCurrentIndex(cindex)
             with contextlib.suppress(KeyError):
-                self.licenseComboBox.setCurrentText(self.project.pdata["LICENSE"])
-            self.embeddedVenvCheckBox.setChecked(self.project.pdata["EMBEDDED_VENV"])
+                self.licenseComboBox.setCurrentText(
+                    self.project.getProjectData(dataKey="LICENSE")
+                )
+            self.embeddedVenvCheckBox.setChecked(
+                self.project.getProjectData(dataKey="EMBEDDED_VENV")
+            )
         else:
             self.languageComboBox.setCurrentText("Python3")
             self.projectTypeComboBox.setCurrentIndex(
@@ -330,24 +346,30 @@
             self.project.pfile = os.path.join(self.project.ppath, fn)
         else:
             self.project.pfile = ""
-        self.project.pdata["VERSION"] = self.versionEdit.text()
+        self.project.setProjectData(self.versionEdit.text(), dataKey="VERSION")
         fn = self.mainscriptPicker.text()
         if fn:
             fn = self.project.getRelativePath(fn)
-            self.project.pdata["MAINSCRIPT"] = fn
+            self.project.setProjectData(fn, dataKey="MAINSCRIPT")
             self.project.translationsRoot = os.path.splitext(fn)[0]
         else:
-            self.project.pdata["MAINSCRIPT"] = ""
+            self.project.setProjectData("", dataKey="MAINSCRIPT")
             self.project.translationsRoot = ""
-        self.project.pdata["AUTHOR"] = self.authorEdit.text()
-        self.project.pdata["EMAIL"] = self.emailEdit.text()
-        self.project.pdata["DESCRIPTION"] = self.descriptionEdit.toPlainText()
-        self.project.pdata["PROGLANGUAGE"] = self.languageComboBox.currentText()
-        self.project.pdata["MIXEDLANGUAGE"] = self.mixedLanguageCheckBox.isChecked()
+        self.project.setProjectData(self.authorEdit.text(), dataKey="AUTHOR")
+        self.project.setProjectData(self.emailEdit.text(), dataKey="EMAIL")
+        self.project.setProjectData(
+            self.descriptionEdit.toPlainText(), dataKey="DESCRIPTION"
+        )
+        self.project.setProjectData(
+            self.languageComboBox.currentText(), dataKey="PROGLANGUAGE"
+        )
+        self.project.setProjectData(
+            self.mixedLanguageCheckBox.isChecked(), dataKey="MIXEDLANGUAGE"
+        )
         projectType = self.getProjectType()
         if projectType is not None:
-            self.project.pdata["PROJECTTYPE"] = projectType
-        self.project.pdata["EOL"] = self.eolComboBox.currentIndex()
+            self.project.setProjectData(projectType, dataKey="PROJECTTYPE")
+        self.project.setProjectData(self.eolComboBox.currentIndex(), dataKey="EOL")
 
         self.project.vcsRequested = self.vcsCheckBox.isChecked()
 
@@ -357,16 +379,24 @@
         if self.transPropertiesDlg is not None:
             self.transPropertiesDlg.storeData()
 
-        self.project.pdata["MAKEPARAMS"]["MakeEnabled"] = self.makeCheckBox.isChecked()
+        makeParams = self.project.getProjectData(dataKey="MAKEPARAMS")
+        makeParams["MakeEnabled"] = self.makeCheckBox.isChecked()
+        self.project.setProjectData(makeParams, dataKey="MAKEPARAMS")
         if self.makePropertiesDlg is not None:
             self.makePropertiesDlg.storeData()
 
-        self.project.pdata["DOCSTRING"] = self.docstringStyleComboBox.currentData()
+        self.project.setProjectData(
+            self.docstringStyleComboBox.currentData(), dataKey="DOCSTRING"
+        )
+
+        self.project.setProjectData(
+            self.testingFrameworkComboBox.currentData(), dataKey="TESTING_FRAMEWORK"
+        )
 
-        self.project.pdata[
-            "TESTING_FRAMEWORK"
-        ] = self.testingFrameworkComboBox.currentData()
+        self.project.setProjectData(
+            self.licenseComboBox.currentText(), dataKey="LICENSE"
+        )
 
-        self.project.pdata["LICENSE"] = self.licenseComboBox.currentText()
-
-        self.project.pdata["EMBEDDED_VENV"] = self.embeddedVenvCheckBox.isChecked()
+        self.project.setProjectData(
+            self.embeddedVenvCheckBox.isChecked(), dataKey="EMBEDDED_VENV"
+        )

eric ide

mercurial