diff options
Diffstat (limited to 'src/lib/bookmarks')
| -rw-r--r-- | src/lib/bookmarks/xbel.cpp | 7 | 
1 files changed, 6 insertions, 1 deletions
diff --git a/src/lib/bookmarks/xbel.cpp b/src/lib/bookmarks/xbel.cpp index 55392a1..523ed99 100644 --- a/src/lib/bookmarks/xbel.cpp +++ b/src/lib/bookmarks/xbel.cpp @@ -88,7 +88,9 @@ void Xbel::readChildElements(QTreeWidgetItem *parentItem)          if(xmlReader.name() == "title") {              readTitle(parentItem);          } else if(xmlReader.name() == "folder") { -            readChildElements(addFolder(parentItem)); +            QTreeWidgetItem *item = addFolder(parentItem); +            item->setText(1, xmlReader.attributes().value("href").toString()); +            readChildElements(item);          } else if(xmlReader.name() == "bookmark") {              QTreeWidgetItem *item = addBookmark(parentItem);              item->setText(1, xmlReader.attributes().value("href").toString()); @@ -169,6 +171,9 @@ void Xbel::writeItem(QTreeWidgetItem *item)      QString tagName = item->data(0, Qt::UserRole).toString();      if (tagName == "folder") {          xmlWriter.writeStartElement(tagName); +        if(!item->text(1).isEmpty()) { +            xmlWriter.writeAttribute("href", item->text(1)); +        }          xmlWriter.writeAttribute("folded", treeWidget->isItemExpanded(item) ? "no" : "yes");          xmlWriter.writeTextElement("title", item->text(0));          for (int i = 0; i < item->childCount(); ++i) {  | 
