src/eric7/UI/VersionsDialog.py

branch
eric7
changeset 9578
bbe0a4b0832e
parent 9473
3f23dbf37dbe
child 9580
123a7eadc798
equal deleted inserted replaced
9577:a0600d883f9e 9578:bbe0a4b0832e
76 ) 76 )
77 entryTemplate = self.tr("<tr><td><b>{0}</b></td><td>{1}</td><td>{2}</td></tr>") 77 entryTemplate = self.tr("<tr><td><b>{0}</b></td><td>{1}</td><td>{2}</td></tr>")
78 78
79 msg = "" 79 msg = ""
80 80
81 pip = ericApp().getObject("Pip") 81 with EricOverrideCursor():
82 venvManager = ericApp().getObject("VirtualEnvManager") 82 pip = ericApp().getObject("Pip")
83 pyqtUpdateAvailable, pyqtVersionsData = pip.checkPackageOutdated(
84 "pyqt6", "system>", interpreter=sys.executable
85 )
86 ericUpdateAvailable, ericVersionsData = pip.checkPackageOutdated(
87 "eric-ide", "system>", interpreter=sys.executable
88 )
83 89
84 environmentName = ( 90 if pyqtUpdateAvailable or ericUpdateAvailable:
85 venvManager.environmentForInterpreter(sys.executable)[0] 91 self.buttonBox.removeButton(self.__checkUpdateButton)
86 # just the name is needed 92 self.__checkUpdateButton = None
93 else:
94 msg = self.tr("No upgrades available.")
95
96 if ericUpdateAvailable:
97 self.__upgradeEricButton = self.buttonBox.addButton(
98 upgradeButtonTemplate.format("eric7"),
99 QDialogButtonBox.ButtonRole.ActionRole,
100 )
101 self.__upgradeEricButton.clicked.connect(self.__ui.upgradeEric)
102 msg += headerTemplate.format("eric7")
103 msg += tableTemplate.format(entryTemplate.format(*ericVersionsData[0]))
104
105 if pyqtUpdateAvailable:
106 self.__upgradePyQtButton = self.buttonBox.addButton(
107 upgradeButtonTemplate.format("PyQt6"),
108 QDialogButtonBox.ButtonRole.ActionRole,
109 )
110 self.__upgradePyQtButton.clicked.connect(self.__ui.upgradePyQt)
111 msg += headerTemplate.format("PyQt6")
112 msg += tableTemplate.format(
113 "".join(entryTemplate.format(*v) for v in pyqtVersionsData)
114 )
115
116 if ericUpdateAvailable and pyqtUpdateAvailable:
117 self.__upgradeBothButton = self.buttonBox.addButton(
118 upgradeButtonTemplate.format(self.tr("Both")),
119 QDialogButtonBox.ButtonRole.ActionRole,
120 )
121 self.__upgradeBothButton.clicked.connect(self.__ui.upgradeEricPyQt)
122
123 self.buttonBox.button(QDialogButtonBox.StandardButton.Ok).setDefault(True)
124 self.buttonBox.button(QDialogButtonBox.StandardButton.Ok).setFocus(
125 Qt.FocusReason.OtherFocusReason
87 ) 126 )
88 127
89 if environmentName: 128 EricMessageBox.information(self, self.tr("Check for Upgrades"), msg)
90 with EricOverrideCursor():
91 pyqtUpdateAvailable, pyqtVersionsData = pip.checkPackageOutdated(
92 "pyqt6", environmentName
93 )
94 ericUpdateAvailable, ericVersionsData = pip.checkPackageOutdated(
95 "eric-ide", environmentName
96 )
97
98 if pyqtUpdateAvailable or ericUpdateAvailable:
99 self.buttonBox.removeButton(self.__checkUpdateButton)
100 self.__checkUpdateButton = None
101 else:
102 msg = self.tr("No upgrades available.")
103
104 if ericUpdateAvailable:
105 self.__upgradeEricButton = self.buttonBox.addButton(
106 upgradeButtonTemplate.format("eric7"),
107 QDialogButtonBox.ButtonRole.ActionRole,
108 )
109 self.__upgradeEricButton.clicked.connect(self.__ui.upgradeEric)
110 msg += headerTemplate.format("eric7")
111 msg += tableTemplate.format(entryTemplate.format(*ericVersionsData[0]))
112
113 if pyqtUpdateAvailable:
114 self.__upgradePyQtButton = self.buttonBox.addButton(
115 upgradeButtonTemplate.format("PyQt6"),
116 QDialogButtonBox.ButtonRole.ActionRole,
117 )
118 self.__upgradePyQtButton.clicked.connect(self.__ui.upgradePyQt)
119 msg += headerTemplate.format("PyQt6")
120 msg += tableTemplate.format(
121 "".join(entryTemplate.format(*v) for v in pyqtVersionsData)
122 )
123
124 if ericUpdateAvailable and pyqtUpdateAvailable:
125 self.__upgradeBothButton = self.buttonBox.addButton(
126 upgradeButtonTemplate.format(self.tr("Both")),
127 QDialogButtonBox.ButtonRole.ActionRole,
128 )
129 self.__upgradeBothButton.clicked.connect(self.__ui.upgradeEricPyQt)
130
131 self.buttonBox.button(QDialogButtonBox.StandardButton.Ok).setDefault(True)
132 self.buttonBox.button(QDialogButtonBox.StandardButton.Ok).setFocus(
133 Qt.FocusReason.OtherFocusReason
134 )
135
136 EricMessageBox.information(self, self.tr("Check for Upgrades"), msg)

eric ide

mercurial