eric7/VirtualEnv/VirtualenvInterpreterSelectionDialog.py

branch
eric7
changeset 9144
135240382a3e
parent 8986
665d14b3c01a
equal deleted inserted replaced
9143:82f08c4fd930 9144:135240382a3e
6 """ 6 """
7 Module implementing a dialog to enter the interpreter for a virtual 7 Module implementing a dialog to enter the interpreter for a virtual
8 environment. 8 environment.
9 """ 9 """
10 10
11 import glob
11 import os 12 import os
12 13
13 from PyQt6.QtCore import pyqtSlot 14 from PyQt6.QtCore import pyqtSlot
14 from PyQt6.QtWidgets import QDialog, QDialogButtonBox 15 from PyQt6.QtWidgets import QDialog, QDialogButtonBox
15 16
49 self.nameEdit.setText(venvName) 50 self.nameEdit.setText(venvName)
50 51
51 if venvDirectory: 52 if venvDirectory:
52 # try to determine a Python interpreter name 53 # try to determine a Python interpreter name
53 if Globals.isWindowsPlatform(): 54 if Globals.isWindowsPlatform():
54 candidates = ( 55 candidates = glob.glob(
55 os.path.join(venvDirectory, "Scripts", "python.exe"), 56 os.path.join(venvDirectory, "Scripts", "python*.exe")
56 os.path.join(venvDirectory, "python.exe"), 57 ) + glob.glob(os.path.join(venvDirectory, "python*.exe"))
58 else:
59 candidates = glob.glob(
60 os.path.join(venvDirectory, "bin", "python*")
57 ) 61 )
58 else: 62 self.pythonExecPicker.addItems(sorted(candidates))
59 candidates = ( 63 self.pythonExecPicker.setText("")
60 os.path.join(venvDirectory, "bin", "python3"),
61 )
62 for py in candidates:
63 if os.path.exists(py):
64 self.pythonExecPicker.setText(py)
65 break
66 else:
67 self.pythonExecPicker.setText(venvDirectory)
68 else: 64 else:
69 self.pythonExecPicker.setText(venvDirectory) 65 self.pythonExecPicker.setText(venvDirectory)
70 66
71 def __updateOK(self): 67 def __updateOK(self):
72 """ 68 """

eric ide

mercurial