50 @signal metricsDone(str, list) emitted when the code metrics were |
50 @signal metricsDone(str, list) emitted when the code metrics were |
51 determined for a file |
51 determined for a file |
52 @signal metricsError(str, str) emitted in case of an error |
52 @signal metricsError(str, str) emitted in case of an error |
53 @signal batchFinished() emitted when a code metrics batch is done |
53 @signal batchFinished() emitted when a code metrics batch is done |
54 """ |
54 """ |
55 metricsDone = pyqtSignal(str, list) # TODO: adjust this |
55 metricsDone = pyqtSignal(str, list) |
56 metricsError = pyqtSignal(str, str) |
56 metricsError = pyqtSignal(str, str) |
57 batchFinished = pyqtSignal() |
57 batchFinished = pyqtSignal() |
58 |
58 |
59 def __init__(self, ui): |
59 def __init__(self, ui): |
60 """ |
60 """ |
67 self.__ui = ui |
67 self.__ui = ui |
68 self.__initialize() |
68 self.__initialize() |
69 |
69 |
70 self.backgroundService = e5App().getObject("BackgroundService") |
70 self.backgroundService = e5App().getObject("BackgroundService") |
71 |
71 |
72 path = os.path.join( |
72 path = os.path.join(os.path.dirname(__file__), packageName) |
73 os.path.dirname(__file__), packageName, 'Tabnanny') |
|
74 self.backgroundService.serviceConnect( |
73 self.backgroundService.serviceConnect( |
75 'radon', 'Python2', path, 'CodeMetricsCalculator', |
74 'radon', 'Python2', path, 'CodeMetricsCalculator', |
76 lambda *args: self.metricsDone.emit(*args), |
75 lambda *args: self.metricsDone.emit(*args), |
77 onErrorCallback=self.serviceErrorPy2, |
76 onErrorCallback=self.serviceErrorPy2, |
78 onBatchDone=self.batchJobDone) |
77 onBatchDone=self.batchJobDone) |
221 self.queuedBatches.append(lang) |
220 self.queuedBatches.append(lang) |
222 self.backgroundService.enqueueRequest('batch_radon', lang, "", |
221 self.backgroundService.enqueueRequest('batch_radon', lang, "", |
223 data[lang]) |
222 data[lang]) |
224 self.batchesFinished = False |
223 self.batchesFinished = False |
225 |
224 |
226 def cancelIndentBatchCheck(self): |
225 def cancelRawMetricsBatch(self): |
227 """ |
226 """ |
228 Public method to cancel all batch jobs. |
227 Public method to cancel all batch jobs. |
229 """ |
228 """ |
230 for lang in ['Python2', 'Python3']: |
229 for lang in ['Python2', 'Python3']: |
231 self.backgroundService.requestCancel('batch_radon', lang) |
230 self.backgroundService.requestCancel('batch_radon', lang) |
422 for file in project.pdata["SOURCES"] |
421 for file in project.pdata["SOURCES"] |
423 if file.endswith( |
422 if file.endswith( |
424 tuple(Preferences.getPython("Python3Extensions")) + |
423 tuple(Preferences.getPython("Python3Extensions")) + |
425 tuple(Preferences.getPython("PythonExtensions")))] |
424 tuple(Preferences.getPython("PythonExtensions")))] |
426 |
425 |
427 # TODO: implement this dialog |
|
428 from RadonMetrics.RawMetricsDialog import RawMetricsDialog |
426 from RadonMetrics.RawMetricsDialog import RawMetricsDialog |
429 self.__projectRawMetricsDialog = RawMetricsDialog(self) |
427 self.__projectRawMetricsDialog = RawMetricsDialog(self) |
430 self.__projectRawMetricsDialog.show() |
428 self.__projectRawMetricsDialog.show() |
431 self.__projectRawMetricsDialog.prepare(files, project) |
429 self.__projectRawMetricsDialog.prepare(files, project) |
432 |
430 |