src/eric7/WebBrowser/Bookmarks/XbelReader.py

branch
eric7
changeset 9221
bf71ee032bb4
parent 9209
b99e7fd55fd3
child 9473
3f23dbf37dbe
diff -r e9e7eca7efee -r bf71ee032bb4 src/eric7/WebBrowser/Bookmarks/XbelReader.py
--- a/src/eric7/WebBrowser/Bookmarks/XbelReader.py	Wed Jul 13 11:16:20 2022 +0200
+++ b/src/eric7/WebBrowser/Bookmarks/XbelReader.py	Wed Jul 13 14:55:47 2022 +0200
@@ -8,8 +8,14 @@
 """
 
 from PyQt6.QtCore import (
-    QXmlStreamReader, QXmlStreamEntityResolver, QIODevice, QFile,
-    QCoreApplication, QXmlStreamNamespaceDeclaration, QDateTime, Qt
+    QXmlStreamReader,
+    QXmlStreamEntityResolver,
+    QIODevice,
+    QFile,
+    QCoreApplication,
+    QXmlStreamNamespaceDeclaration,
+    QDateTime,
+    Qt,
 )
 
 from .BookmarkNode import BookmarkNode
@@ -19,10 +25,11 @@
     """
     Class implementing an XML entity resolver for bookmark files.
     """
+
     def resolveUndeclaredEntity(self, entity):
         """
         Public method to resolve undeclared entities.
-        
+
         @param entity entity to be resolved (string)
         @return resolved entity (string)
         """
@@ -35,19 +42,20 @@
     """
     Class implementing a reader object for XBEL bookmark files.
     """
+
     def __init__(self):
         """
         Constructor
         """
         super().__init__()
-        
+
         self.__resolver = XmlEntityResolver()
         self.setEntityResolver(self.__resolver)
-    
+
     def read(self, fileNameOrDevice):
         """
         Public method to read an XBEL bookmark file.
-        
+
         @param fileNameOrDevice name of the file to read (string)
             or reference to the device to read (QIODevice)
         @return reference to the root node (BookmarkNode)
@@ -60,38 +68,37 @@
                 return BookmarkNode(BookmarkNode.Root)
             f.open(QIODevice.OpenModeFlag.ReadOnly)
             self.setDevice(f)
-        
+
         root = BookmarkNode(BookmarkNode.Root)
         while not self.atEnd():
             self.readNext()
             if self.isStartElement():
                 version = self.attributes().value("version")
-                if (
-                    self.name() == "xbel" and
-                    (not version or version == "1.0")
-                ):
+                if self.name() == "xbel" and (not version or version == "1.0"):
                     self.__readXBEL(root)
                 else:
-                    self.raiseError(QCoreApplication.translate(
-                        "XbelReader",
-                        "The file is not an XBEL version 1.0 file."))
-        
+                    self.raiseError(
+                        QCoreApplication.translate(
+                            "XbelReader", "The file is not an XBEL version 1.0 file."
+                        )
+                    )
+
         return root
-    
+
     def __readXBEL(self, node):
         """
         Private method to read and parse the XBEL file.
-        
+
         @param node reference to the node to attach to (BookmarkNode)
         """
         if not self.isStartElement() and self.name() != "xbel":
             return
-        
+
         while not self.atEnd():
             self.readNext()
             if self.isEndElement():
                 break
-            
+
             if self.isStartElement():
                 if self.name() == "folder":
                     self.__readFolder(node)
@@ -101,26 +108,27 @@
                     self.__readSeparator(node)
                 else:
                     self.__skipUnknownElement()
-    
+
     def __readFolder(self, node):
         """
         Private method to read and parse a folder subtree.
-        
+
         @param node reference to the node to attach to (BookmarkNode)
         """
         if not self.isStartElement() and self.name() != "folder":
             return
-        
+
         folder = BookmarkNode(BookmarkNode.Folder, node)
         folder.expanded = self.attributes().value("folded") == "no"
         folder.added = QDateTime.fromString(
-            self.attributes().value("added"), Qt.DateFormat.ISODate)
-        
+            self.attributes().value("added"), Qt.DateFormat.ISODate
+        )
+
         while not self.atEnd():
             self.readNext()
             if self.isEndElement():
                 break
-            
+
             if self.isStartElement():
                 if self.name() == "title":
                     self.__readTitle(folder)
@@ -136,81 +144,85 @@
                     self.__readInfo()
                 else:
                     self.__skipUnknownElement()
-    
+
     def __readTitle(self, node):
         """
         Private method to read the title element.
-        
+
         @param node reference to the bookmark node title belongs to
             (BookmarkNode)
         """
         if not self.isStartElement() and self.name() != "title":
             return
-        
+
         node.title = self.readElementText()
-    
+
     def __readDescription(self, node):
         """
         Private method to read the desc element.
-        
+
         @param node reference to the bookmark node desc belongs to
             (BookmarkNode)
         """
         if not self.isStartElement() and self.name() != "desc":
             return
-        
+
         node.desc = self.readElementText()
-    
+
     def __readSeparator(self, node):
         """
         Private method to read a separator element.
-        
+
         @param node reference to the bookmark node the separator belongs to
             (BookmarkNode)
         """
         sep = BookmarkNode(BookmarkNode.Separator, node)
         sep.added = QDateTime.fromString(
-            self.attributes().value("added"), Qt.DateFormat.ISODate)
-        
+            self.attributes().value("added"), Qt.DateFormat.ISODate
+        )
+
         # empty elements have a start and end element
         while not self.atEnd():
             self.readNext()
             if self.isEndElement():
                 break
-            
+
             if self.isStartElement():
                 if self.name() == "info":
                     self.__readInfo()
                 else:
                     self.__skipUnknownElement()
-    
+
     def __readBookmarkNode(self, node):
         """
         Private method to read and parse a bookmark subtree.
-        
+
         @param node reference to the node to attach to (BookmarkNode)
         """
         if not self.isStartElement() and self.name() != "bookmark":
             return
-        
+
         bookmark = BookmarkNode(BookmarkNode.Bookmark, node)
         bookmark.url = self.attributes().value("href")
         bookmark.added = QDateTime.fromString(
-            self.attributes().value("added"), Qt.DateFormat.ISODate)
+            self.attributes().value("added"), Qt.DateFormat.ISODate
+        )
         bookmark.modified = QDateTime.fromString(
-            self.attributes().value("modified"), Qt.DateFormat.ISODate)
+            self.attributes().value("modified"), Qt.DateFormat.ISODate
+        )
         bookmark.visited = QDateTime.fromString(
-            self.attributes().value("visited"), Qt.DateFormat.ISODate)
+            self.attributes().value("visited"), Qt.DateFormat.ISODate
+        )
         try:
             bookmark.visitCount = int(self.attributes().value("visitCount"))
         except ValueError:
             bookmark.visitCount = 0
-        
+
         while not self.atEnd():
             self.readNext()
             if self.isEndElement():
                 break
-            
+
             if self.isStartElement():
                 if self.name() == "title":
                     self.__readTitle(bookmark)
@@ -220,19 +232,19 @@
                     self.__readInfo()
                 else:
                     self.__skipUnknownElement()
-        
+
         if not bookmark.title:
-            bookmark.title = QCoreApplication.translate(
-                "XbelReader", "Unknown title")
-    
+            bookmark.title = QCoreApplication.translate("XbelReader", "Unknown title")
+
     def __readInfo(self):
         """
         Private method to read and parse an info subtree.
         """
-        self.addExtraNamespaceDeclaration(QXmlStreamNamespaceDeclaration(
-            "bookmark", "http://www.python.org"))
+        self.addExtraNamespaceDeclaration(
+            QXmlStreamNamespaceDeclaration("bookmark", "http://www.python.org")
+        )
         self.skipCurrentElement()
-    
+
     def __skipUnknownElement(self):
         """
         Private method to skip over all unknown elements.

eric ide

mercurial