diff --git a/xmlparser.cpp b/xmlparser.cpp deleted file mode 100644 index 6b5f31128dc1de4a1a7d0366f853e4b16b18bd79..0000000000000000000000000000000000000000 --- a/xmlparser.cpp +++ /dev/null @@ -1,122 +0,0 @@ -#include "xmlparser.h" - -#include -#include -#include -#include - -XmlParser::XmlParser(QWidget* p_parent): QTreeView(p_parent) { - f_stdItemModel = new QStandardItemModel(this); - f_stdItemModel->setColumnCount(4); - f_stdItemModel->setHorizontalHeaderLabels(QStringList() << "Field" << "Oranization Name" << "Attribute" << "Value"); - f_parentItem = f_stdItemModel->invisibleRootItem(); -} - -void XmlParser::sltLoad() -{ - QString openXmlFileDirectory = QFileDialog::getOpenFileName(); - f_directoryList << openXmlFileDirectory; - - //parsing Xml into itself - - QDomDocument domDoc; - QFile file(openXmlFileDirectory); - QStringList list = openXmlFileDirectory.split("/"); - QString fName = list.last(); - - if (file.open(QIODevice::ReadOnly)) - { - if (domDoc.setContent(&file)) - { - QDomElement domElem = domDoc.documentElement(); - QStandardItem *item = new QStandardItem(fName); - f_rootList << item; - f_parentItem->appendRow(item); - - traverseNode(domElem, item); - } - file.close(); - } - - setModel(f_stdItemModel); - -} - -void XmlParser::traverseNode(const QDomNode& p_dNode, QStandardItem* p_item_ptr) -{ - QDomNode domNode = p_dNode.firstChild(); - while (!domNode.isNull()) - { - if (domNode.isElement()) - { - QDomElement domElement = domNode.toElement(); - - if (!domElement.isNull()) - { - - if (domElement.tagName() == "array") - { - QStandardItem *item_arr = new QStandardItem("OrgName"); - QStandardItem *item_text = new QStandardItem(); - f_techItem = item_text; - p_item_ptr->appendRow({item_arr, item_text}); - traverseNode(domNode, item_arr); - - } - else if (domElement.tagName() == "geoData") - { - QStandardItem *item_gD = new QStandardItem(domElement.tagName()); - p_item_ptr->appendRow(item_gD); - traverseNode(domNode, item_gD); - } - else if (domElement.tagName() == "Name") - { - f_techItem->setText(domElement.text()); - traverseNode(domNode, p_item_ptr); - } - else - { - QStandardItem *item_tag = new QStandardItem(domElement.tagName()); - QStandardItem *item_text = new QStandardItem(domElement.text()); - p_item_ptr->appendRow({nullptr, nullptr, item_tag, item_text}); - traverseNode(domNode, p_item_ptr); - } - - - } - } - - domNode = domNode.nextSibling(); - - } -} - -void XmlParser::sltDropAll() -{ - f_stdItemModel->clear(); - f_rootList.clear(); - f_directoryList.clear(); -} - -QList* XmlParser::sltGetRootList() -{ - return &f_rootList; -} - -void XmlParser::sltSetCurrentRoot() -{ - QString root = qobject_cast (sender())->text(); - qDebug() << root; - auto p_iter = f_rootList.begin(); - while (p_iter != f_rootList.end()) - { - p_iter.i->t()->setFont(QFont ("MS Shell Dlg 2", 9)); - qDebug() << p_iter.i->t()->text(); - if(p_iter.i->t()->text() == root) - { - scrollTo(f_stdItemModel->indexFromItem(p_iter.i->t())); - p_iter.i->t()->setFont(QFont("MS Shell Dlg 2", 9, QFont::Bold)); - } - p_iter++; - } -} \ No newline at end of file