28 class VirtualenvConfigurationDialog(QDialog, Ui_VirtualenvConfigurationDialog): |
28 class VirtualenvConfigurationDialog(QDialog, Ui_VirtualenvConfigurationDialog): |
29 """ |
29 """ |
30 Class implementing a dialog to enter the parameters for the |
30 Class implementing a dialog to enter the parameters for the |
31 virtual environment. |
31 virtual environment. |
32 """ |
32 """ |
33 def __init__(self, parent=None): |
33 def __init__(self, baseDir="", parent=None): |
34 """ |
34 """ |
35 Constructor |
35 Constructor |
36 |
36 |
|
37 @param baseDir base directory for the virtual environments |
|
38 @type str |
37 @param parent reference to the parent widget |
39 @param parent reference to the parent widget |
38 @type QWidget |
40 @type QWidget |
39 """ |
41 """ |
40 super(VirtualenvConfigurationDialog, self).__init__(parent) |
42 super(VirtualenvConfigurationDialog, self).__init__(parent) |
41 self.setupUi(self) |
43 self.setupUi(self) |
|
44 |
|
45 if not baseDir: |
|
46 baseDir = Utilities.getHomeDir() |
|
47 self.__envBaseDir = baseDir |
42 |
48 |
43 self.targetDirectoryPicker.setMode(E5PathPickerModes.DirectoryMode) |
49 self.targetDirectoryPicker.setMode(E5PathPickerModes.DirectoryMode) |
44 self.targetDirectoryPicker.setWindowTitle( |
50 self.targetDirectoryPicker.setWindowTitle( |
45 self.tr("Virtualenv Target Directory")) |
51 self.tr("Virtualenv Target Directory")) |
46 self.targetDirectoryPicker.setDefaultDirectory(Utilities.getHomeDir()) |
52 self.targetDirectoryPicker.setText(baseDir) |
|
53 self.targetDirectoryPicker.setDefaultDirectory(baseDir) |
47 |
54 |
48 self.extraSearchPathPicker.setMode(E5PathPickerModes.DirectoryMode) |
55 self.extraSearchPathPicker.setMode(E5PathPickerModes.DirectoryMode) |
49 self.extraSearchPathPicker.setWindowTitle( |
56 self.extraSearchPathPicker.setWindowTitle( |
50 self.tr("Extra Search Path for setuptools/pip")) |
57 self.tr("Extra Search Path for setuptools/pip")) |
51 self.extraSearchPathPicker.setDefaultDirectory(Utilities.getHomeDir()) |
58 self.extraSearchPathPicker.setDefaultDirectory(Utilities.getHomeDir()) |
112 def __updateOK(self): |
119 def __updateOK(self): |
113 """ |
120 """ |
114 Private method to update the enabled status of the OK button. |
121 Private method to update the enabled status of the OK button. |
115 """ |
122 """ |
116 if self.virtualenvButton.isChecked() or self.pyvenvButton.isChecked(): |
123 if self.virtualenvButton.isChecked() or self.pyvenvButton.isChecked(): |
117 self.buttonBox.button(QDialogButtonBox.Ok).setEnabled( |
124 enable = ( |
118 (self.__virtualenvFound or self.__pyvenvFound) and |
125 (self.__virtualenvFound or self.__pyvenvFound) and |
119 bool(self.targetDirectoryPicker.text()) and |
126 bool(self.targetDirectoryPicker.text()) and |
120 bool(self.nameEdit.text()) |
127 bool(self.nameEdit.text()) |
121 ) |
128 ) |
|
129 enable &= self.targetDirectoryPicker.text() != self.__envBaseDir |
|
130 self.buttonBox.button(QDialogButtonBox.Ok).setEnabled(enable) |
122 elif self.condaButton.isChecked(): |
131 elif self.condaButton.isChecked(): |
123 enable = ( |
132 enable = ( |
124 bool(self.condaNameEdit.text()) or |
133 bool(self.condaNameEdit.text()) or |
125 bool(self.condaTargetDirectoryPicker.text()) |
134 bool(self.condaTargetDirectoryPicker.text()) |
126 ) |
135 ) |