Sun, 18 Dec 2022 19:33:46 +0100
Refactored the Utilities and Globals modules in order to enhance the maintainability.
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1 | # -*- coding: utf-8 -*- |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2 | |
8881
54e42bc2437a
Updated copyright for 2022.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8459
diff
changeset
|
3 | # Copyright (c) 2002 - 2022 Detlev Offenbach <detlev@die-offenbachs.de> |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
4 | # |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
5 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
6 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
7 | Module implementing the project properties dialog. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
8 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
9 | |
9065
39405e6eba20
Integrated the new testing widget into the eric IDE (compared to as a standalone app) and implemented the 'Show Source' functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
10 | import contextlib |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
11 | import os |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
12 | |
9175
21e2be5f0b41
Changed code to use the 'trove-classifiers' package instead of a local text file copy or a download from PyPI.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9141
diff
changeset
|
13 | import trove_classifiers |
21e2be5f0b41
Changed code to use the 'trove-classifiers' package instead of a local text file copy or a download from PyPI.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9141
diff
changeset
|
14 | |
8318
962bce857696
Replaced all imports of PyQt5 to PyQt6 and started to replace code using obsoleted methods and adapt to the PyQt6 enum usage.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8312
diff
changeset
|
15 | from PyQt6.QtCore import QDir, pyqtSlot |
962bce857696
Replaced all imports of PyQt5 to PyQt6 and started to replace code using obsoleted methods and adapt to the PyQt6 enum usage.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8312
diff
changeset
|
16 | from PyQt6.QtWidgets import QDialog, QDialogButtonBox |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
17 | |
9624
b47dfa7a137d
Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9610
diff
changeset
|
18 | from eric7 import Preferences |
9473
3f23dbf37dbe
Resorted the import statements using isort.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9413
diff
changeset
|
19 | from eric7.EricGui import EricPixmapCache |
9413
80c06d472826
Changed the eric7 import statements to include the package name (i.e. eric7) in order to not fiddle with sys.path.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9323
diff
changeset
|
20 | from eric7.EricWidgets.EricApplication import ericApp |
80c06d472826
Changed the eric7 import statements to include the package name (i.e. eric7) in order to not fiddle with sys.path.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9323
diff
changeset
|
21 | from eric7.EricWidgets.EricPathPicker import EricPathPickerModes |
9473
3f23dbf37dbe
Resorted the import statements using isort.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9413
diff
changeset
|
22 | from eric7.QScintilla.DocstringGenerator import getSupportedDocstringTypes |
9624
b47dfa7a137d
Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9610
diff
changeset
|
23 | from eric7.SystemUtilities import FileSystemUtilities, OSUtilities |
9473
3f23dbf37dbe
Resorted the import statements using isort.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9413
diff
changeset
|
24 | from eric7.Testing.Interfaces import FrameworkNames |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
25 | |
12
1d8dd9706f46
First commit after changing to Python 3.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7
diff
changeset
|
26 | from .Ui_PropertiesDialog import Ui_PropertiesDialog |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
27 | |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
882
diff
changeset
|
28 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
29 | class PropertiesDialog(QDialog, Ui_PropertiesDialog): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
30 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
31 | Class implementing the project properties dialog. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
32 | """ |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
33 | |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
882
diff
changeset
|
34 | def __init__(self, project, new=True, parent=None, name=None): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
35 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
36 | Constructor |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
37 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
38 | @param project reference to the project object |
9610 | 39 | @type Project |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
40 | @param new flag indicating the generation of a new project |
9610 | 41 | (defaults to True) |
42 | @type bool (optional) | |
43 | @param parent parent widget of this dialog (defaults to None) | |
44 | @type QWidget (optional) | |
45 | @param name name of this dialog (defaults to None) | |
46 | @type str (optional) | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
47 | """ |
8218
7c09585bd960
Applied some more code simplifications suggested by the new Simplify checker (super(Foo, self) => super()).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8143
diff
changeset
|
48 | super().__init__(parent) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
49 | if name: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
50 | self.setObjectName(name) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
51 | self.setupUi(self) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
52 | |
8356
68ec9c3d4de5
Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8327
diff
changeset
|
53 | self.dirPicker.setMode(EricPathPickerModes.DIRECTORY_MODE) |
68ec9c3d4de5
Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8327
diff
changeset
|
54 | self.mainscriptPicker.setMode(EricPathPickerModes.OPEN_FILE_MODE) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
55 | |
9413
80c06d472826
Changed the eric7 import statements to include the package name (i.e. eric7) in order to not fiddle with sys.path.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9323
diff
changeset
|
56 | self.makeButton.setIcon(EricPixmapCache.getIcon("makefile")) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
57 | |
7998 | 58 | self.docstringStyleComboBox.addItem(self.tr("None"), "") |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
59 | for docstringType, docstringStyle in sorted(getSupportedDocstringTypes()): |
7998 | 60 | self.docstringStyleComboBox.addItem(docstringStyle, docstringType) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
61 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
62 | self.project = project |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
63 | self.newProject = new |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
64 | self.transPropertiesDlg = None |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
65 | self.spellPropertiesDlg = None |
6243
528fbf120d68
Project.PropertiesDialog: extended the dialog to add 'make' support
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6048
diff
changeset
|
66 | self.makePropertiesDlg = None |
9610 | 67 | self.__fileTypesDict = {} |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
68 | |
4582
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
69 | patterns = [] |
9514
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
70 | for pattern, filetype in self.project.getProjectData( |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
71 | dataKey="FILETYPES" |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
72 | ).items(): |
4582
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
73 | if filetype == "SOURCES": |
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
74 | patterns.append(pattern) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
75 | filters = self.tr("Source Files ({0});;All Files (*)").format( |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
76 | " ".join(sorted(patterns)) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
77 | ) |
4582
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
78 | self.mainscriptPicker.setFilters(filters) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
79 | |
2040
4cefd094353b
Made the selectable project types of the project properties dialog dependent upon the selected programming language.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1940
diff
changeset
|
80 | self.languageComboBox.addItems(project.getProgrammingLanguages()) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
81 | |
6292
e08a94e1ecdd
PySide2 support: cintinued implementing support for PySide2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6248
diff
changeset
|
82 | projectTypes = [] |
e08a94e1ecdd
PySide2 support: cintinued implementing support for PySide2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6248
diff
changeset
|
83 | for projectTypeItem in project.getProjectTypes().items(): |
e08a94e1ecdd
PySide2 support: cintinued implementing support for PySide2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6248
diff
changeset
|
84 | projectTypes.append((projectTypeItem[1], projectTypeItem[0])) |
2040
4cefd094353b
Made the selectable project types of the project properties dialog dependent upon the selected programming language.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1940
diff
changeset
|
85 | self.projectTypeComboBox.clear() |
6292
e08a94e1ecdd
PySide2 support: cintinued implementing support for PySide2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6248
diff
changeset
|
86 | for projectType in sorted(projectTypes): |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
87 | self.projectTypeComboBox.addItem(projectType[0], projectType[1]) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
88 | |
9624
b47dfa7a137d
Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9610
diff
changeset
|
89 | ipath = Preferences.getMultiProject("Workspace") or OSUtilities.getHomeDir() |
3334
a75328ebac64
Fixed an issue creating new projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3190
diff
changeset
|
90 | self.__initPaths = [ |
9624
b47dfa7a137d
Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9610
diff
changeset
|
91 | FileSystemUtilities.fromNativeSeparators(ipath), |
b47dfa7a137d
Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9610
diff
changeset
|
92 | FileSystemUtilities.fromNativeSeparators(ipath) + "/", |
3334
a75328ebac64
Fixed an issue creating new projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3190
diff
changeset
|
93 | ] |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
94 | |
9128
62cf3eb8b1f2
Refined the project properties dialog a little bit.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9125
diff
changeset
|
95 | self.licenseComboBox.lineEdit().setClearButtonEnabled(True) |
9125
3d2411181b3c
Added the capability to define the project license in the project properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9108
diff
changeset
|
96 | self.__populateLicenseComboBox() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
97 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
98 | if not new: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
99 | name = os.path.splitext(self.project.pfile)[0] |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
100 | self.nameEdit.setText(os.path.basename(name)) |
564
b3d966393ba9
Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
428
diff
changeset
|
101 | self.languageComboBox.setCurrentIndex( |
9514
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
102 | self.languageComboBox.findText( |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
103 | self.project.getProjectData(dataKey="PROGLANGUAGE") |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
104 | ) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
105 | ) |
9514
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
106 | self.mixedLanguageCheckBox.setChecked( |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
107 | self.project.getProjectData(dataKey="MIXEDLANGUAGE") |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
108 | ) |
2040
4cefd094353b
Made the selectable project types of the project properties dialog dependent upon the selected programming language.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1940
diff
changeset
|
109 | curIndex = self.projectTypeComboBox.findData( |
9514
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
110 | self.project.getProjectData(dataKey="PROJECTTYPE") |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
111 | ) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
112 | if curIndex == -1: |
8459
0ae07748dbe8
Changed quite a few PyQt5 references to PyQt6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8358
diff
changeset
|
113 | curIndex = self.projectTypeComboBox.findData("PyQt6") |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
114 | self.projectTypeComboBox.setCurrentIndex(curIndex) |
4582
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
115 | self.dirPicker.setText(self.project.ppath) |
9514
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
116 | self.versionEdit.setText(self.project.getProjectData(dataKey="VERSION")) |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
117 | self.mainscriptPicker.setText( |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
118 | self.project.getProjectData(dataKey="MAINSCRIPT") |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
119 | ) |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
120 | self.authorEdit.setText(self.project.getProjectData(dataKey="AUTHOR")) |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
121 | self.emailEdit.setText(self.project.getProjectData(dataKey="EMAIL")) |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
122 | self.descriptionEdit.setPlainText( |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
123 | self.project.getProjectData(dataKey="DESCRIPTION") |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
124 | ) |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
125 | self.eolComboBox.setCurrentIndex(self.project.getProjectData(dataKey="EOL")) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
126 | self.vcsLabel.show() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
127 | if self.project.vcs is not None: |
7266
d001bc703c29
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
128 | vcsSystemsDict = ( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
129 | ericApp() |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
130 | .getObject("PluginManager") |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
131 | .getPluginDisplayStrings("version_control") |
7266
d001bc703c29
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
132 | ) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
133 | try: |
9514
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
134 | vcsSystemDisplay = vcsSystemsDict[ |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
135 | self.project.getProjectData(dataKey="VCS") |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
136 | ] |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
137 | except KeyError: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
138 | vcsSystemDisplay = "None" |
564
b3d966393ba9
Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
428
diff
changeset
|
139 | self.vcsLabel.setText( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
140 | self.tr("The project is version controlled by <b>{0}</b>.").format( |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
141 | vcsSystemDisplay |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
142 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
143 | ) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
144 | self.vcsInfoButton.show() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
145 | else: |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
146 | self.vcsLabel.setText(self.tr("The project is not version controlled.")) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
147 | self.vcsInfoButton.hide() |
1875
bbdd75d18412
Did the second step in the enhanced VCS handling.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1874
diff
changeset
|
148 | self.vcsCheckBox.hide() |
6248
9458a3d45f27
Project Make Support: implemented the MakePropertiesDialog class and extended the Project class accordingly.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6243
diff
changeset
|
149 | self.makeCheckBox.setChecked( |
9514
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
150 | self.project.getProjectData(dataKey="MAKEPARAMS")["MakeEnabled"] |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
151 | ) |
7998 | 152 | cindex = self.docstringStyleComboBox.findData( |
9514
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
153 | self.project.getProjectData(dataKey="DOCSTRING") |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
154 | ) |
7998 | 155 | self.docstringStyleComboBox.setCurrentIndex(cindex) |
9065
39405e6eba20
Integrated the new testing widget into the eric IDE (compared to as a standalone app) and implemented the 'Show Source' functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
156 | with contextlib.suppress(KeyError): |
39405e6eba20
Integrated the new testing widget into the eric IDE (compared to as a standalone app) and implemented the 'Show Source' functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
157 | cindex = self.testingFrameworkComboBox.findData( |
9514
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
158 | self.project.getProjectData(dataKey="TESTING_FRAMEWORK") |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
159 | ) |
9065
39405e6eba20
Integrated the new testing widget into the eric IDE (compared to as a standalone app) and implemented the 'Show Source' functionality.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8881
diff
changeset
|
160 | self.testingFrameworkComboBox.setCurrentIndex(cindex) |
9125
3d2411181b3c
Added the capability to define the project license in the project properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9108
diff
changeset
|
161 | with contextlib.suppress(KeyError): |
9514
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
162 | self.licenseComboBox.setCurrentText( |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
163 | self.project.getProjectData(dataKey="LICENSE") |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
164 | ) |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
165 | self.embeddedVenvCheckBox.setChecked( |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
166 | self.project.getProjectData(dataKey="EMBEDDED_VENV") |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
167 | ) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
168 | else: |
9125
3d2411181b3c
Added the capability to define the project license in the project properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9108
diff
changeset
|
169 | self.languageComboBox.setCurrentText("Python3") |
564
b3d966393ba9
Did some code cleanup.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
428
diff
changeset
|
170 | self.projectTypeComboBox.setCurrentIndex( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
171 | self.projectTypeComboBox.findData("PyQt6") |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
172 | ) |
4582
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
173 | self.dirPicker.setText(self.__initPaths[0]) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
174 | self.versionEdit.setText("0.1") |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
175 | self.vcsLabel.hide() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
176 | self.vcsInfoButton.hide() |
1875
bbdd75d18412
Did the second step in the enhanced VCS handling.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1874
diff
changeset
|
177 | if not self.project.vcsSoftwareAvailable(): |
bbdd75d18412
Did the second step in the enhanced VCS handling.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1874
diff
changeset
|
178 | self.vcsCheckBox.hide() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
179 | |
9610 | 180 | self.__origProgrammingLanguage = self.languageComboBox.currentText() |
181 | self.__origMixedFlag = self.mixedLanguageCheckBox.isChecked() | |
182 | self.__origProjectType = self.getProjectType() | |
183 | ||
184 | self.languageComboBox.currentTextChanged.connect(self.__initFileTypesDict) | |
185 | self.mixedLanguageCheckBox.stateChanged.connect(self.__initFileTypesDict) | |
186 | self.projectTypeComboBox.currentIndexChanged.connect(self.__initFileTypesDict) | |
187 | ||
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8047
diff
changeset
|
188 | self.buttonBox.button(QDialogButtonBox.StandardButton.Ok).setEnabled( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
189 | bool(self.dirPicker.text()) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
190 | and self.dirPicker.text() not in self.__initPaths |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
191 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
192 | |
9125
3d2411181b3c
Added the capability to define the project license in the project properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9108
diff
changeset
|
193 | def __populateLicenseComboBox(self): |
3d2411181b3c
Added the capability to define the project license in the project properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9108
diff
changeset
|
194 | """ |
3d2411181b3c
Added the capability to define the project license in the project properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9108
diff
changeset
|
195 | Private method to populate the license selector with the list of trove |
3d2411181b3c
Added the capability to define the project license in the project properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9108
diff
changeset
|
196 | license types. |
3d2411181b3c
Added the capability to define the project license in the project properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9108
diff
changeset
|
197 | """ |
3d2411181b3c
Added the capability to define the project license in the project properties dialog.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9108
diff
changeset
|
198 | self.licenseComboBox.addItem("") |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
199 | self.licenseComboBox.addItems( |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
200 | sorted( |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
201 | classifier.split("::")[-1].strip() |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
202 | for classifier in trove_classifiers.classifiers |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
203 | if classifier.startswith("License ::") |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
204 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
205 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
206 | |
9074
1afb90182258
Removed unit test related functionality from the debugger in favor of the new Testing interface.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9066
diff
changeset
|
207 | @pyqtSlot(str) |
1afb90182258
Removed unit test related functionality from the debugger in favor of the new Testing interface.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9066
diff
changeset
|
208 | def on_languageComboBox_currentTextChanged(self, language): |
2040
4cefd094353b
Made the selectable project types of the project properties dialog dependent upon the selected programming language.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1940
diff
changeset
|
209 | """ |
4cefd094353b
Made the selectable project types of the project properties dialog dependent upon the selected programming language.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1940
diff
changeset
|
210 | Private slot handling the selection of a programming language. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
211 | |
9074
1afb90182258
Removed unit test related functionality from the debugger in favor of the new Testing interface.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9066
diff
changeset
|
212 | @param language text of the current item |
1afb90182258
Removed unit test related functionality from the debugger in favor of the new Testing interface.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9066
diff
changeset
|
213 | @type str |
2040
4cefd094353b
Made the selectable project types of the project properties dialog dependent upon the selected programming language.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1940
diff
changeset
|
214 | """ |
4cefd094353b
Made the selectable project types of the project properties dialog dependent upon the selected programming language.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1940
diff
changeset
|
215 | curProjectType = self.getProjectType() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
216 | |
2040
4cefd094353b
Made the selectable project types of the project properties dialog dependent upon the selected programming language.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1940
diff
changeset
|
217 | self.projectTypeComboBox.clear() |
9074
1afb90182258
Removed unit test related functionality from the debugger in favor of the new Testing interface.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9066
diff
changeset
|
218 | for projectType in sorted( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
219 | self.project.getProjectTypes(language).items(), key=lambda k: k[1] |
9074
1afb90182258
Removed unit test related functionality from the debugger in favor of the new Testing interface.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9066
diff
changeset
|
220 | ): |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
221 | self.projectTypeComboBox.addItem(projectType[1], projectType[0]) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
222 | |
4009
098c303a6857
Extended the project object a little bit.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3809
diff
changeset
|
223 | index = self.projectTypeComboBox.findData(curProjectType) |
098c303a6857
Extended the project object a little bit.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3809
diff
changeset
|
224 | if index == -1: |
098c303a6857
Extended the project object a little bit.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3809
diff
changeset
|
225 | index = 0 |
098c303a6857
Extended the project object a little bit.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3809
diff
changeset
|
226 | self.projectTypeComboBox.setCurrentIndex(index) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
227 | |
9074
1afb90182258
Removed unit test related functionality from the debugger in favor of the new Testing interface.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9066
diff
changeset
|
228 | curTestingFramework = self.testingFrameworkComboBox.currentText() |
1afb90182258
Removed unit test related functionality from the debugger in favor of the new Testing interface.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9066
diff
changeset
|
229 | self.testingFrameworkComboBox.clear() |
1afb90182258
Removed unit test related functionality from the debugger in favor of the new Testing interface.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9066
diff
changeset
|
230 | self.testingFrameworkComboBox.addItem(self.tr("None"), "") |
1afb90182258
Removed unit test related functionality from the debugger in favor of the new Testing interface.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9066
diff
changeset
|
231 | with contextlib.suppress(KeyError): |
1afb90182258
Removed unit test related functionality from the debugger in favor of the new Testing interface.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9066
diff
changeset
|
232 | for framework in sorted(FrameworkNames[language]): |
1afb90182258
Removed unit test related functionality from the debugger in favor of the new Testing interface.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9066
diff
changeset
|
233 | self.testingFrameworkComboBox.addItem(framework, framework) |
1afb90182258
Removed unit test related functionality from the debugger in favor of the new Testing interface.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9066
diff
changeset
|
234 | self.testingFrameworkComboBox.setCurrentText(curTestingFramework) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
235 | |
3334
a75328ebac64
Fixed an issue creating new projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3190
diff
changeset
|
236 | @pyqtSlot(str) |
4582
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
237 | def on_dirPicker_textChanged(self, txt): |
3334
a75328ebac64
Fixed an issue creating new projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3190
diff
changeset
|
238 | """ |
a75328ebac64
Fixed an issue creating new projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3190
diff
changeset
|
239 | Private slot to handle a change of the project directory. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
240 | |
3334
a75328ebac64
Fixed an issue creating new projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3190
diff
changeset
|
241 | @param txt name of the project directory (string) |
a75328ebac64
Fixed an issue creating new projects.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3190
diff
changeset
|
242 | """ |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8047
diff
changeset
|
243 | self.buttonBox.button(QDialogButtonBox.StandardButton.Ok).setEnabled( |
9624
b47dfa7a137d
Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9610
diff
changeset
|
244 | bool(txt) |
b47dfa7a137d
Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9610
diff
changeset
|
245 | and FileSystemUtilities.fromNativeSeparators(txt) not in self.__initPaths |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
246 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
247 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
248 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
249 | def on_spellPropertiesButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
250 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
251 | Private slot to display the spelling properties dialog. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
252 | """ |
9482
a2bc06a54d9d
Corrected/acknowledged some bad import style and removed some obsolete code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9473
diff
changeset
|
253 | from .SpellingPropertiesDialog import SpellingPropertiesDialog |
a2bc06a54d9d
Corrected/acknowledged some bad import style and removed some obsolete code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9473
diff
changeset
|
254 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
255 | if self.spellPropertiesDlg is None: |
7266
d001bc703c29
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
256 | self.spellPropertiesDlg = SpellingPropertiesDialog( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
257 | self.project, self.newProject, self |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
258 | ) |
7759
51aa6c6b66f7
Changed calls to exec_() into exec() (remainder of Python2 elimination).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
259 | res = self.spellPropertiesDlg.exec() |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8047
diff
changeset
|
260 | if res == QDialog.DialogCode.Rejected: |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
882
diff
changeset
|
261 | self.spellPropertiesDlg.initDialog() # reset the dialogs contents |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
262 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
263 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
264 | def on_transPropertiesButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
265 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
266 | Private slot to display the translations properties dialog. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
267 | """ |
9482
a2bc06a54d9d
Corrected/acknowledged some bad import style and removed some obsolete code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9473
diff
changeset
|
268 | from .TranslationPropertiesDialog import TranslationPropertiesDialog |
a2bc06a54d9d
Corrected/acknowledged some bad import style and removed some obsolete code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9473
diff
changeset
|
269 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
270 | if self.transPropertiesDlg is None: |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
271 | self.transPropertiesDlg = TranslationPropertiesDialog( |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
272 | self.project, self.newProject, self |
7266
d001bc703c29
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
273 | ) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
274 | else: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
275 | self.transPropertiesDlg.initFilters() |
7759
51aa6c6b66f7
Changed calls to exec_() into exec() (remainder of Python2 elimination).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
276 | res = self.transPropertiesDlg.exec() |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8047
diff
changeset
|
277 | if res == QDialog.DialogCode.Rejected: |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
882
diff
changeset
|
278 | self.transPropertiesDlg.initDialog() # reset the dialogs contents |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
279 | |
6243
528fbf120d68
Project.PropertiesDialog: extended the dialog to add 'make' support
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6048
diff
changeset
|
280 | @pyqtSlot() |
528fbf120d68
Project.PropertiesDialog: extended the dialog to add 'make' support
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6048
diff
changeset
|
281 | def on_makeButton_clicked(self): |
528fbf120d68
Project.PropertiesDialog: extended the dialog to add 'make' support
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6048
diff
changeset
|
282 | """ |
528fbf120d68
Project.PropertiesDialog: extended the dialog to add 'make' support
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6048
diff
changeset
|
283 | Private slot to display the make properties dialog. |
528fbf120d68
Project.PropertiesDialog: extended the dialog to add 'make' support
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6048
diff
changeset
|
284 | """ |
9482
a2bc06a54d9d
Corrected/acknowledged some bad import style and removed some obsolete code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9473
diff
changeset
|
285 | from .MakePropertiesDialog import MakePropertiesDialog |
a2bc06a54d9d
Corrected/acknowledged some bad import style and removed some obsolete code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9473
diff
changeset
|
286 | |
6243
528fbf120d68
Project.PropertiesDialog: extended the dialog to add 'make' support
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6048
diff
changeset
|
287 | if self.makePropertiesDlg is None: |
7266
d001bc703c29
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
288 | self.makePropertiesDlg = MakePropertiesDialog( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
289 | self.project, self.newProject, self |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
290 | ) |
7759
51aa6c6b66f7
Changed calls to exec_() into exec() (remainder of Python2 elimination).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
291 | res = self.makePropertiesDlg.exec() |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8047
diff
changeset
|
292 | if res == QDialog.DialogCode.Rejected: |
6243
528fbf120d68
Project.PropertiesDialog: extended the dialog to add 'make' support
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6048
diff
changeset
|
293 | self.makePropertiesDlg.initDialog() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
294 | |
4582
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
295 | @pyqtSlot(str) |
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
296 | def on_mainscriptPicker_pathSelected(self, script): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
297 | """ |
4582
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
298 | Private slot to check the selected main script name. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
299 | |
4582
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
300 | @param script name of the main script |
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
301 | @type str |
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
302 | """ |
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
303 | if script: |
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
304 | ppath = self.dirPicker.text() |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
305 | if ppath: |
83
b302c5816c1c
Fixed a porting bug.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
55
diff
changeset
|
306 | ppath = QDir(ppath).absolutePath() + QDir.separator() |
4582
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
307 | script = script.replace(ppath, "") |
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
308 | self.mainscriptPicker.setText(script) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
309 | |
4582
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
310 | @pyqtSlot() |
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
311 | def on_mainscriptPicker_aboutToShowPathPickerDialog(self): |
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
312 | """ |
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
313 | Private slot to perform actions before the main script selection dialog |
4601
0017e7cb67ae
Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4582
diff
changeset
|
314 | is shown. |
4582
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
315 | """ |
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
316 | path = self.dirPicker.text() |
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
317 | if not path: |
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
318 | path = QDir.currentPath() |
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
319 | self.mainscriptPicker.setDefaultDirectory(path) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
320 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
321 | @pyqtSlot() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
322 | def on_vcsInfoButton_clicked(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
323 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
324 | Private slot to display a vcs information dialog. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
325 | """ |
9482
a2bc06a54d9d
Corrected/acknowledged some bad import style and removed some obsolete code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9473
diff
changeset
|
326 | from eric7.VCS.RepositoryInfoDialog import VcsRepositoryInfoDialog |
a2bc06a54d9d
Corrected/acknowledged some bad import style and removed some obsolete code.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9473
diff
changeset
|
327 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
328 | if self.project.vcs is None: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
329 | return |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
330 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
331 | info = self.project.vcs.vcsRepositoryInfos(self.project.ppath) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
332 | dlg = VcsRepositoryInfoDialog(self, info) |
7759
51aa6c6b66f7
Changed calls to exec_() into exec() (remainder of Python2 elimination).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7533
diff
changeset
|
333 | dlg.exec() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
334 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
335 | def getProjectType(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
336 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
337 | Public method to get the selected project type. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
338 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
339 | @return selected UI type (string) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
340 | """ |
2995
63d874899b8b
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2408
diff
changeset
|
341 | return self.projectTypeComboBox.itemData( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
342 | self.projectTypeComboBox.currentIndex() |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
343 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
344 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
345 | def getPPath(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
346 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
347 | Public method to get the project path. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
348 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
349 | @return data of the project directory edit (string) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
350 | """ |
4582
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
351 | return os.path.abspath(self.dirPicker.text()) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
352 | |
9610 | 353 | @pyqtSlot() |
354 | def __initFileTypesDict(self): | |
355 | """ | |
356 | Private slot to (re-)initialize the filetype dictionary. | |
357 | """ | |
358 | if ( | |
359 | self.__origProgrammingLanguage != self.languageComboBox.currentText() | |
360 | or self.__origMixedFlag != self.mixedLanguageCheckBox.isChecked() | |
361 | or self.__origProjectType != self.getProjectType() | |
362 | ): | |
363 | # any of the defining data got changed | |
364 | self.__fileTypesDict = self.project.defaultFileTypes( | |
365 | self.languageComboBox.currentText(), | |
366 | self.mixedLanguageCheckBox.isChecked(), | |
367 | self.getProjectType(), | |
368 | ) | |
369 | else: | |
370 | # all of the defining data was changed back to original | |
371 | self.__fileTypesDict = self.project.getProjectData(dataKey="FILETYPES") | |
372 | ||
373 | @pyqtSlot() | |
374 | def on_filetypesButton_clicked(self): | |
375 | """ | |
376 | Private slot to open a dialog to edit the filetype associations. | |
377 | """ | |
378 | from .FiletypeAssociationDialog import FiletypeAssociationDialog | |
379 | ||
380 | if not self.__fileTypesDict: | |
381 | self.__fileTypesDict = self.project.getProjectData(dataKey="FILETYPES") | |
382 | if ( | |
383 | not self.__fileTypesDict | |
384 | or self.__origProgrammingLanguage != self.languageComboBox.currentText() | |
385 | or self.__origMixedFlag != self.mixedLanguageCheckBox.isChecked() | |
386 | or self.__origProjectType != self.getProjectType() | |
387 | ): | |
388 | # the associations were not defined yet or any of the defining data got | |
389 | # changed | |
390 | self.__fileTypesDict = self.project.defaultFileTypes( | |
391 | self.languageComboBox.currentText(), | |
392 | self.mixedLanguageCheckBox.isChecked(), | |
393 | self.getProjectType(), | |
394 | ) | |
395 | ||
396 | dlg = FiletypeAssociationDialog(self.project, self.__fileTypesDict) | |
397 | if dlg.exec() == QDialog.DialogCode.Accepted: | |
398 | self.__fileTypesDict = dlg.getData() | |
399 | ||
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
400 | def storeData(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
401 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
402 | Public method to store the entered/modified data. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
403 | """ |
4582
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
404 | self.project.ppath = os.path.abspath(self.dirPicker.text()) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
405 | fn = self.nameEdit.text() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
406 | if fn: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
407 | self.project.name = fn |
8047
b5594178c7fa
Made some more JSON file related changes and exported some dark styles in the new file format.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7998
diff
changeset
|
408 | fn = "{0}.epj".format(fn) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
409 | self.project.pfile = os.path.join(self.project.ppath, fn) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
410 | else: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
411 | self.project.pfile = "" |
9514
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
412 | self.project.setProjectData(self.versionEdit.text(), dataKey="VERSION") |
4582
3a1d1d4c6f4f
Modified more dialogs to use the path picker widgets.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4021
diff
changeset
|
413 | fn = self.mainscriptPicker.text() |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
414 | if fn: |
250
332afc99e9fa
Fixed an issue introduced by latest change.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
248
diff
changeset
|
415 | fn = self.project.getRelativePath(fn) |
9514
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
416 | self.project.setProjectData(fn, dataKey="MAINSCRIPT") |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
417 | self.project.translationsRoot = os.path.splitext(fn)[0] |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
418 | else: |
9514
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
419 | self.project.setProjectData("", dataKey="MAINSCRIPT") |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
420 | self.project.translationsRoot = "" |
9514
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
421 | self.project.setProjectData(self.authorEdit.text(), dataKey="AUTHOR") |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
422 | self.project.setProjectData(self.emailEdit.text(), dataKey="EMAIL") |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
423 | self.project.setProjectData( |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
424 | self.descriptionEdit.toPlainText(), dataKey="DESCRIPTION" |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
425 | ) |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
426 | self.project.setProjectData( |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
427 | self.languageComboBox.currentText(), dataKey="PROGLANGUAGE" |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
428 | ) |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
429 | self.project.setProjectData( |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
430 | self.mixedLanguageCheckBox.isChecked(), dataKey="MIXEDLANGUAGE" |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
431 | ) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
432 | projectType = self.getProjectType() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
433 | if projectType is not None: |
9514
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
434 | self.project.setProjectData(projectType, dataKey="PROJECTTYPE") |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
435 | self.project.setProjectData(self.eolComboBox.currentIndex(), dataKey="EOL") |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
436 | |
1875
bbdd75d18412
Did the second step in the enhanced VCS handling.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1874
diff
changeset
|
437 | self.project.vcsRequested = self.vcsCheckBox.isChecked() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
438 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
439 | if self.spellPropertiesDlg is not None: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
440 | self.spellPropertiesDlg.storeData() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
441 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
442 | if self.transPropertiesDlg is not None: |
608
d8fea1e76975
Removed capability to write compressed project (and related) files.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
564
diff
changeset
|
443 | self.transPropertiesDlg.storeData() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
444 | |
9514
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
445 | makeParams = self.project.getProjectData(dataKey="MAKEPARAMS") |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
446 | makeParams["MakeEnabled"] = self.makeCheckBox.isChecked() |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
447 | self.project.setProjectData(makeParams, dataKey="MAKEPARAMS") |
6243
528fbf120d68
Project.PropertiesDialog: extended the dialog to add 'make' support
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6048
diff
changeset
|
448 | if self.makePropertiesDlg is not None: |
528fbf120d68
Project.PropertiesDialog: extended the dialog to add 'make' support
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6048
diff
changeset
|
449 | self.makePropertiesDlg.storeData() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
450 | |
9514
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
451 | self.project.setProjectData( |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
452 | self.docstringStyleComboBox.currentData(), dataKey="DOCSTRING" |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
453 | ) |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
454 | |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
455 | self.project.setProjectData( |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
456 | self.testingFrameworkComboBox.currentData(), dataKey="TESTING_FRAMEWORK" |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
457 | ) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
458 | |
9514
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
459 | self.project.setProjectData( |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
460 | self.licenseComboBox.currentText(), dataKey="LICENSE" |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
461 | ) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
462 | |
9514
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
463 | self.project.setProjectData( |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
464 | self.embeddedVenvCheckBox.isChecked(), dataKey="EMBEDDED_VENV" |
2b104ad132a4
Made the project pdata structure private and added getter and setter methods.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9482
diff
changeset
|
465 | ) |
9610 | 466 | |
467 | if self.__fileTypesDict: | |
468 | self.project.setProjectData(self.__fileTypesDict, dataKey="FILETYPES") |