--- a/eric7/VirtualEnv/VirtualenvManagerWidgets.py Thu Sep 16 19:31:00 2021 +0200 +++ b/eric7/VirtualEnv/VirtualenvManagerWidgets.py Fri Sep 17 19:04:07 2021 +0200 @@ -15,6 +15,7 @@ ) from EricWidgets.EricPathPicker import EricPathPickerModes +from EricWidgets.EricMainWindow import EricMainWindow from .Ui_VirtualenvManagerWidget import Ui_VirtualenvManagerWidget @@ -351,4 +352,39 @@ self.buttonBox.accepted.connect(self.accept) self.buttonBox.rejected.connect(self.reject) -# TODO: add a VirtualenvManagerWindow class and am associated script + +class VirtualenvManagerWindow(EricMainWindow): + """ + Main window class for the standalone virtual environments manager. + """ + def __init__(self, parent=None): + """ + Constructor + + @param parent reference to the parent widget (QWidget) + """ + super().__init__(parent) + + from VirtualEnv.VirtualenvManager import VirtualenvManager + self.__virtualenvManager = VirtualenvManager(self) + + self.__centralWidget = QWidget(self) + self.__layout = QVBoxLayout(self.__centralWidget) + self.__centralWidget.setLayout(self.__layout) + + self.__virtualenvManagerWidget = VirtualenvManagerWidget( + self.__virtualenvManager, self.__centralWidget) + self.__layout.addWidget(self.__virtualenvManagerWidget) + + self.__buttonBox = QDialogButtonBox( + QDialogButtonBox.StandardButton.Close, + Qt.Orientation.Horizontal, + self) + self.__layout.addWidget(self.__buttonBox) + + self.setCentralWidget(self.__centralWidget) + self.resize(700, 500) + self.setWindowTitle(self.tr("Manage Virtual Environments")) + + self.__buttonBox.accepted.connect(self.close) + self.__buttonBox.rejected.connect(self.close)