246 venvManager = ericApp().getObject("VirtualEnvManager") |
246 venvManager = ericApp().getObject("VirtualEnvManager") |
247 venvManager.virtualEnvironmentAdded.connect( |
247 venvManager.virtualEnvironmentAdded.connect( |
248 self.on_refreshButton_clicked) |
248 self.on_refreshButton_clicked) |
249 venvManager.virtualEnvironmentRemoved.connect( |
249 venvManager.virtualEnvironmentRemoved.connect( |
250 self.on_refreshButton_clicked) |
250 self.on_refreshButton_clicked) |
|
251 self.__selectedEnvironment = None |
251 |
252 |
252 project = ericApp().getObject("Project") |
253 project = ericApp().getObject("Project") |
253 project.projectOpened.connect( |
254 project.projectOpened.connect( |
254 self.on_refreshButton_clicked) |
255 self.__projectOpened) |
255 project.projectClosed.connect( |
256 project.projectClosed.connect( |
256 self.__projectClosed) |
257 self.__projectClosed) |
257 |
258 |
258 self.__initPipMenu() |
259 self.__initPipMenu() |
259 self.__populateEnvironments() |
260 self.__populateEnvironments() |
270 |
271 |
271 self.__packageDetailsDialog = None |
272 self.__packageDetailsDialog = None |
272 |
273 |
273 self.viewsStackWidget.setCurrentWidget(self.packagesPage) |
274 self.viewsStackWidget.setCurrentWidget(self.packagesPage) |
274 |
275 |
|
276 @pyqtSlot() |
|
277 def __projectOpened(self): |
|
278 """ |
|
279 Private slot to handle the projectOpened signal. |
|
280 """ |
|
281 projectVenv = self.__pip.getProjectEnvironmentString() |
|
282 if projectVenv: |
|
283 self.environmentsComboBox.insertItem(1, projectVenv) |
|
284 |
275 @pyqtSlot(bool) |
285 @pyqtSlot(bool) |
276 def __projectClosed(self, shutdown): |
286 def __projectClosed(self, shutdown): |
277 """ |
287 """ |
278 Private slot to handle the projectClosed signal. |
288 Private slot to handle the projectClosed signal. |
279 |
289 |
280 @param shutdown flag indicating the IDE shutdown |
290 @param shutdown flag indicating the IDE shutdown |
281 @type bool |
291 @type bool |
282 """ |
292 """ |
283 if not shutdown: |
293 if not shutdown: |
284 self.on_refreshButton_clicked() |
294 # the project entry is always at index 1 |
|
295 self.environmentsComboBox.removeItem(1) |
285 |
296 |
286 def __populateEnvironments(self): |
297 def __populateEnvironments(self): |
287 """ |
298 """ |
288 Private method to get a list of environments and populate the selector. |
299 Private method to get a list of environments and populate the selector. |
289 """ |
300 """ |
463 |
474 |
464 self.__updateActionButtons() |
475 self.__updateActionButtons() |
465 self.__updateSearchActionButtons() |
476 self.__updateSearchActionButtons() |
466 self.__updateSearchButton() |
477 self.__updateSearchButton() |
467 |
478 |
468 @pyqtSlot(int) |
479 @pyqtSlot(str) |
469 def on_environmentsComboBox_currentIndexChanged(self, index): |
480 def on_environmentsComboBox_currentTextChanged(self, name): |
470 """ |
481 """ |
471 Private slot handling the selection of a Python environment. |
482 Private slot handling the selection of a Python environment. |
472 |
483 |
473 @param index index of the selected Python environment |
484 @param name name of the selected Python environment |
474 @type int |
485 @type str |
475 """ |
486 """ |
476 if self.viewToggleButton.isChecked(): |
487 if name != self.__selectedEnvironment: |
477 self.__refreshDependencyTree() |
488 if self.viewToggleButton.isChecked(): |
478 else: |
489 self.__refreshDependencyTree() |
479 self.__refreshPackagesList() |
490 else: |
|
491 self.__refreshPackagesList() |
|
492 self.__selectedEnvironment = name |
480 |
493 |
481 @pyqtSlot() |
494 @pyqtSlot() |
482 def on_localCheckBox_clicked(self): |
495 def on_localCheckBox_clicked(self): |
483 """ |
496 """ |
484 Private slot handling the switching of the local mode. |
497 Private slot handling the switching of the local mode. |