Continued porting the web browser. QtWebEngine

Mon, 07 Mar 2016 19:24:20 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Mon, 07 Mar 2016 19:24:20 +0100
branch
QtWebEngine
changeset 4821
0ce09efa00da
parent 4820
f38e4fb83ecd
child 4822
f1b9899847dc

Continued porting the web browser.

- changed the favicons dialog to use a more appropriate widget

WebBrowser/Tools/WebIconDialog.py file | annotate | diff | comparison | revisions
WebBrowser/Tools/WebIconDialog.ui file | annotate | diff | comparison | revisions
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
diff -r f38e4fb83ecd -r 0ce09efa00da WebBrowser/Tools/WebIconDialog.ui
--- a/WebBrowser/Tools/WebIconDialog.ui	Sun Mar 06 18:54:18 2016 +0100
+++ b/WebBrowser/Tools/WebIconDialog.ui	Mon Mar 07 19:24:20 2016 +0100
@@ -20,7 +20,7 @@
    <item>
     <layout class="QGridLayout" name="gridLayout">
      <item row="0" column="0" rowspan="3">
-      <widget class="QTreeWidget" name="iconsList">
+      <widget class="QListWidget" name="iconsList">
        <property name="contextMenuPolicy">
         <enum>Qt::CustomContextMenu</enum>
        </property>
@@ -30,17 +30,15 @@
        <property name="selectionMode">
         <enum>QAbstractItemView::ExtendedSelection</enum>
        </property>
+       <property name="iconSize">
+        <size>
+         <width>22</width>
+         <height>22</height>
+        </size>
+       </property>
        <property name="sortingEnabled">
         <bool>true</bool>
        </property>
-       <property name="headerHidden">
-        <bool>false</bool>
-       </property>
-       <column>
-        <property name="text">
-         <string>URL</string>
-        </property>
-       </column>
       </widget>
      </item>
      <item row="0" column="1">

eric ide

mercurial