/* * This file is part of smolbote. It's copyrighted by the contributors recorded * in the version control history of the file, available from its original * location: git://neueland.iserlohn-fortress.net/smolbote.git * * SPDX-License-Identifier: GPL-3.0 */ #ifndef XBELREADER_H #define XBELREADER_H #include #include class QTreeWidget; class QTreeWidgetItem; class Xbel { public: explicit Xbel(QTreeWidget *widget); bool read(const QString &xbel); bool write(const QString &xbel); QTreeWidgetItem *addFolder(QTreeWidgetItem *parentItem); QTreeWidgetItem *addBookmark(QTreeWidgetItem *parentItem); void addSeparator(QTreeWidgetItem *parentItem); private: void readChildElements(QTreeWidgetItem *parentItem); void readTitle(QTreeWidgetItem *item); QTreeWidgetItem *parentFolder(QTreeWidgetItem *item); QTreeWidgetItem *createChildItem(QTreeWidgetItem *item, const QString &type); void writeItem(QTreeWidgetItem *item); QIcon folderIcon; QIcon bookmarkIcon; QTreeWidget *treeWidget; QXmlStreamReader xmlReader; QXmlStreamWriter xmlWriter; }; #endif // XBELREADER_H