--- a/VirtualEnv/VirtualenvManagerDialog.py Sat Nov 03 14:16:43 2018 +0100 +++ b/VirtualEnv/VirtualenvManagerDialog.py Sat Nov 03 14:19:21 2018 +0100 @@ -23,6 +23,8 @@ """ PythonVariantRole = Qt.UserRole IsGlobalRole = Qt.UserRole + 1 + IsCondaRole = Qt.UserRole + 2 + ExecPathRole = Qt.UserRole + 3 def __init__(self, manager, parent=None): """ @@ -90,11 +92,11 @@ dlg = VirtualenvAddEditDialog(self.__manager) if dlg.exec_() == QDialog.Accepted: (venvName, venvDirectory, venvInterpreter, venvVariant, - isGlobal) = dlg.getData() + isGlobal, isConda, execPath) = dlg.getData() self.__manager.addVirtualEnv(venvName, venvDirectory, venvInterpreter, venvVariant, - isGlobal) + isGlobal, isConda, execPath) @pyqtSlot() def on_newButton_clicked(self): @@ -116,19 +118,21 @@ self.__manager, selectedItem.text(0), selectedItem.text(1), selectedItem.text(2), selectedItem.data(0, VirtualenvManagerDialog.PythonVariantRole), - selectedItem.data(0, VirtualenvManagerDialog.IsGlobalRole) + selectedItem.data(0, VirtualenvManagerDialog.IsGlobalRole), + selectedItem.data(0, VirtualenvManagerDialog.IsCondaRole), + selectedItem.data(0, VirtualenvManagerDialog.ExecPathRole), ) if dlg.exec_() == QDialog.Accepted: (venvName, venvDirectory, venvInterpreter, venvVariant, - isGlobal) = dlg.getData() + isGlobal, isConda, execPath) = dlg.getData() if venvName != oldVenvName: self.__manager.renameVirtualEnv( oldVenvName, venvName, venvDirectory, venvInterpreter, - venvVariant, isGlobal) + venvVariant, isGlobal, isConda, execPath) else: self.__manager.setVirtualEnv( venvName, venvDirectory, venvInterpreter, venvVariant, - isGlobal) + isGlobal, isConda, execPath) @pyqtSlot() def on_removeButton_clicked(self): @@ -226,6 +230,24 @@ environments[venvName]["variant"]) itm.setData(0, VirtualenvManagerDialog.IsGlobalRole, environments[venvName]["is_global"]) + itm.setData(0, VirtualenvManagerDialog.IsCondaRole, + environments[venvName]["is_conda"]) + itm.setData(0, VirtualenvManagerDialog.ExecPathRole, + environments[venvName]["exec_path"]) + + # show global environments with bold font + if environments[venvName]["is_global"]: + font = itm.font(0) + font.setBold(True) + for column in range(itm.columnCount()): + itm.setFont(column, font) + + # show Anaconda environments with italic font + elif environments[venvName]["is_conda"]: + font = itm.font(0) + font.setItalic(True) + for column in range(itm.columnCount()): + itm.setFont(column, font) self.__resizeSections()