mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
PY-33729 Packaging(fix): Differentiate conda- and pip-installed packages in the list
GitOrigin-RevId: 4cf31ad0ec6415d22c8410ca72ca65f5495d6af3
This commit is contained in:
committed by
intellij-monorepo-bot
parent
cb9efa4ec1
commit
3c9b04806c
@@ -2,17 +2,32 @@
|
||||
package com.jetbrains.python.packaging.toolwindow.model
|
||||
|
||||
import com.intellij.openapi.util.NlsSafe
|
||||
import com.jetbrains.python.icons.PythonIcons
|
||||
import com.jetbrains.python.packaging.PyPackageVersion
|
||||
import com.jetbrains.python.packaging.PyPackageVersionComparator
|
||||
import com.jetbrains.python.packaging.PyPackageVersionNormalizer
|
||||
import com.jetbrains.python.packaging.common.PythonPackage
|
||||
import com.jetbrains.python.packaging.conda.CondaPackage
|
||||
import com.jetbrains.python.packaging.repository.PyPackageRepository
|
||||
import com.jetbrains.python.psi.icons.PythonPsiApiIcons
|
||||
import javax.swing.Icon
|
||||
|
||||
sealed class DisplayablePackage(@NlsSafe val name: String, val repository: PyPackageRepository)
|
||||
|
||||
class InstalledPackage(val instance: PythonPackage, repository: PyPackageRepository, val nextVersion: PyPackageVersion? = null) : DisplayablePackage(instance.name, repository) {
|
||||
val currentVersion = PyPackageVersionNormalizer.normalize(instance.version)
|
||||
|
||||
val icon: Icon?
|
||||
get() {
|
||||
val condaPackage = instance as? CondaPackage ?: return null
|
||||
return if (condaPackage.installedWithPip) {
|
||||
PythonPsiApiIcons.Python
|
||||
}
|
||||
else {
|
||||
PythonIcons.Python.Anaconda
|
||||
}
|
||||
}
|
||||
|
||||
val canBeUpdated: Boolean
|
||||
get() {
|
||||
currentVersion ?: return false
|
||||
|
||||
+1
@@ -88,6 +88,7 @@ internal class PyPaginationAwareRenderer : DefaultTableCellRenderer() {
|
||||
versionLabel.text = version
|
||||
versionPanel.add(versionLabel)
|
||||
}
|
||||
versionLabel.icon = (value as? InstalledPackage)?.icon
|
||||
return versionPanel
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user