src/eric7/Project/PropertiesDialog.py

branch
eric7
changeset 9514
2b104ad132a4
parent 9482
a2bc06a54d9d
child 9549
67295777d9fe
child 9610
b45bccbdf331
equal deleted inserted replaced
9513:6e260b424396 9514:2b104ad132a4
58 self.transPropertiesDlg = None 58 self.transPropertiesDlg = None
59 self.spellPropertiesDlg = None 59 self.spellPropertiesDlg = None
60 self.makePropertiesDlg = None 60 self.makePropertiesDlg = None
61 61
62 patterns = [] 62 patterns = []
63 for pattern, filetype in self.project.pdata["FILETYPES"].items(): 63 for pattern, filetype in self.project.getProjectData(
64 dataKey="FILETYPES"
65 ).items():
64 if filetype == "SOURCES": 66 if filetype == "SOURCES":
65 patterns.append(pattern) 67 patterns.append(pattern)
66 filters = self.tr("Source Files ({0});;All Files (*)").format( 68 filters = self.tr("Source Files ({0});;All Files (*)").format(
67 " ".join(sorted(patterns)) 69 " ".join(sorted(patterns))
68 ) 70 )
88 90
89 if not new: 91 if not new:
90 name = os.path.splitext(self.project.pfile)[0] 92 name = os.path.splitext(self.project.pfile)[0]
91 self.nameEdit.setText(os.path.basename(name)) 93 self.nameEdit.setText(os.path.basename(name))
92 self.languageComboBox.setCurrentIndex( 94 self.languageComboBox.setCurrentIndex(
93 self.languageComboBox.findText(self.project.pdata["PROGLANGUAGE"]) 95 self.languageComboBox.findText(
94 ) 96 self.project.getProjectData(dataKey="PROGLANGUAGE")
95 self.mixedLanguageCheckBox.setChecked(self.project.pdata["MIXEDLANGUAGE"]) 97 )
98 )
99 self.mixedLanguageCheckBox.setChecked(
100 self.project.getProjectData(dataKey="MIXEDLANGUAGE")
101 )
96 curIndex = self.projectTypeComboBox.findData( 102 curIndex = self.projectTypeComboBox.findData(
97 self.project.pdata["PROJECTTYPE"] 103 self.project.getProjectData(dataKey="PROJECTTYPE")
98 ) 104 )
99 if curIndex == -1: 105 if curIndex == -1:
100 curIndex = self.projectTypeComboBox.findData("PyQt6") 106 curIndex = self.projectTypeComboBox.findData("PyQt6")
101 self.projectTypeComboBox.setCurrentIndex(curIndex) 107 self.projectTypeComboBox.setCurrentIndex(curIndex)
102 self.dirPicker.setText(self.project.ppath) 108 self.dirPicker.setText(self.project.ppath)
103 self.versionEdit.setText(self.project.pdata["VERSION"]) 109 self.versionEdit.setText(self.project.getProjectData(dataKey="VERSION"))
104 self.mainscriptPicker.setText(self.project.pdata["MAINSCRIPT"]) 110 self.mainscriptPicker.setText(
105 self.authorEdit.setText(self.project.pdata["AUTHOR"]) 111 self.project.getProjectData(dataKey="MAINSCRIPT")
106 self.emailEdit.setText(self.project.pdata["EMAIL"]) 112 )
107 self.descriptionEdit.setPlainText(self.project.pdata["DESCRIPTION"]) 113 self.authorEdit.setText(self.project.getProjectData(dataKey="AUTHOR"))
108 self.eolComboBox.setCurrentIndex(self.project.pdata["EOL"]) 114 self.emailEdit.setText(self.project.getProjectData(dataKey="EMAIL"))
115 self.descriptionEdit.setPlainText(
116 self.project.getProjectData(dataKey="DESCRIPTION")
117 )
118 self.eolComboBox.setCurrentIndex(self.project.getProjectData(dataKey="EOL"))
109 self.vcsLabel.show() 119 self.vcsLabel.show()
110 if self.project.vcs is not None: 120 if self.project.vcs is not None:
111 vcsSystemsDict = ( 121 vcsSystemsDict = (
112 ericApp() 122 ericApp()
113 .getObject("PluginManager") 123 .getObject("PluginManager")
114 .getPluginDisplayStrings("version_control") 124 .getPluginDisplayStrings("version_control")
115 ) 125 )
116 try: 126 try:
117 vcsSystemDisplay = vcsSystemsDict[self.project.pdata["VCS"]] 127 vcsSystemDisplay = vcsSystemsDict[
128 self.project.getProjectData(dataKey="VCS")
129 ]
118 except KeyError: 130 except KeyError:
119 vcsSystemDisplay = "None" 131 vcsSystemDisplay = "None"
120 self.vcsLabel.setText( 132 self.vcsLabel.setText(
121 self.tr("The project is version controlled by <b>{0}</b>.").format( 133 self.tr("The project is version controlled by <b>{0}</b>.").format(
122 vcsSystemDisplay 134 vcsSystemDisplay
126 else: 138 else:
127 self.vcsLabel.setText(self.tr("The project is not version controlled.")) 139 self.vcsLabel.setText(self.tr("The project is not version controlled."))
128 self.vcsInfoButton.hide() 140 self.vcsInfoButton.hide()
129 self.vcsCheckBox.hide() 141 self.vcsCheckBox.hide()
130 self.makeCheckBox.setChecked( 142 self.makeCheckBox.setChecked(
131 self.project.pdata["MAKEPARAMS"]["MakeEnabled"] 143 self.project.getProjectData(dataKey="MAKEPARAMS")["MakeEnabled"]
132 ) 144 )
133 cindex = self.docstringStyleComboBox.findData( 145 cindex = self.docstringStyleComboBox.findData(
134 self.project.pdata["DOCSTRING"] 146 self.project.getProjectData(dataKey="DOCSTRING")
135 ) 147 )
136 self.docstringStyleComboBox.setCurrentIndex(cindex) 148 self.docstringStyleComboBox.setCurrentIndex(cindex)
137 with contextlib.suppress(KeyError): 149 with contextlib.suppress(KeyError):
138 cindex = self.testingFrameworkComboBox.findData( 150 cindex = self.testingFrameworkComboBox.findData(
139 self.project.pdata["TESTING_FRAMEWORK"] 151 self.project.getProjectData(dataKey="TESTING_FRAMEWORK")
140 ) 152 )
141 self.testingFrameworkComboBox.setCurrentIndex(cindex) 153 self.testingFrameworkComboBox.setCurrentIndex(cindex)
142 with contextlib.suppress(KeyError): 154 with contextlib.suppress(KeyError):
143 self.licenseComboBox.setCurrentText(self.project.pdata["LICENSE"]) 155 self.licenseComboBox.setCurrentText(
144 self.embeddedVenvCheckBox.setChecked(self.project.pdata["EMBEDDED_VENV"]) 156 self.project.getProjectData(dataKey="LICENSE")
157 )
158 self.embeddedVenvCheckBox.setChecked(
159 self.project.getProjectData(dataKey="EMBEDDED_VENV")
160 )
145 else: 161 else:
146 self.languageComboBox.setCurrentText("Python3") 162 self.languageComboBox.setCurrentText("Python3")
147 self.projectTypeComboBox.setCurrentIndex( 163 self.projectTypeComboBox.setCurrentIndex(
148 self.projectTypeComboBox.findData("PyQt6") 164 self.projectTypeComboBox.findData("PyQt6")
149 ) 165 )
328 self.project.name = fn 344 self.project.name = fn
329 fn = "{0}.epj".format(fn) 345 fn = "{0}.epj".format(fn)
330 self.project.pfile = os.path.join(self.project.ppath, fn) 346 self.project.pfile = os.path.join(self.project.ppath, fn)
331 else: 347 else:
332 self.project.pfile = "" 348 self.project.pfile = ""
333 self.project.pdata["VERSION"] = self.versionEdit.text() 349 self.project.setProjectData(self.versionEdit.text(), dataKey="VERSION")
334 fn = self.mainscriptPicker.text() 350 fn = self.mainscriptPicker.text()
335 if fn: 351 if fn:
336 fn = self.project.getRelativePath(fn) 352 fn = self.project.getRelativePath(fn)
337 self.project.pdata["MAINSCRIPT"] = fn 353 self.project.setProjectData(fn, dataKey="MAINSCRIPT")
338 self.project.translationsRoot = os.path.splitext(fn)[0] 354 self.project.translationsRoot = os.path.splitext(fn)[0]
339 else: 355 else:
340 self.project.pdata["MAINSCRIPT"] = "" 356 self.project.setProjectData("", dataKey="MAINSCRIPT")
341 self.project.translationsRoot = "" 357 self.project.translationsRoot = ""
342 self.project.pdata["AUTHOR"] = self.authorEdit.text() 358 self.project.setProjectData(self.authorEdit.text(), dataKey="AUTHOR")
343 self.project.pdata["EMAIL"] = self.emailEdit.text() 359 self.project.setProjectData(self.emailEdit.text(), dataKey="EMAIL")
344 self.project.pdata["DESCRIPTION"] = self.descriptionEdit.toPlainText() 360 self.project.setProjectData(
345 self.project.pdata["PROGLANGUAGE"] = self.languageComboBox.currentText() 361 self.descriptionEdit.toPlainText(), dataKey="DESCRIPTION"
346 self.project.pdata["MIXEDLANGUAGE"] = self.mixedLanguageCheckBox.isChecked() 362 )
363 self.project.setProjectData(
364 self.languageComboBox.currentText(), dataKey="PROGLANGUAGE"
365 )
366 self.project.setProjectData(
367 self.mixedLanguageCheckBox.isChecked(), dataKey="MIXEDLANGUAGE"
368 )
347 projectType = self.getProjectType() 369 projectType = self.getProjectType()
348 if projectType is not None: 370 if projectType is not None:
349 self.project.pdata["PROJECTTYPE"] = projectType 371 self.project.setProjectData(projectType, dataKey="PROJECTTYPE")
350 self.project.pdata["EOL"] = self.eolComboBox.currentIndex() 372 self.project.setProjectData(self.eolComboBox.currentIndex(), dataKey="EOL")
351 373
352 self.project.vcsRequested = self.vcsCheckBox.isChecked() 374 self.project.vcsRequested = self.vcsCheckBox.isChecked()
353 375
354 if self.spellPropertiesDlg is not None: 376 if self.spellPropertiesDlg is not None:
355 self.spellPropertiesDlg.storeData() 377 self.spellPropertiesDlg.storeData()
356 378
357 if self.transPropertiesDlg is not None: 379 if self.transPropertiesDlg is not None:
358 self.transPropertiesDlg.storeData() 380 self.transPropertiesDlg.storeData()
359 381
360 self.project.pdata["MAKEPARAMS"]["MakeEnabled"] = self.makeCheckBox.isChecked() 382 makeParams = self.project.getProjectData(dataKey="MAKEPARAMS")
383 makeParams["MakeEnabled"] = self.makeCheckBox.isChecked()
384 self.project.setProjectData(makeParams, dataKey="MAKEPARAMS")
361 if self.makePropertiesDlg is not None: 385 if self.makePropertiesDlg is not None:
362 self.makePropertiesDlg.storeData() 386 self.makePropertiesDlg.storeData()
363 387
364 self.project.pdata["DOCSTRING"] = self.docstringStyleComboBox.currentData() 388 self.project.setProjectData(
365 389 self.docstringStyleComboBox.currentData(), dataKey="DOCSTRING"
366 self.project.pdata[ 390 )
367 "TESTING_FRAMEWORK" 391
368 ] = self.testingFrameworkComboBox.currentData() 392 self.project.setProjectData(
369 393 self.testingFrameworkComboBox.currentData(), dataKey="TESTING_FRAMEWORK"
370 self.project.pdata["LICENSE"] = self.licenseComboBox.currentText() 394 )
371 395
372 self.project.pdata["EMBEDDED_VENV"] = self.embeddedVenvCheckBox.isChecked() 396 self.project.setProjectData(
397 self.licenseComboBox.currentText(), dataKey="LICENSE"
398 )
399
400 self.project.setProjectData(
401 self.embeddedVenvCheckBox.isChecked(), dataKey="EMBEDDED_VENV"
402 )

eric ide

mercurial