コード例 #1
0
ファイル: treexmlparse.py プロジェクト: rodolfoap/treeline141
 def startElement(self, name, attrs):
     """Called by the reader at the open tag of each element"""
     if name == u'folder' or name == u'xbel':
         newItem = TreeItem(self.currentItem, self.folderFormat.name)
         if self.currentItem:
             self.currentItem.childList.append(newItem)
         else:
             self.rootItem = newItem
         if attrs.get(u'folded', '') == 'no':
             newItem.open = True
         self.currentItem = newItem
     elif name == u'bookmark':
         newItem = TreeItem(self.currentItem, self.bookmarkFormat.name)
         if self.currentItem:
             self.currentItem.childList.append(newItem)
         else:
             raise xml.sax.SAXException, 'No valid parent folder'
         newItem.data[TreeFormats.linkFieldName] = attrs.get(u'href', '')
         self.currentItem = newItem
     elif name == u'title':
         self.text = ''
     elif name == u'separator':
         newItem = TreeItem(self.currentItem, self.separatorFormat.name)
         if self.currentItem:
             self.currentItem.childList.append(newItem)
         else:
             raise xml.sax.SAXException, 'No valid parent folder'
         self.currentItem = newItem
     else:  # unsupported tags
         pass