Fri, 27 Sep 2024 17:27:11 +0200
Refactored some packages, modules and code to allow extracting the 'EricXxx' packages into a library project.
6338
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1 | # -*- coding: utf-8 -*- |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2 | |
10439
21c28b0f9e41
Updated copyright for 2024.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10194
diff
changeset
|
3 | # Copyright (c) 2018 - 2024 Detlev Offenbach <detlev@die-offenbachs.de> |
6338
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
4 | # |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
5 | |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
6 | """ |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
7 | Module implementing a dialog to enter the data of a virtual environment. |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
8 | """ |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
9 | |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
10 | import os |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
11 | |
9473
3f23dbf37dbe
Resorted the import statements using isort.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9434
diff
changeset
|
12 | from PyQt6.QtCore import Qt, pyqtSlot |
8318
962bce857696
Replaced all imports of PyQt5 to PyQt6 and started to replace code using obsoleted methods and adapt to the PyQt6 enum usage.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8312
diff
changeset
|
13 | from PyQt6.QtWidgets import QDialog, QDialogButtonBox |
6338
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
14 | |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
15 | from eric7.EricWidgets.EricApplication import ericApp |
9413
80c06d472826
Changed the eric7 import statements to include the package name (i.e. eric7) in order to not fiddle with sys.path.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9221
diff
changeset
|
16 | from eric7.EricWidgets.EricPathPicker import EricPathPickerModes |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
17 | from eric7.SystemUtilities import FileSystemUtilities, OSUtilities, PythonUtilities |
6338
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
18 | |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
19 | from .Ui_VirtualenvAddEditDialog import Ui_VirtualenvAddEditDialog |
10194
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
20 | from .VirtualenvMeta import VirtualenvMetaData |
6338
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
21 | |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
22 | |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
23 | class VirtualenvAddEditDialog(QDialog, Ui_VirtualenvAddEditDialog): |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
24 | """ |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
25 | Class implementing a dialog to enter the data of a virtual environment. |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
26 | """ |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
27 | |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
28 | def __init__( |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
29 | self, |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
30 | manager, |
10194
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
31 | metadata=None, |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
32 | baseDir="", |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
33 | parent=None, |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
34 | ): |
6338
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
35 | """ |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
36 | Constructor |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
37 | |
6338
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
38 | @param manager reference to the virtual environment manager |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
39 | @type VirtualenvManager |
10194
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
40 | @param metadata object containing the metadata of the virtual environment |
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
41 | (defaults to None) |
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
42 | @type VirtualenvMetaData (optional) |
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
43 | @param baseDir base directory for the virtual environments (defaults to "") |
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
44 | @type str (optional) |
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
45 | @param parent reference to the parent widget (defaults to None) |
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
46 | @type QWidget (optional) |
6338
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
47 | """ |
8218
7c09585bd960
Applied some more code simplifications suggested by the new Simplify checker (super(Foo, self) => super()).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8143
diff
changeset
|
48 | super().__init__(parent) |
6338
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
49 | self.setupUi(self) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
50 | |
10194
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
51 | self.__venvName = "" if metadata is None else metadata.name |
6338
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
52 | self.__manager = manager |
10194
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
53 | self.__editMode = bool(self.__venvName) |
10931
56f41b1e163a
Fixed an issue in the virtual env manager package when used in the standalone application.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10765
diff
changeset
|
54 | try: |
56f41b1e163a
Fixed an issue in the virtual env manager package when used in the standalone application.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10765
diff
changeset
|
55 | self.__serverInterface = ericApp().getObject("EricServer") |
10933
95a15b70f7bb
Refactored some packages, modules and code to allow extracting the 'EricXxx' packages into a library project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10931
diff
changeset
|
56 | self.__fsInterface = self.__serverInterface.getServiceInterface( |
95a15b70f7bb
Refactored some packages, modules and code to allow extracting the 'EricXxx' packages into a library project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10931
diff
changeset
|
57 | "FileSystem" |
95a15b70f7bb
Refactored some packages, modules and code to allow extracting the 'EricXxx' packages into a library project.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10931
diff
changeset
|
58 | ) |
10931
56f41b1e163a
Fixed an issue in the virtual env manager package when used in the standalone application.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10765
diff
changeset
|
59 | except KeyError: |
56f41b1e163a
Fixed an issue in the virtual env manager package when used in the standalone application.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10765
diff
changeset
|
60 | self.__serverInterface = None |
56f41b1e163a
Fixed an issue in the virtual env manager package when used in the standalone application.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10765
diff
changeset
|
61 | self.__fsInterface = None |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
62 | |
7910
2eeec6bc49e6
VirtualEnv Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7781
diff
changeset
|
63 | if self.__editMode: |
2eeec6bc49e6
VirtualEnv Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7781
diff
changeset
|
64 | self.setWindowTitle(self.tr("Edit Virtual Environment")) |
2eeec6bc49e6
VirtualEnv Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7781
diff
changeset
|
65 | else: |
2eeec6bc49e6
VirtualEnv Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7781
diff
changeset
|
66 | self.setWindowTitle(self.tr("Add Virtual Environment")) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
67 | |
7910
2eeec6bc49e6
VirtualEnv Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7781
diff
changeset
|
68 | self.__envBaseDir = baseDir |
2eeec6bc49e6
VirtualEnv Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7781
diff
changeset
|
69 | if not self.__envBaseDir: |
9624
b47dfa7a137d
Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9473
diff
changeset
|
70 | self.__envBaseDir = OSUtilities.getHomeDir() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
71 | |
10931
56f41b1e163a
Fixed an issue in the virtual env manager package when used in the standalone application.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10765
diff
changeset
|
72 | self.serverRadioButton.setEnabled( |
56f41b1e163a
Fixed an issue in the virtual env manager package when used in the standalone application.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10765
diff
changeset
|
73 | self.__serverInterface is not None |
56f41b1e163a
Fixed an issue in the virtual env manager package when used in the standalone application.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10765
diff
changeset
|
74 | and self.__serverInterface.isServerConnected() |
56f41b1e163a
Fixed an issue in the virtual env manager package when used in the standalone application.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10765
diff
changeset
|
75 | ) |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
76 | |
8356
68ec9c3d4de5
Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8327
diff
changeset
|
77 | self.targetDirectoryPicker.setMode(EricPathPickerModes.DIRECTORY_MODE) |
6338
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
78 | self.targetDirectoryPicker.setWindowTitle( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
79 | self.tr("Virtualenv Target Directory") |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
80 | ) |
10931
56f41b1e163a
Fixed an issue in the virtual env manager package when used in the standalone application.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10765
diff
changeset
|
81 | if ( |
56f41b1e163a
Fixed an issue in the virtual env manager package when used in the standalone application.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10765
diff
changeset
|
82 | self.__serverInterface is not None |
56f41b1e163a
Fixed an issue in the virtual env manager package when used in the standalone application.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10765
diff
changeset
|
83 | and self.__serverInterface.isServerConnected() |
56f41b1e163a
Fixed an issue in the virtual env manager package when used in the standalone application.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10765
diff
changeset
|
84 | ): |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
85 | self.targetDirectoryPicker.setRemote( |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
86 | metadata.is_eric_server if metadata else False |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
87 | ) |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
88 | if metadata is None or (not metadata.is_eric_server and not metadata.is_remote): |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
89 | self.targetDirectoryPicker.setDefaultDirectory(self.__envBaseDir) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
90 | |
8356
68ec9c3d4de5
Renamed the modules and classes of the E5Gui package to have the prefix 'Eric' instead of 'E5'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8327
diff
changeset
|
91 | self.pythonExecPicker.setMode(EricPathPickerModes.OPEN_FILE_MODE) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
92 | self.pythonExecPicker.setWindowTitle(self.tr("Python Interpreter")) |
10931
56f41b1e163a
Fixed an issue in the virtual env manager package when used in the standalone application.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10765
diff
changeset
|
93 | if ( |
56f41b1e163a
Fixed an issue in the virtual env manager package when used in the standalone application.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10765
diff
changeset
|
94 | self.__serverInterface is not None |
56f41b1e163a
Fixed an issue in the virtual env manager package when used in the standalone application.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10765
diff
changeset
|
95 | and self.__serverInterface.isServerConnected() |
56f41b1e163a
Fixed an issue in the virtual env manager package when used in the standalone application.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10765
diff
changeset
|
96 | ): |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
97 | self.pythonExecPicker.setRemote( |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
98 | metadata.is_eric_server if metadata else False |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
99 | ) |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
100 | if metadata is None or (not metadata.is_eric_server and not metadata.is_remote): |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
101 | self.pythonExecPicker.setDefaultDirectory( |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
102 | PythonUtilities.getPythonExecutable() |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
103 | ) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
104 | |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
105 | self.execPathEdit.setToolTip( |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
106 | self.tr( |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
107 | "Enter the executable search path to be prepended to the PATH" |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
108 | " environment variable. Use '{0}' as the separator." |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
109 | ).format(os.pathsep) |
6576
ea60ea85067a
VitualEnv Manager:
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6362
diff
changeset
|
110 | ) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
111 | |
10194
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
112 | self.nameEdit.setText(self.__venvName) |
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
113 | if metadata: |
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
114 | if metadata.path: |
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
115 | self.targetDirectoryPicker.setText( |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
116 | metadata.path, |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
117 | toNative=not metadata.is_remote and not metadata.is_eric_server, |
10194
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
118 | ) |
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
119 | else: |
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
120 | self.targetDirectoryPicker.setText( |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
121 | self.__envBaseDir, |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
122 | toNative=not metadata.is_remote and not metadata.is_eric_server, |
10194
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
123 | ) |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
124 | if ( |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
125 | not metadata.interpreter |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
126 | and metadata.path |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
127 | and not metadata.is_remote |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
128 | and not metadata.is_eric_server |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
129 | ): |
10194
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
130 | py = self.__detectPythonInterpreter(metadata.path) |
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
131 | self.pythonExecPicker.setText(py) |
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
132 | else: |
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
133 | self.pythonExecPicker.setText( |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
134 | metadata.interpreter, |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
135 | toNative=not metadata.is_remote and not metadata.is_eric_server, |
10194
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
136 | ) |
7910
2eeec6bc49e6
VirtualEnv Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7781
diff
changeset
|
137 | else: |
10194
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
138 | self.targetDirectoryPicker.setText(self.__envBaseDir, toNative=True) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
139 | |
10194
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
140 | self.globalCheckBox.setChecked(metadata.is_global if metadata else False) |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
141 | self.standardRadioButton.setChecked(True) |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
142 | self.anacondaRadioButton.setChecked(metadata.is_conda if metadata else False) |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
143 | self.remoteRadioButton.setChecked(metadata.is_remote if metadata else False) |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
144 | self.serverRadioButton.setChecked( |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
145 | metadata.is_eric_server if metadata else False |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
146 | ) |
10194
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
147 | self.execPathEdit.setText(metadata.exec_path if metadata else "") |
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
148 | self.descriptionEdit.setPlainText(metadata.description if metadata else "") |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
149 | self.serverLineEdit.setText(metadata.eric_server if metadata else "") |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
150 | |
6338
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
151 | self.__updateOk() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
152 | |
8143
2c730d5fd177
Changed the use of PyQt enums because the way they were used previously is deprecated since two years and replaced some deprecated Qt stuff.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
153 | self.nameEdit.setFocus(Qt.FocusReason.OtherFocusReason) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
154 | |
6338
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
155 | def __updateOk(self): |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
156 | """ |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
157 | Private slot to update the state of the OK button. |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
158 | """ |
8260
2161475d9639
Applied some more code simplifications suggested by the new Simplify checker (Y108: use ternary operator).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8218
diff
changeset
|
159 | enable = ( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
160 | ( |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
161 | bool(self.nameEdit.text()) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
162 | and ( |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
163 | self.nameEdit.text() == self.__venvName |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
164 | or self.__manager.isUnique(self.nameEdit.text()) |
6716
1c9d3b369ea8
VirtualEnv Manager: extended the environment definition by a flag indicating a remotely accessed environment.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6645
diff
changeset
|
165 | ) |
6341
a00e63f6d766
VirtualenvManager: changed code to allow environments without environment directory denoting a global environment.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6338
diff
changeset
|
166 | ) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
167 | if self.__editMode |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
168 | else ( |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
169 | bool(self.nameEdit.text()) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
170 | and self.__manager.isUnique(self.nameEdit.text()) |
6716
1c9d3b369ea8
VirtualEnv Manager: extended the environment definition by a flag indicating a remotely accessed environment.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6645
diff
changeset
|
171 | ) |
6338
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
172 | ) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
173 | |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
174 | if not self.globalCheckBox.isChecked(): |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
175 | enable &= self.remoteRadioButton.isChecked() or ( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
176 | bool(self.targetDirectoryPicker.text()) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
177 | and self.targetDirectoryPicker.text() != self.__envBaseDir |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
178 | and ( |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
179 | ( |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
180 | self.serverRadioButton.isChecked() |
10931
56f41b1e163a
Fixed an issue in the virtual env manager package when used in the standalone application.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10765
diff
changeset
|
181 | and self.__fsInterface is not None |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
182 | and self.__fsInterface.exists(self.targetDirectoryPicker.text()) |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
183 | ) |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
184 | or ( |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
185 | not self.serverRadioButton.isChecked() |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
186 | and os.path.exists(self.targetDirectoryPicker.text()) |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
187 | ) |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
188 | ) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
189 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
190 | |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
191 | enable &= self.remoteRadioButton.isChecked() or ( |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
192 | bool(self.pythonExecPicker.text()) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
193 | and ( |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
194 | ( |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
195 | self.serverRadioButton.isChecked() |
10931
56f41b1e163a
Fixed an issue in the virtual env manager package when used in the standalone application.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10765
diff
changeset
|
196 | and self.__fsInterface is not None |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
197 | and self.__fsInterface.access( |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
198 | self.pythonExecPicker.text(), "execute" |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
199 | ) |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
200 | ) |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
201 | or ( |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
202 | not self.serverRadioButton.isChecked() |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
203 | and os.access(self.pythonExecPicker.text(), os.X_OK) |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
204 | ) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
205 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
206 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
207 | |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
208 | self.buttonBox.button(QDialogButtonBox.StandardButton.Ok).setEnabled(enable) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
209 | |
8986
665d14b3c01a
Virtual Environment Management: added code to autodetect the Python interpreter at several places.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8980
diff
changeset
|
210 | def __detectPythonInterpreter(self, venvDirectory): |
665d14b3c01a
Virtual Environment Management: added code to autodetect the Python interpreter at several places.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8980
diff
changeset
|
211 | """ |
9001
a00cd6b55728
Corrected some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8987
diff
changeset
|
212 | Private method to search for a suitable Python interpreter inside an |
a00cd6b55728
Corrected some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8987
diff
changeset
|
213 | environment. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
214 | |
8986
665d14b3c01a
Virtual Environment Management: added code to autodetect the Python interpreter at several places.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8980
diff
changeset
|
215 | @param venvDirectory directory for the virtual environment |
665d14b3c01a
Virtual Environment Management: added code to autodetect the Python interpreter at several places.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8980
diff
changeset
|
216 | @type str |
665d14b3c01a
Virtual Environment Management: added code to autodetect the Python interpreter at several places.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8980
diff
changeset
|
217 | @return detected Python interpreter or empty string |
665d14b3c01a
Virtual Environment Management: added code to autodetect the Python interpreter at several places.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8980
diff
changeset
|
218 | @rtype str |
665d14b3c01a
Virtual Environment Management: added code to autodetect the Python interpreter at several places.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8980
diff
changeset
|
219 | """ |
665d14b3c01a
Virtual Environment Management: added code to autodetect the Python interpreter at several places.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8980
diff
changeset
|
220 | if venvDirectory: |
665d14b3c01a
Virtual Environment Management: added code to autodetect the Python interpreter at several places.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8980
diff
changeset
|
221 | # try to determine a Python interpreter name |
9624
b47dfa7a137d
Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9473
diff
changeset
|
222 | if OSUtilities.isWindowsPlatform(): |
8986
665d14b3c01a
Virtual Environment Management: added code to autodetect the Python interpreter at several places.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8980
diff
changeset
|
223 | candidates = ( |
665d14b3c01a
Virtual Environment Management: added code to autodetect the Python interpreter at several places.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8980
diff
changeset
|
224 | os.path.join(venvDirectory, "Scripts", "python.exe"), |
665d14b3c01a
Virtual Environment Management: added code to autodetect the Python interpreter at several places.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8980
diff
changeset
|
225 | os.path.join(venvDirectory, "python.exe"), |
665d14b3c01a
Virtual Environment Management: added code to autodetect the Python interpreter at several places.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8980
diff
changeset
|
226 | ) |
665d14b3c01a
Virtual Environment Management: added code to autodetect the Python interpreter at several places.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8980
diff
changeset
|
227 | else: |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
228 | candidates = (os.path.join(venvDirectory, "bin", "python3"),) |
8986
665d14b3c01a
Virtual Environment Management: added code to autodetect the Python interpreter at several places.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8980
diff
changeset
|
229 | for py in candidates: |
665d14b3c01a
Virtual Environment Management: added code to autodetect the Python interpreter at several places.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8980
diff
changeset
|
230 | if os.path.exists(py): |
665d14b3c01a
Virtual Environment Management: added code to autodetect the Python interpreter at several places.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8980
diff
changeset
|
231 | return py |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
232 | |
8986
665d14b3c01a
Virtual Environment Management: added code to autodetect the Python interpreter at several places.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8980
diff
changeset
|
233 | return "" |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
234 | |
6338
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
235 | @pyqtSlot(str) |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
236 | def on_nameEdit_textChanged(self, txt): |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
237 | """ |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
238 | Private slot to handle changes of the logical name. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
239 | |
6338
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
240 | @param txt current logical name |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
241 | @type str |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
242 | """ |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
243 | self.__updateOk() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
244 | |
6338
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
245 | @pyqtSlot(str) |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
246 | def on_targetDirectoryPicker_textChanged(self, txt): |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
247 | """ |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
248 | Private slot to handle changes of the virtual environment directory. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
249 | |
6338
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
250 | @param txt virtual environment directory |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
251 | @type str |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
252 | """ |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
253 | self.__updateOk() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
254 | |
6338
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
255 | if txt: |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
256 | self.pythonExecPicker.setDefaultDirectory(txt) |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
257 | else: |
9624
b47dfa7a137d
Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9473
diff
changeset
|
258 | self.pythonExecPicker.setDefaultDirectory( |
b47dfa7a137d
Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9473
diff
changeset
|
259 | PythonUtilities.getPythonExecutable() |
b47dfa7a137d
Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9473
diff
changeset
|
260 | ) |
8986
665d14b3c01a
Virtual Environment Management: added code to autodetect the Python interpreter at several places.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8980
diff
changeset
|
261 | py = self.__detectPythonInterpreter(txt) |
665d14b3c01a
Virtual Environment Management: added code to autodetect the Python interpreter at several places.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8980
diff
changeset
|
262 | if py: |
665d14b3c01a
Virtual Environment Management: added code to autodetect the Python interpreter at several places.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8980
diff
changeset
|
263 | self.pythonExecPicker.setText(py) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
264 | |
6338
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
265 | @pyqtSlot(str) |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
266 | def on_pythonExecPicker_textChanged(self, txt): |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
267 | """ |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
268 | Private slot to handle changes of the virtual environment interpreter. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
269 | |
6338
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
270 | @param txt virtual environment interpreter |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
271 | @type str |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
272 | """ |
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
273 | self.__updateOk() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
274 | |
6341
a00e63f6d766
VirtualenvManager: changed code to allow environments without environment directory denoting a global environment.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6338
diff
changeset
|
275 | @pyqtSlot(bool) |
a00e63f6d766
VirtualenvManager: changed code to allow environments without environment directory denoting a global environment.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6338
diff
changeset
|
276 | def on_globalCheckBox_toggled(self, checked): |
a00e63f6d766
VirtualenvManager: changed code to allow environments without environment directory denoting a global environment.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6338
diff
changeset
|
277 | """ |
a00e63f6d766
VirtualenvManager: changed code to allow environments without environment directory denoting a global environment.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6338
diff
changeset
|
278 | Private slot handling a change of the global check box state. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
279 | |
6341
a00e63f6d766
VirtualenvManager: changed code to allow environments without environment directory denoting a global environment.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6338
diff
changeset
|
280 | @param checked state of the check box |
a00e63f6d766
VirtualenvManager: changed code to allow environments without environment directory denoting a global environment.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6338
diff
changeset
|
281 | @type bool |
a00e63f6d766
VirtualenvManager: changed code to allow environments without environment directory denoting a global environment.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6338
diff
changeset
|
282 | """ |
a00e63f6d766
VirtualenvManager: changed code to allow environments without environment directory denoting a global environment.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6338
diff
changeset
|
283 | self.__updateOk() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
284 | |
6576
ea60ea85067a
VitualEnv Manager:
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6362
diff
changeset
|
285 | @pyqtSlot(bool) |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
286 | def on_remoteRadioButton_toggled(self, checked): |
6716
1c9d3b369ea8
VirtualEnv Manager: extended the environment definition by a flag indicating a remotely accessed environment.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6645
diff
changeset
|
287 | """ |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
288 | Private slot handling a change of the remote radio button state. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
289 | |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
290 | @param checked state of the radio button |
6716
1c9d3b369ea8
VirtualEnv Manager: extended the environment definition by a flag indicating a remotely accessed environment.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6645
diff
changeset
|
291 | @type bool |
1c9d3b369ea8
VirtualEnv Manager: extended the environment definition by a flag indicating a remotely accessed environment.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6645
diff
changeset
|
292 | """ |
1c9d3b369ea8
VirtualEnv Manager: extended the environment definition by a flag indicating a remotely accessed environment.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6645
diff
changeset
|
293 | self.__updateOk() |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
294 | |
6716
1c9d3b369ea8
VirtualEnv Manager: extended the environment definition by a flag indicating a remotely accessed environment.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6645
diff
changeset
|
295 | @pyqtSlot(bool) |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
296 | def on_serverRadioButton_toggled(self, checked): |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
297 | """ |
10765
b0632e55ec9a
Changed 'eric IDE server' to 'eric-ide server'.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10725
diff
changeset
|
298 | Private slot handling a change of the eric-ide server radio button state. |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
299 | |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
300 | @param checked state of the radio button |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
301 | @type bool |
6576
ea60ea85067a
VitualEnv Manager:
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6362
diff
changeset
|
302 | """ |
10931
56f41b1e163a
Fixed an issue in the virtual env manager package when used in the standalone application.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10765
diff
changeset
|
303 | if ( |
56f41b1e163a
Fixed an issue in the virtual env manager package when used in the standalone application.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10765
diff
changeset
|
304 | self.__serverInterface is not None |
56f41b1e163a
Fixed an issue in the virtual env manager package when used in the standalone application.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10765
diff
changeset
|
305 | and self.__serverInterface.isServerConnected() |
56f41b1e163a
Fixed an issue in the virtual env manager package when used in the standalone application.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10765
diff
changeset
|
306 | ): |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
307 | self.targetDirectoryPicker.setRemote(checked) |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
308 | self.pythonExecPicker.setRemote(checked) |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
309 | self.serverLineEdit.setText( |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
310 | self.__serverInterface.getHost() if checked else "" |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
311 | ) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
312 | |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
313 | self.__updateOk() |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
314 | |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
315 | @pyqtSlot(bool) |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
316 | def on_anacondaRadioButton_clicked(self, checked): |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
317 | """ |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
318 | Private slot handling a user click on this radio button. |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
319 | |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
320 | @param checked state of the radio button |
6576
ea60ea85067a
VitualEnv Manager:
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6362
diff
changeset
|
321 | @type bool |
ea60ea85067a
VitualEnv Manager:
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6362
diff
changeset
|
322 | """ |
ea60ea85067a
VitualEnv Manager:
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6362
diff
changeset
|
323 | if checked and not bool(self.execPathEdit.text()): |
ea60ea85067a
VitualEnv Manager:
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6362
diff
changeset
|
324 | # prepopulate the execPathEdit widget |
9624
b47dfa7a137d
Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9473
diff
changeset
|
325 | if OSUtilities.isWindowsPlatform(): |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
326 | self.execPathEdit.setText( |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
327 | os.pathsep.join( |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
328 | [ |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
329 | self.targetDirectoryPicker.text(), |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
330 | os.path.join(self.targetDirectoryPicker.text(), "Scripts"), |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
331 | os.path.join( |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
332 | self.targetDirectoryPicker.text(), "Library", "bin" |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
333 | ), |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
334 | ] |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
335 | ) |
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
336 | ) |
6576
ea60ea85067a
VitualEnv Manager:
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6362
diff
changeset
|
337 | else: |
ea60ea85067a
VitualEnv Manager:
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6362
diff
changeset
|
338 | self.execPathEdit.setText( |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
339 | os.path.join(self.targetDirectoryPicker.text(), "bin"), |
6576
ea60ea85067a
VitualEnv Manager:
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6362
diff
changeset
|
340 | ) |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
341 | |
10194
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
342 | def getMetaData(self): |
6338
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
343 | """ |
10194
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
344 | Public method to retrieve the entered metadata. |
9221
bf71ee032bb4
Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9209
diff
changeset
|
345 | |
10194
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
346 | @return metadata for the virtual environment |
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
347 | @rtype VirtualenvMetaData |
6338
104ee21d765d
VirtualEnv: finished implementing a virtualenv manager.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
348 | """ |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
349 | nativePaths = ( |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
350 | not self.remoteRadioButton.isChecked() |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
351 | and not self.serverRadioButton.isChecked() |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
352 | ) |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
353 | is_eric_server = self.serverRadioButton.isChecked() |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
354 | envPath = ( |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
355 | FileSystemUtilities.remoteFileName(self.targetDirectoryPicker.text()) |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
356 | if is_eric_server |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
357 | else FileSystemUtilities.plainFileName( |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
358 | self.targetDirectoryPicker.text(toNative=nativePaths) |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
359 | ) |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
360 | ) |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
361 | interpreter = ( |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
362 | FileSystemUtilities.remoteFileName(self.pythonExecPicker.text()) |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
363 | if is_eric_server |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
364 | else FileSystemUtilities.plainFileName( |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
365 | self.pythonExecPicker.text(toNative=nativePaths) |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
366 | ) |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
367 | ) |
10194
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
368 | return VirtualenvMetaData( |
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
369 | name=self.nameEdit.text(), |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
370 | path=envPath, |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
371 | interpreter=interpreter, |
10194
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
372 | is_global=self.globalCheckBox.isChecked(), |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
373 | is_conda=self.anacondaRadioButton.isChecked(), |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
374 | is_remote=self.remoteRadioButton.isChecked(), |
10194
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
375 | exec_path=self.execPathEdit.text(), |
2c26b4fe25db
Refactored the 'VirtualEnv' code for better maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
9653
diff
changeset
|
376 | description=self.descriptionEdit.toPlainText(), |
10725
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
377 | is_eric_server=is_eric_server, |
51fe971610d3
Virtual Environment Manager
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
10439
diff
changeset
|
378 | eric_server=self.serverLineEdit.text(), |
6362
ec32d1d7f525
Virtual Environments: improved the virtual environment handling
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6349
diff
changeset
|
379 | ) |