~pkgcrosswire/bibletime/main

« back to all changes in this revision

Viewing changes to src/frontend/bookmarks/btbookmarkloader.cpp

  • Committer: Jonathan Marsden
  • Date: 2011-12-23 20:32:12 UTC
  • Revision ID: jmarsden@fastmail.fm-20111223203212-1g3e35rlhbys07iu
New upstream version 2.9.1

Show diffs side-by-side

added added

removed removed

Lines of Context:
9
9
 
10
10
#include "frontend/bookmarks/btbookmarkloader.h"
11
11
 
12
 
#include <QDebug>
13
12
#include <QDomElement>
14
13
#include <QDomNode>
15
14
#include <QDomDocument>
27
26
#define CURRENT_SYNTAX_VERSION 1
28
27
 
29
28
QList<QTreeWidgetItem*> BtBookmarkLoader::loadTree(QString fileName) {
30
 
    qDebug() << "BtBookmarkLoader::loadTree";
31
29
    QList<QTreeWidgetItem*> itemList;
32
30
 
33
31
    QDomDocument doc;
44
42
    QDomElement child = document.firstChild().toElement();
45
43
 
46
44
    while ( !child.isNull() && child.parentNode() == document) {
47
 
        qDebug() << "BtBookmarkLoader::loadTree while start";
48
45
        QTreeWidgetItem* i = handleXmlElement(child, 0);
49
46
        itemList.append(i);
50
47
        if (!child.nextSibling().isNull()) {
60
57
}
61
58
 
62
59
QTreeWidgetItem* BtBookmarkLoader::handleXmlElement(QDomElement& element, QTreeWidgetItem* parent) {
63
 
    qDebug() << "BtBookmarkLoader::handleXmlElement";
64
60
    QTreeWidgetItem* newItem = 0;
65
61
    if (element.tagName() == "Folder") {
66
 
        qDebug() << "BtBookmarkLoader::handleXmlElement: found folder";
67
62
        BtBookmarkFolder* newFolder = new BtBookmarkFolder(QString::null, parent);
68
63
        if (element.hasAttribute("caption")) {
69
64
            newFolder->setText(0, element.attribute("caption"));
70
65
        }
71
66
        QDomNodeList childList = element.childNodes();
72
67
        for (unsigned int i = 0; i < childList.length(); i++) {
73
 
            qDebug() << "BtBookmarkLoader::handleXmlElement: go through child list of folder";
74
68
            QDomElement newElement = childList.at(i).toElement();
75
69
            QTreeWidgetItem* newChildItem = handleXmlElement(newElement, newFolder);
76
70
            newFolder->addChild(newChildItem);
79
73
        newItem = newFolder;
80
74
    }
81
75
    else if (element.tagName() == "Bookmark") {
82
 
        qDebug() << "BtBookmarkLoader::handleXmlElement: found bookmark";
83
76
        BtBookmarkItem* newBookmarkItem = new BtBookmarkItem(parent);
84
77
        if (element.hasAttribute("modulename")) {
85
78
            //we use the name in all cases, even if the module isn't installed anymore
97
90
        newBookmarkItem->update();
98
91
        newItem = newBookmarkItem;
99
92
    }
100
 
    qDebug() << "BtBookmarkLoader::handleXmlElement: return new item";
101
93
    return newItem;
102
94
}
103
95