Tue, 15 Mar 2022 19:52:29 +0100
pip Interface: Fine tuned the mouse behavior of the pip packages list.
--- a/eric7/APIs/Python3/eric7.api Tue Mar 15 17:59:54 2022 +0100 +++ b/eric7/APIs/Python3/eric7.api Tue Mar 15 19:52:29 2022 +0100 @@ -3123,8 +3123,9 @@ eric7.PipInterface.PipPackagesWidget.PipPackagesWidget.on_installedFilesCheckBox_clicked?4(checked) eric7.PipInterface.PipPackagesWidget.PipPackagesWidget.on_localCheckBox_clicked?4() eric7.PipInterface.PipPackagesWidget.PipPackagesWidget.on_notRequiredCheckBox_clicked?4() -eric7.PipInterface.PipPackagesWidget.PipPackagesWidget.on_packagesList_itemClicked?4(item, column) -eric7.PipInterface.PipPackagesWidget.PipPackagesWidget.on_packagesList_itemDoubleClicked?4(item, column) +eric7.PipInterface.PipPackagesWidget.PipPackagesWidget.on_packagesList_itemActivated?4(item, column) +eric7.PipInterface.PipPackagesWidget.PipPackagesWidget.on_packagesList_itemPressed?4(item, column) +eric7.PipInterface.PipPackagesWidget.PipPackagesWidget.on_packagesList_itemSelectionChanged?4() eric7.PipInterface.PipPackagesWidget.PipPackagesWidget.on_refreshButton_clicked?4() eric7.PipInterface.PipPackagesWidget.PipPackagesWidget.on_searchButton_clicked?4() eric7.PipInterface.PipPackagesWidget.PipPackagesWidget.on_searchEditName_returnPressed?4()
--- a/eric7/Documentation/Help/source.qhp Tue Mar 15 17:59:54 2022 +0100 +++ b/eric7/Documentation/Help/source.qhp Tue Mar 15 19:52:29 2022 +0100 @@ -11455,8 +11455,9 @@ <keyword name="PipPackagesWidget.on_installedFilesCheckBox_clicked" id="PipPackagesWidget.on_installedFilesCheckBox_clicked" ref="eric7.PipInterface.PipPackagesWidget.html#PipPackagesWidget.on_installedFilesCheckBox_clicked" /> <keyword name="PipPackagesWidget.on_localCheckBox_clicked" id="PipPackagesWidget.on_localCheckBox_clicked" ref="eric7.PipInterface.PipPackagesWidget.html#PipPackagesWidget.on_localCheckBox_clicked" /> <keyword name="PipPackagesWidget.on_notRequiredCheckBox_clicked" id="PipPackagesWidget.on_notRequiredCheckBox_clicked" ref="eric7.PipInterface.PipPackagesWidget.html#PipPackagesWidget.on_notRequiredCheckBox_clicked" /> - <keyword name="PipPackagesWidget.on_packagesList_itemClicked" id="PipPackagesWidget.on_packagesList_itemClicked" ref="eric7.PipInterface.PipPackagesWidget.html#PipPackagesWidget.on_packagesList_itemClicked" /> - <keyword name="PipPackagesWidget.on_packagesList_itemDoubleClicked" id="PipPackagesWidget.on_packagesList_itemDoubleClicked" ref="eric7.PipInterface.PipPackagesWidget.html#PipPackagesWidget.on_packagesList_itemDoubleClicked" /> + <keyword name="PipPackagesWidget.on_packagesList_itemActivated" id="PipPackagesWidget.on_packagesList_itemActivated" ref="eric7.PipInterface.PipPackagesWidget.html#PipPackagesWidget.on_packagesList_itemActivated" /> + <keyword name="PipPackagesWidget.on_packagesList_itemPressed" id="PipPackagesWidget.on_packagesList_itemPressed" ref="eric7.PipInterface.PipPackagesWidget.html#PipPackagesWidget.on_packagesList_itemPressed" /> + <keyword name="PipPackagesWidget.on_packagesList_itemSelectionChanged" id="PipPackagesWidget.on_packagesList_itemSelectionChanged" ref="eric7.PipInterface.PipPackagesWidget.html#PipPackagesWidget.on_packagesList_itemSelectionChanged" /> <keyword name="PipPackagesWidget.on_refreshButton_clicked" id="PipPackagesWidget.on_refreshButton_clicked" ref="eric7.PipInterface.PipPackagesWidget.html#PipPackagesWidget.on_refreshButton_clicked" /> <keyword name="PipPackagesWidget.on_searchButton_clicked" id="PipPackagesWidget.on_searchButton_clicked" ref="eric7.PipInterface.PipPackagesWidget.html#PipPackagesWidget.on_searchButton_clicked" /> <keyword name="PipPackagesWidget.on_searchEditName_returnPressed" id="PipPackagesWidget.on_searchEditName_returnPressed" ref="eric7.PipInterface.PipPackagesWidget.html#PipPackagesWidget.on_searchEditName_returnPressed" />
--- a/eric7/Documentation/Source/eric7.PipInterface.PipPackagesWidget.html Tue Mar 15 17:59:54 2022 +0100 +++ b/eric7/Documentation/Source/eric7.PipInterface.PipPackagesWidget.html Tue Mar 15 19:52:29 2022 +0100 @@ -259,12 +259,16 @@ <td>Private slot handling the switching of the 'not required' mode.</td> </tr> <tr> -<td><a href="#PipPackagesWidget.on_packagesList_itemClicked">on_packagesList_itemClicked</a></td> -<td>Private slot reacting on a package item click.</td> +<td><a href="#PipPackagesWidget.on_packagesList_itemActivated">on_packagesList_itemActivated</a></td> +<td>Private slot reacting on a package item being activated.</td> </tr> <tr> -<td><a href="#PipPackagesWidget.on_packagesList_itemDoubleClicked">on_packagesList_itemDoubleClicked</a></td> -<td>Private slot reacting on a package item double click.</td> +<td><a href="#PipPackagesWidget.on_packagesList_itemPressed">on_packagesList_itemPressed</a></td> +<td>Private slot reacting on a package item being pressed.</td> +</tr> +<tr> +<td><a href="#PipPackagesWidget.on_packagesList_itemSelectionChanged">on_packagesList_itemSelectionChanged</a></td> +<td>Private slot reacting on a change of selected items.</td> </tr> <tr> <td><a href="#PipPackagesWidget.on_refreshButton_clicked">on_refreshButton_clicked</a></td> @@ -879,42 +883,49 @@ <p> Private slot handling the switching of the 'not required' mode. </p> -<a NAME="PipPackagesWidget.on_packagesList_itemClicked" ID="PipPackagesWidget.on_packagesList_itemClicked"></a> -<h4>PipPackagesWidget.on_packagesList_itemClicked</h4> -<b>on_packagesList_itemClicked</b>(<i>item, column</i>) +<a NAME="PipPackagesWidget.on_packagesList_itemActivated" ID="PipPackagesWidget.on_packagesList_itemActivated"></a> +<h4>PipPackagesWidget.on_packagesList_itemActivated</h4> +<b>on_packagesList_itemActivated</b>(<i>item, column</i>) <p> - Private slot reacting on a package item click. + Private slot reacting on a package item being activated. </p> <dl> <dt><i>item</i> (QTreeWidgetItem)</dt> <dd> -reference to the clicked item +reference to the activated item </dd> <dt><i>column</i> (int)</dt> <dd> -clicked column +activated column </dd> </dl> -<a NAME="PipPackagesWidget.on_packagesList_itemDoubleClicked" ID="PipPackagesWidget.on_packagesList_itemDoubleClicked"></a> -<h4>PipPackagesWidget.on_packagesList_itemDoubleClicked</h4> -<b>on_packagesList_itemDoubleClicked</b>(<i>item, column</i>) +<a NAME="PipPackagesWidget.on_packagesList_itemPressed" ID="PipPackagesWidget.on_packagesList_itemPressed"></a> +<h4>PipPackagesWidget.on_packagesList_itemPressed</h4> +<b>on_packagesList_itemPressed</b>(<i>item, column</i>) <p> - Private slot reacting on a package item double click. + Private slot reacting on a package item being pressed. </p> <dl> <dt><i>item</i> (QTreeWidgetItem)</dt> <dd> -reference to the double clicked item +reference to the pressed item </dd> <dt><i>column</i> (int)</dt> <dd> -double clicked column +pressed column </dd> </dl> +<a NAME="PipPackagesWidget.on_packagesList_itemSelectionChanged" ID="PipPackagesWidget.on_packagesList_itemSelectionChanged"></a> +<h4>PipPackagesWidget.on_packagesList_itemSelectionChanged</h4> +<b>on_packagesList_itemSelectionChanged</b>(<i></i>) + +<p> + Private slot reacting on a change of selected items. +</p> <a NAME="PipPackagesWidget.on_refreshButton_clicked" ID="PipPackagesWidget.on_refreshButton_clicked"></a> <h4>PipPackagesWidget.on_refreshButton_clicked</h4> <b>on_refreshButton_clicked</b>(<i></i>)
--- a/eric7/PipInterface/PipPackagesWidget.py Tue Mar 15 17:59:54 2022 +0100 +++ b/eric7/PipInterface/PipPackagesWidget.py Tue Mar 15 19:52:29 2022 +0100 @@ -529,43 +529,52 @@ ): header.setStretchLastSection(True) - @pyqtSlot(QTreeWidgetItem, int) - def on_packagesList_itemClicked(self, item, column): + @pyqtSlot() + def on_packagesList_itemSelectionChanged(self): + """ + Private slot reacting on a change of selected items. """ - Private slot reacting on a package item click. + if len(self.packagesList.selectedItems()) == 0: + self.infoWidget.clear() + + @pyqtSlot(QTreeWidgetItem, int) + def on_packagesList_itemPressed(self, item, column): + """ + Private slot reacting on a package item being pressed. - @param item reference to the clicked item + @param item reference to the pressed item @type QTreeWidgetItem - @param column clicked column + @param column pressed column @type int """ self.infoWidget.clear() - if ( - column == PipPackagesWidget.VulnerabilityColumn and - bool(item.text(PipPackagesWidget.VulnerabilityColumn)) - ): - self.__showVulnerabilityInformation( - item.text(PipPackagesWidget.PackageColumn), - item.text(PipPackagesWidget.InstalledVersionColumn), - item.data(PipPackagesWidget.VulnerabilityColumn, - PipPackagesWidget.VulnerabilityRole) - ) - else: - self.__showPackageInformation( - item.text(PipPackagesWidget.PackageColumn) - ) + if item is not None: + if ( + column == PipPackagesWidget.VulnerabilityColumn and + bool(item.text(PipPackagesWidget.VulnerabilityColumn)) + ): + self.__showVulnerabilityInformation( + item.text(PipPackagesWidget.PackageColumn), + item.text(PipPackagesWidget.InstalledVersionColumn), + item.data(PipPackagesWidget.VulnerabilityColumn, + PipPackagesWidget.VulnerabilityRole) + ) + else: + self.__showPackageInformation( + item.text(PipPackagesWidget.PackageColumn) + ) self.__updateActionButtons() @pyqtSlot(QTreeWidgetItem, int) - def on_packagesList_itemDoubleClicked(self, item, column): + def on_packagesList_itemActivated(self, item, column): """ - Private slot reacting on a package item double click. + Private slot reacting on a package item being activated. - @param item reference to the double clicked item + @param item reference to the activated item @type QTreeWidgetItem - @param column double clicked column + @param column activated column @type int """ packageName = item.text(PipPackagesWidget.PackageColumn)