Tue, 10 Dec 2024 15:48:50 +0100
Updated copyright for 2025.
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1 | # -*- coding: utf-8 -*- |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2 | |
119
ebb5306aeb60
Updated copyright for 2025.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
117
diff
changeset
|
3 | # Copyright (c) 2005 - 2025 Detlev Offenbach <detlev@die-offenbachs.de> |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
4 | # |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
5 | |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
6 | """ |
28
1dae294006e8
Fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
24
diff
changeset
|
7 | Module implementing a dialog to configure the PyLint process. |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
8 | """ |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
9 | |
112
7ece4ae4b274
Adapted some import statements to eric 23.1 and newer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
108
diff
changeset
|
10 | import copy |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
11 | import os |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
12 | |
112
7ece4ae4b274
Adapted some import statements to eric 23.1 and newer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
108
diff
changeset
|
13 | from PyQt6.QtCore import QProcess, pyqtSlot |
98
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
14 | from PyQt6.QtWidgets import QDialog |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
15 | |
108
b452f300e6c7
Adapted the import statements to the new structure.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
107
diff
changeset
|
16 | from eric7 import Preferences |
b452f300e6c7
Adapted the import statements to the new structure.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
107
diff
changeset
|
17 | from eric7.EricWidgets import EricMessageBox |
b452f300e6c7
Adapted the import statements to the new structure.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
107
diff
changeset
|
18 | from eric7.EricWidgets.EricApplication import ericApp |
b452f300e6c7
Adapted the import statements to the new structure.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
107
diff
changeset
|
19 | from eric7.EricWidgets.EricPathPicker import EricPathPickerModes |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
20 | |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
21 | from .Ui_PyLintConfigDialog import Ui_PyLintConfigDialog |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
22 | |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
23 | |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
24 | class PyLintConfigDialog(QDialog, Ui_PyLintConfigDialog): |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
25 | """ |
28
1dae294006e8
Fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
24
diff
changeset
|
26 | Class implementing a dialog to configure the PyLint process. |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
27 | """ |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
28 | |
117
f8955e5dba87
- changed to the new style header
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
116
diff
changeset
|
29 | def __init__(self, ppath, exe, parms, version, parent=None): |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
30 | """ |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
31 | Constructor |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
32 | |
98
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
33 | @param ppath project path; used to set the default path for the |
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
34 | rcfile picker |
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
35 | @type str |
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
36 | @param exe name of the pylint executable |
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
37 | @type str |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
38 | @param parms parameters to set in the dialog |
98
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
39 | @type dict |
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
40 | @param version pylint version (unused) |
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
41 | @type str |
117
f8955e5dba87
- changed to the new style header
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
116
diff
changeset
|
42 | @param parent reference to the parent widget (defaults to None) |
f8955e5dba87
- changed to the new style header
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
116
diff
changeset
|
43 | @type QWidget |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
44 | """ |
117
f8955e5dba87
- changed to the new style header
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
116
diff
changeset
|
45 | super().__init__(parent=parent) |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
46 | self.setupUi(self) |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
47 | |
98
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
48 | self.__version = version |
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
49 | self.__pylintProc = None |
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
50 | self.__lint = exe |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
51 | |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
52 | self.__initializeDefaults() |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
53 | |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
54 | # get a copy of the defaults to store the user settings |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
55 | self.parameters = copy.deepcopy(self.defaults) |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
56 | |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
57 | # combine it with the values of parms |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
58 | if parms is not None: |
77
87638b1c91b4
Adjusted the code style checking parameters and fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
68
diff
changeset
|
59 | self.parameters.update(parms) |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
60 | |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
61 | self.configfilePicker.setWindowTitle(self.tr("Select configuration file")) |
98
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
62 | self.configfilePicker.setMode(EricPathPickerModes.OPEN_FILE_MODE) |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
63 | self.configfilePicker.setFilters( |
116
71d3a2e48265
Corrected some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
115
diff
changeset
|
64 | self.tr("Configuration Files (*.cfg *.cnf *.rc);;All Files (*)") |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
65 | ) |
98
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
66 | self.configfilePicker.setDefaultDirectory(ppath) |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
67 | |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
68 | self.reportfilePicker.setWindowTitle(self.tr("Select report file")) |
98
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
69 | self.reportfilePicker.setMode(EricPathPickerModes.SAVE_FILE_MODE) |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
70 | self.reportfilePicker.setFilters( |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
71 | self.tr( |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
72 | "HTML Files (*.html);;" |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
73 | "Report Files (*.rpt);;" |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
74 | "Text Files (*.txt);;" |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
75 | "All Files (*)" |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
76 | ) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
77 | ) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
78 | |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
79 | # initialize general tab |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
80 | self.configfilePicker.setText(self.parameters["configFile"]) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
81 | self.txtOutputButton.setChecked(self.parameters["txtReport"]) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
82 | self.htmlOutputButton.setChecked(self.parameters["htmlReport"]) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
83 | self.dialogOutputButton.setChecked(self.parameters["dialogReport"]) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
84 | self.reportfilePicker.setText(self.parameters["reportFile"]) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
85 | |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
86 | # initialize checkers tab |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
87 | self.basicCheckBox.setChecked(self.parameters["enableBasic"]) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
88 | self.classesCheckBox.setChecked(self.parameters["enableClasses"]) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
89 | self.designCheckBox.setChecked(self.parameters["enableDesign"]) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
90 | self.exceptionsCheckBox.setChecked(self.parameters["enableExceptions"]) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
91 | self.formatCheckBox.setChecked(self.parameters["enableFormat"]) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
92 | self.importsCheckBox.setChecked(self.parameters["enableImports"]) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
93 | self.metricsCheckBox.setChecked(self.parameters["enableMetrics"]) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
94 | self.miscellaneousCheckBox.setChecked(self.parameters["enableMiscellaneous"]) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
95 | self.newstyleCheckBox.setChecked(self.parameters["enableNewstyle"]) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
96 | self.similaritiesCheckBox.setChecked(self.parameters["enableSimilarities"]) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
97 | self.typecheckCheckBox.setChecked(self.parameters["enableTypecheck"]) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
98 | self.variablesCheckBox.setChecked(self.parameters["enableVariables"]) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
99 | self.loggingCheckBox.setChecked(self.parameters["enableLogging"]) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
100 | self.stringFormatCheckBox.setChecked(self.parameters["enableStringFormat"]) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
101 | |
7
cda98d0e93e7
Added a page to the config dialog to enable and diable messages.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4
diff
changeset
|
102 | # initialize messages tab |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
103 | self.enabledMessagesEdit.setText(self.parameters["enabledMessages"]) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
104 | self.disabledMessagesEdit.setText(self.parameters["disabledMessages"]) |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
105 | |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
106 | def __initializeDefaults(self): |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
107 | """ |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
108 | Private method to set the default values. |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
109 | |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
110 | These are needed later on to generate the commandline |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
111 | parameters. |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
112 | """ |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
113 | self.defaults = { |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
114 | # general options |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
115 | "configFile": "", |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
116 | "reportFile": "", |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
117 | "txtReport": False, |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
118 | "htmlReport": True, |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
119 | "dialogReport": False, |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
120 | # enabled checkers |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
121 | "enableBasic": True, |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
122 | "enableClasses": True, |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
123 | "enableDesign": True, |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
124 | "enableExceptions": True, |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
125 | "enableFormat": False, |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
126 | "enableImports": False, |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
127 | "enableLogging": True, |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
128 | "enableMetrics": True, |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
129 | "enableMiscellaneous": True, |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
130 | "enableNewstyle": True, |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
131 | "enableSimilarities": True, |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
132 | "enableStringFormat": True, |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
133 | "enableTypecheck": True, |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
134 | "enableVariables": True, |
7
cda98d0e93e7
Added a page to the config dialog to enable and diable messages.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4
diff
changeset
|
135 | # messages |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
136 | "enabledMessages": "", |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
137 | "disabledMessages": "", |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
138 | } |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
139 | |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
140 | def generateParameters(self): |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
141 | """ |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
142 | Public method that generates the commandline parameters. |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
143 | |
98
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
144 | It generates a list of strings to be used |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
145 | to set the QProcess arguments for the pylint call and |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
146 | a list containing the non default parameters. The second |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
147 | list can be passed back upon object generation to overwrite |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
148 | the default settings. |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
149 | |
28
1dae294006e8
Fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
24
diff
changeset
|
150 | <b>Note</b>: The arguments list contains the name of the pylint |
1dae294006e8
Fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
24
diff
changeset
|
151 | executable as the first parameter. |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
152 | |
28
1dae294006e8
Fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
24
diff
changeset
|
153 | @return a tuple of the commandline parameters and non default |
98
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
154 | parameters |
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
155 | @rtype tuple of (list of str, dict) |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
156 | """ |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
157 | parms = {} |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
158 | args = [] |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
159 | |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
160 | # 1. the program name |
98
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
161 | args.append(self.__lint) |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
162 | |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
163 | # 2. the commandline options |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
164 | # 2.1 general options |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
165 | if self.parameters["configFile"] != self.defaults["configFile"]: |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
166 | parms["configFile"] = self.parameters["configFile"] |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
167 | args.append("--rcfile={0}".format(self.parameters["configFile"])) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
168 | parms["txtReport"] = self.parameters["txtReport"] |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
169 | parms["htmlReport"] = self.parameters["htmlReport"] |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
170 | parms["dialogReport"] = self.parameters["dialogReport"] |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
171 | if self.parameters["htmlReport"]: |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
172 | args.append("--output-format=html") |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
173 | elif self.parameters["dialogReport"]: |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
174 | args.append("--output-format=parseable") |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
175 | args.append("--reports=n") |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
176 | else: |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
177 | args.append("--output-format=text") |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
178 | if self.parameters["reportFile"] != self.defaults["reportFile"]: |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
179 | parms["reportFile"] = self.parameters["reportFile"] |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
180 | |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
181 | # 2.2 checkers options |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
182 | parms["enableBasic"] = self.parameters["enableBasic"] |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
183 | parms["enableClasses"] = self.parameters["enableClasses"] |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
184 | parms["enableDesign"] = self.parameters["enableDesign"] |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
185 | parms["enableExceptions"] = self.parameters["enableExceptions"] |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
186 | parms["enableFormat"] = self.parameters["enableFormat"] |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
187 | parms["enableImports"] = self.parameters["enableImports"] |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
188 | parms["enableMetrics"] = self.parameters["enableMetrics"] |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
189 | parms["enableMiscellaneous"] = self.parameters["enableMiscellaneous"] |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
190 | parms["enableNewstyle"] = self.parameters["enableNewstyle"] |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
191 | parms["enableSimilarities"] = self.parameters["enableSimilarities"] |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
192 | parms["enableTypecheck"] = self.parameters["enableTypecheck"] |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
193 | parms["enableVariables"] = self.parameters["enableVariables"] |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
194 | parms["enableLogging"] = self.parameters["enableLogging"] |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
195 | parms["enableStringFormat"] = self.parameters["enableStringFormat"] |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
196 | |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
197 | checkers = [] |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
198 | if self.parameters["enableBasic"]: |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
199 | checkers.append("basic") |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
200 | if self.parameters["enableClasses"]: |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
201 | checkers.append("classes") |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
202 | if self.parameters["enableDesign"]: |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
203 | checkers.append("design") |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
204 | if self.parameters["enableExceptions"]: |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
205 | checkers.append("exceptions") |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
206 | if self.parameters["enableFormat"]: |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
207 | checkers.append("format") |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
208 | if self.parameters["enableImports"]: |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
209 | checkers.append("imports") |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
210 | if self.parameters["enableMetrics"]: |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
211 | checkers.append("metrics") |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
212 | if self.parameters["enableMiscellaneous"]: |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
213 | checkers.append("miscellaneous") |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
214 | if self.parameters["enableNewstyle"]: |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
215 | checkers.append("newstyle") |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
216 | if self.parameters["enableSimilarities"]: |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
217 | checkers.append("similarities") |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
218 | if self.parameters["enableTypecheck"]: |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
219 | checkers.append("typecheck") |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
220 | if self.parameters["enableVariables"]: |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
221 | checkers.append("variables") |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
222 | if self.parameters["enableLogging"]: |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
223 | checkers.append("logging") |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
224 | if self.parameters["enableStringFormat"]: |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
225 | checkers.append("string") |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
226 | |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
227 | args.append("--disable=all") |
7
cda98d0e93e7
Added a page to the config dialog to enable and diable messages.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4
diff
changeset
|
228 | if checkers: |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
229 | args.append("--enable={0}".format(",".join(checkers))) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
230 | |
7
cda98d0e93e7
Added a page to the config dialog to enable and diable messages.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4
diff
changeset
|
231 | # 2.3 messages options |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
232 | parms["enabledMessages"] = self.parameters["enabledMessages"] |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
233 | parms["disabledMessages"] = self.parameters["disabledMessages"] |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
234 | if parms["enabledMessages"]: |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
235 | args.append("--enable={0}".format(parms["enabledMessages"])) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
236 | if parms["disabledMessages"]: |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
237 | args.append("--disable={0}".format(parms["disabledMessages"])) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
238 | |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
239 | return (args, parms) |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
240 | |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
241 | def accept(self): |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
242 | """ |
60
971dd1b69f5b
Fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
59
diff
changeset
|
243 | Public slot called by the Ok button. |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
244 | |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
245 | It saves the values in the parameters dictionary. |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
246 | """ |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
247 | # get data of general tab |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
248 | self.parameters["configFile"] = self.configfilePicker.text() |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
249 | self.parameters["txtReport"] = self.txtOutputButton.isChecked() |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
250 | self.parameters["htmlReport"] = self.htmlOutputButton.isChecked() |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
251 | self.parameters["dialogReport"] = self.dialogOutputButton.isChecked() |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
252 | self.parameters["reportFile"] = self.reportfilePicker.text() |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
253 | |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
254 | # get data of checkers tab |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
255 | self.parameters["enableBasic"] = self.basicCheckBox.isChecked() |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
256 | self.parameters["enableClasses"] = self.classesCheckBox.isChecked() |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
257 | self.parameters["enableDesign"] = self.designCheckBox.isChecked() |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
258 | self.parameters["enableExceptions"] = self.exceptionsCheckBox.isChecked() |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
259 | self.parameters["enableFormat"] = self.formatCheckBox.isChecked() |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
260 | self.parameters["enableImports"] = self.importsCheckBox.isChecked() |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
261 | self.parameters["enableMetrics"] = self.metricsCheckBox.isChecked() |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
262 | self.parameters["enableMiscellaneous"] = self.miscellaneousCheckBox.isChecked() |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
263 | self.parameters["enableNewstyle"] = self.newstyleCheckBox.isChecked() |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
264 | self.parameters["enableSimilarities"] = self.similaritiesCheckBox.isChecked() |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
265 | self.parameters["enableTypecheck"] = self.typecheckCheckBox.isChecked() |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
266 | self.parameters["enableVariables"] = self.variablesCheckBox.isChecked() |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
267 | self.parameters["enableLogging"] = self.loggingCheckBox.isChecked() |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
268 | self.parameters["enableStringFormat"] = self.stringFormatCheckBox.isChecked() |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
269 | |
7
cda98d0e93e7
Added a page to the config dialog to enable and diable messages.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4
diff
changeset
|
270 | # get data of messages tab |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
271 | self.parameters["enabledMessages"] = ",".join( |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
272 | [m.strip() for m in self.enabledMessagesEdit.text().split(",")] |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
273 | ) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
274 | self.parameters["disabledMessages"] = ",".join( |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
275 | [m.strip() for m in self.disabledMessagesEdit.text().split(",")] |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
276 | ) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
277 | |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
278 | # call the accept slot of the base class |
95
50eba81e4a9f
- implemented some code simplifications
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
94
diff
changeset
|
279 | super().accept() |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
280 | |
28
1dae294006e8
Fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
24
diff
changeset
|
281 | ########################################################################### |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
282 | ## Methods below are needed to generate a configuration file template |
28
1dae294006e8
Fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
24
diff
changeset
|
283 | ########################################################################### |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
284 | |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
285 | @pyqtSlot() |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
286 | def on_configButton_clicked(self): |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
287 | """ |
60
971dd1b69f5b
Fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
59
diff
changeset
|
288 | Private slot to handle the generation of a sample configuration. |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
289 | """ |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
290 | self.buf = "" |
98
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
291 | self.__pylintProc = QProcess() |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
292 | args = [] |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
293 | |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
294 | self.__ioEncoding = Preferences.getSystem("IOEncoding") |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
295 | |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
296 | args.append("--generate-rcfile") |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
297 | |
98
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
298 | self.__pylintProc.readyReadStandardOutput.connect(self.__readStdout) |
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
299 | self.__pylintProc.readyReadStandardError.connect(self.__readStderr) |
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
300 | self.__pylintProc.finished.connect(self.__createConfigDone) |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
301 | |
98
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
302 | self.__pylintProc.start(self.__lint, args) |
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
303 | procStarted = self.__pylintProc.waitForStarted() |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
304 | if procStarted: |
98
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
305 | ericApp().getObject("ViewManager").enableEditorsCheckFocusIn(False) |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
306 | else: |
98
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
307 | EricMessageBox.critical( |
28
1dae294006e8
Fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
24
diff
changeset
|
308 | self, |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
309 | self.tr("Process Generation Error"), |
38
bf234b8941d9
Ported to PyQt5 and eric6.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
32
diff
changeset
|
310 | self.tr( |
116
71d3a2e48265
Corrected some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
115
diff
changeset
|
311 | "Could not start {0}.<br>Ensure that it is in the search path." |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
312 | ).format(self.__lint), |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
313 | ) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
314 | |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
315 | def __createConfigDone(self, exitCode, exitStatus): |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
316 | """ |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
317 | Private slot to handle the the finished signal of the pylint process. |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
318 | |
98
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
319 | @param exitCode exit code of the process |
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
320 | @type int |
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
321 | @param exitStatus exit status of the process |
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
322 | @type QProcess.ExitStatus |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
323 | """ |
98
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
324 | vm = ericApp().getObject("ViewManager") |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
325 | vm.enableEditorsCheckFocusIn(True) |
98
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
326 | if exitStatus == QProcess.ExitStatus.NormalExit and exitCode == 0: |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
327 | vm.newEditor() |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
328 | aw = vm.activeWindow() |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
329 | aw.insertAt(self.buf, 0, 0) |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
330 | aw.setLanguage("dummy.rc") |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
331 | self.reject() |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
332 | |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
333 | def __readStdout(self): |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
334 | """ |
28
1dae294006e8
Fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
24
diff
changeset
|
335 | Private slot to handle the readyReadStandardOutput signal of the |
1dae294006e8
Fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
24
diff
changeset
|
336 | pylint process. |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
337 | """ |
98
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
338 | if self.__pylintProc is None: |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
339 | return |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
340 | |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
341 | self.__pylintProc.setReadChannel(QProcess.ProcessChannel.StandardOutput) |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
342 | |
98
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
343 | while self.__pylintProc and self.__pylintProc.canReadLine(): |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
344 | line = str( |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
345 | self.__pylintProc.readLine(), self.__ioEncoding, "replace" |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
346 | ).rstrip() |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
347 | self.buf += line + os.linesep |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
348 | |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
349 | def __readStderr(self): |
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
350 | """ |
28
1dae294006e8
Fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
24
diff
changeset
|
351 | Private slot to handle the readyReadStandardError signal of the |
1dae294006e8
Fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
24
diff
changeset
|
352 | pylint process. |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
353 | """ |
98
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
354 | if self.__pylintProc is None: |
0
1c1ac27f3cf1
Added first set of sources.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
355 | return |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
356 | |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
357 | self.__pylintProc.setReadChannel(QProcess.ProcessChannel.StandardError) |
98
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
358 | while self.__pylintProc and self.__pylintProc.canReadLine(): |
107
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
359 | s = "pylint: " + str( |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
360 | self.__pylintProc.readLine(), self.__ioEncoding, "replace" |
3bd2806a6ada
Reformatted sources with 'Black'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
102
diff
changeset
|
361 | ) |
98
ab4aabca55ec
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
95
diff
changeset
|
362 | ericApp().getObject("UserInterface").appendStderr.emit(s) |