src/eric7/DataViews/CodeMetricsDialog.py

branch
server
changeset 10576
0cf5ebf17411
parent 10439
21c28b0f9e41
child 10610
bb0149571d94
--- a/src/eric7/DataViews/CodeMetricsDialog.py	Fri Feb 16 09:32:27 2024 +0100
+++ b/src/eric7/DataViews/CodeMetricsDialog.py	Fri Feb 16 11:45:08 2024 +0100
@@ -56,6 +56,10 @@
 
         self.cancelled = False
 
+        self.__remotefsInterface = (
+            ericApp().getObject("EricServer").getServiceInterface("FileSystem")
+        )
+
         self.__menu = QMenu(self)
         self.__menu.addAction(self.tr("Collapse All"), self.__resultCollapse)
         self.__menu.addAction(self.tr("Expand All"), self.__resultExpand)
@@ -153,15 +157,26 @@
         loc = QLocale()
         if isinstance(fn, list):
             files = fn
-        elif os.path.isdir(fn):
+        elif FileSystemUtilities.isRemoteFileName(
+            fn
+        ) and self.__remotefsInterface.isdir(fn):
+            files = [
+                FileSystemUtilities.remoteFileName(f)
+                for f in self.__remotefsInterface.direntries(fn, True, "*.py", False)
+            ]
+        elif FileSystemUtilities.isPlainFileName(fn) and os.path.isdir(fn):
             files = FileSystemUtilities.direntries(fn, True, "*.py", False)
         else:
             files = [fn]
         files.sort()
         # check for missing files
         for f in files[:]:
-            if not os.path.exists(f):
-                files.remove(f)
+            if FileSystemUtilities.isRemoteFileName(f):
+                if not self.__remotefsInterface.exists(f):
+                    files.remove(f)
+            else:
+                if not os.path.exists(f):
+                    files.remove(f)
 
         self.checkProgress.setMaximum(len(files))
         QApplication.processEvents()

eric ide

mercurial