25 |
31 |
26 class PyLintConfigDialog(QDialog, Ui_PyLintConfigDialog): |
32 class PyLintConfigDialog(QDialog, Ui_PyLintConfigDialog): |
27 """ |
33 """ |
28 Class implementing a dialog to configure the PyLint process |
34 Class implementing a dialog to configure the PyLint process |
29 """ |
35 """ |
30 def __init__(self, ppath, exe, parms=None, parent=None): |
36 def __init__(self, ppath, exe, parms, version): |
31 """ |
37 """ |
32 Constructor |
38 Constructor |
33 |
39 |
34 @param ppath project path (string or QString) |
40 @param ppath project path (string or QString) |
35 Used to set the default path for the rcfile selection dialog |
41 Used to set the default path for the rcfile selection dialog |
36 @param exe name of the pylint executable (string) |
42 @param exe name of the pylint executable (string) |
37 @param parms parameters to set in the dialog |
43 @param parms parameters to set in the dialog |
38 @param parent reference to the parent widget (QWidget) |
44 @param version pylint version (string) |
39 """ |
45 """ |
40 super().__init__(parent) |
46 super(PyLintConfigDialog, self).__init__(None) |
41 self.setupUi(self) |
47 self.setupUi(self) |
42 |
48 |
|
49 self.version = version |
43 self.pylintProc = None |
50 self.pylintProc = None |
44 self.lint = exe |
51 self.lint = exe |
45 |
52 |
46 self.__initializeDefaults() |
53 self.__initializeDefaults() |
47 |
54 |
99 'txtReport': False, |
106 'txtReport': False, |
100 'htmlReport': True, |
107 'htmlReport': True, |
101 'dialogReport': False, |
108 'dialogReport': False, |
102 |
109 |
103 # enabled checkers |
110 # enabled checkers |
104 'enableBasic': False, |
111 'enableBasic': True, |
105 'enableClasses': False, |
112 'enableClasses': True, |
106 'enableDesign': False, |
113 'enableDesign': True, |
107 'enableExceptions': False, |
114 'enableExceptions': True, |
108 'enableFormat': False, |
115 'enableFormat': False, |
109 'enableImports': False, |
116 'enableImports': False, |
|
117 'enableLogging': True, |
110 'enableMetrics': True, |
118 'enableMetrics': True, |
111 'enableMiscellaneous': False, |
119 'enableMiscellaneous': True, |
112 'enableNewstyle': False, |
120 'enableNewstyle': True, |
113 'enableSimilarities': False, |
121 'enableSimilarities': True, |
114 'enableTypecheck': False, |
122 'enableStringFormat': True, |
115 'enableVariables': False, |
123 'enableTypecheck': True, |
116 'enableLogging': False, |
124 'enableVariables': True, |
117 'enableStringFormat': False, |
|
118 |
125 |
119 # messages |
126 # messages |
120 'enabledMessages': '', |
127 'enabledMessages': '', |
121 'disabledMessages': '', |
128 'disabledMessages': '', |
122 } |
129 } |
203 if self.parameters['enableVariables']: |
210 if self.parameters['enableVariables']: |
204 checkers.append('variables') |
211 checkers.append('variables') |
205 if self.parameters['enableLogging']: |
212 if self.parameters['enableLogging']: |
206 checkers.append('logging') |
213 checkers.append('logging') |
207 if self.parameters['enableStringFormat']: |
214 if self.parameters['enableStringFormat']: |
208 checkers.append('string_format') |
215 if self.version > '0.27.0': |
|
216 checkers.append('string') |
|
217 else: |
|
218 checkers.append('string_format') |
|
219 |
|
220 args.append('--disable=all') |
209 if checkers: |
221 if checkers: |
210 args.append('--enable={0}'.format(','.join(checkers))) |
222 args.append('--enable={0}'.format(','.join(checkers))) |
211 |
223 |
212 # 2.3 messages options |
224 # 2.3 messages options |
213 parms['enabledMessages'] = self.parameters['enabledMessages'] |
225 parms['enabledMessages'] = self.parameters['enabledMessages'] |
289 [m.strip() for m in self.enabledMessagesEdit.text().split(',')]) |
301 [m.strip() for m in self.enabledMessagesEdit.text().split(',')]) |
290 self.parameters['disabledMessages'] = ','.join( |
302 self.parameters['disabledMessages'] = ','.join( |
291 [m.strip() for m in self.disabledMessagesEdit.text().split(',')]) |
303 [m.strip() for m in self.disabledMessagesEdit.text().split(',')]) |
292 |
304 |
293 # call the accept slot of the base class |
305 # call the accept slot of the base class |
294 super().accept() |
306 super(PyLintConfigDialog, self).accept() |
295 |
307 |
296 ############################################################################ |
308 ############################################################################ |
297 ## Methods below are needed to generate a configuration file template |
309 ## Methods below are needed to generate a configuration file template |
298 ############################################################################ |
310 ############################################################################ |
299 |
311 |