diff -r f38e4fb83ecd -r 0ce09efa00da WebBrowser/Tools/WebIconDialog.py --- a/WebBrowser/Tools/WebIconDialog.py Sun Mar 06 18:54:18 2016 +0100 +++ b/WebBrowser/Tools/WebIconDialog.py Mon Mar 07 19:24:20 2016 +0100 @@ -8,7 +8,7 @@ """ from PyQt5.QtCore import pyqtSlot, Qt, QPoint -from PyQt5.QtWidgets import QDialog, QTreeWidgetItem, QMenu +from PyQt5.QtWidgets import QDialog, QListWidgetItem, QMenu from .Ui_WebIconDialog import Ui_WebIconDialog @@ -30,9 +30,8 @@ self.setupUi(self) for url, icon in iconsDB.items(): - itm = QTreeWidgetItem(self.iconsList, [url]) - itm.setIcon(0, icon) - self.iconsList.sortItems(0, Qt.AscendingOrder) + QListWidgetItem(icon, url, self.iconsList) + self.iconsList.sortItems(Qt.AscendingOrder) self.__setRemoveButtons() @@ -40,7 +39,7 @@ """ Private method to set the state of the 'remove' buttons. """ - self.removeAllButton.setEnabled(self.iconsList.topLevelItemCount() > 0) + self.removeAllButton.setEnabled(self.iconsList.count() > 0) self.removeButton.setEnabled(len(self.iconsList.selectedItems()) > 0) @pyqtSlot(QPoint) @@ -59,7 +58,7 @@ menu.addAction( self.tr("Remove All"), self.on_removeAllButton_clicked).setEnabled( - self.iconsList.topLevelItemCount() > 0) + self.iconsList.count() > 0) menu.exec_(self.iconsList.mapToGlobal(pos)) @@ -76,8 +75,8 @@ Private slot to remove the selected items. """ for itm in self.iconsList.selectedItems(): - index = self.iconsList.indexOfTopLevelItem(itm) - self.iconsList.takeTopLevelItem(index) + row = self.iconsList.row(itm) + self.iconsList.takeItem(row) del itm @pyqtSlot() @@ -95,7 +94,7 @@ @rtype list of str """ urls = [] - for index in range(self.iconsList.topLevelItemCount()): - urls.append(self.iconsList.topLevelItem(index).text(0)) + for row in range(self.iconsList.count()): + urls.append(self.iconsList.item(row).text()) return urls