eric7/VCS/ProjectHelper.py

branch
eric7
changeset 9153
506e35e424d5
parent 9152
8a68afaf1ba2
--- a/eric7/VCS/ProjectHelper.py	Thu Jun 16 18:28:59 2022 +0200
+++ b/eric7/VCS/ProjectHelper.py	Fri Jun 17 16:36:14 2022 +0200
@@ -10,8 +10,9 @@
 import os
 import shutil
 import copy
+import pathlib
 
-from PyQt6.QtCore import pyqtSlot, QDir, QFileInfo, QObject, QCoreApplication
+from PyQt6.QtCore import pyqtSlot, QObject, QCoreApplication
 from PyQt6.QtWidgets import QDialog, QInputDialog, QToolBar
 
 from EricGui.EricAction import EricAction
@@ -267,22 +268,17 @@
                     ok = vcs.vcsCheckout(vcsDataDict, projectdir, False)
                 if ok:
                     projectdir = os.path.normpath(projectdir)
+                    dpath = pathlib.Path(projectdir)
                     # look for JSON style project file first
-                    filters = ["*.epj"]
-                    # TODO: replace QDir and QFileInfo using pathlib
-                    d = QDir(projectdir)
-                    plist = d.entryInfoList(filters)
+                    plist = list(dpath.glob("*.epj"))
                     if not plist:
                         # look for XML style project file second
-                        filters = ["*.e4p"]
-                        d = QDir(projectdir)
-                        plist = d.entryInfoList(filters)
+                        plist = list(dpath.glob("*.e4p"))
                     if plist:
                         if len(plist) == 1:
-                            self.project.openProject(
-                                plist[0].absoluteFilePath())
+                            self.project.openProject(str(plist[0].resolve()))
                         else:
-                            pfilenamelist = d.entryList(filters)
+                            pfilenamelist = [p.name for p in plist]
                             pfilename, ok = QInputDialog.getItem(
                                 None,
                                 QCoreApplication.translate(
@@ -294,7 +290,7 @@
                                 pfilenamelist, 0, False)
                             if ok:
                                 self.project.openProject(
-                                    QFileInfo(d, pfilename).absoluteFilePath())
+                                    str(dpath / pfilename))
                         if export:
                             self.project.pdata["VCS"] = 'None'
                             self.project.vcs = self.project.initVCS()

eric ide

mercurial