5 |
5 |
6 """ |
6 """ |
7 Module implementing a dialog to show raw code metrics. |
7 Module implementing a dialog to show raw code metrics. |
8 """ |
8 """ |
9 |
9 |
|
10 import fnmatch |
10 import os |
11 import os |
11 import fnmatch |
12 |
12 |
13 from PyQt6.QtCore import QLocale, Qt, QTimer, pyqtSlot |
13 from PyQt6.QtCore import pyqtSlot, Qt, QTimer, QLocale |
|
14 from PyQt6.QtWidgets import ( |
14 from PyQt6.QtWidgets import ( |
|
15 QAbstractButton, |
|
16 QApplication, |
15 QDialog, |
17 QDialog, |
16 QDialogButtonBox, |
18 QDialogButtonBox, |
17 QAbstractButton, |
|
18 QHeaderView, |
19 QHeaderView, |
19 QTreeWidgetItem, |
20 QTreeWidgetItem, |
20 QApplication, |
|
21 ) |
21 ) |
22 |
22 |
23 from eric7 import Preferences, Utilities |
23 from eric7 import Preferences, Utilities |
24 from eric7.EricWidgets.EricApplication import ericApp |
24 from eric7.EricWidgets.EricApplication import ericApp |
|
25 |
|
26 try: |
|
27 from eric7.SystemUtilities.FileSystemUtilities import direntries |
|
28 except ImportError: |
|
29 # imports for eric < 23.1 |
|
30 from eric7.Utilities import direntries |
25 |
31 |
26 from .Ui_RawMetricsDialog import Ui_RawMetricsDialog |
32 from .Ui_RawMetricsDialog import Ui_RawMetricsDialog |
27 |
33 |
28 |
34 |
29 class RawMetricsDialog(QDialog, Ui_RawMetricsDialog): |
35 class RawMetricsDialog(QDialog, Ui_RawMetricsDialog): |
205 self.files = fn |
211 self.files = fn |
206 elif os.path.isdir(fn): |
212 elif os.path.isdir(fn): |
207 self.files = [] |
213 self.files = [] |
208 extensions = set(Preferences.getPython("Python3Extensions")) |
214 extensions = set(Preferences.getPython("Python3Extensions")) |
209 for ext in extensions: |
215 for ext in extensions: |
210 self.files.extend(Utilities.direntries(fn, True, "*{0}".format(ext), 0)) |
216 self.files.extend(direntries(fn, True, "*{0}".format(ext), 0)) |
211 else: |
217 else: |
212 self.files = [fn] |
218 self.files = [fn] |
213 self.files.sort() |
219 self.files.sort() |
214 # check for missing files |
220 # check for missing files |
215 for f in self.files[:]: |
221 for f in self.files[:]: |