From: <si...@us...> - 2010-07-30 09:06:00
|
Revision: 1216 http://qterm.svn.sourceforge.net/qterm/?rev=1216&view=rev Author: sidos Date: 2010-07-30 09:05:54 +0000 (Fri, 30 Jul 2010) Log Message: ----------- create new xml doc if pathLib address.xml does not exist Modified Paths: -------------- trunk/qterm-qt4/src/qtermglobal.cpp Modified: trunk/qterm-qt4/src/qtermglobal.cpp =================================================================== --- trunk/qterm-qt4/src/qtermglobal.cpp 2010-07-30 06:46:35 UTC (rev 1215) +++ trunk/qterm-qt4/src/qtermglobal.cpp 2010-07-30 09:05:54 UTC (rev 1216) @@ -315,32 +315,28 @@ if (!dir.exists(m_addrCfg)) return createLocalFile(m_addrXml, m_pathLib + "address.xml"); } - // import xml address book + // try import xml address book QDomDocument doc; + QDomElement addresses; QFile file(m_addrXml); - if (!file.open(QIODevice::ReadOnly)) - return false; - if (!doc.setContent(&file)) { - file.close(); - return false; - } - file.close(); + if (file.open(QIODevice::ReadOnly) && doc.setContent(&file)) { + addresses = doc.documentElement(); + } else { + QDomProcessingInstruction instr = + doc.createProcessingInstruction("xml","version=\"1.0\" encoding=\"UTF-8\""); + doc.appendChild(instr); + addresses = doc.createElement("addresses"); + doc.appendChild(addresses); + } // Combine cfg address book m_address = new Config(m_addrCfg); int num = m_address->getItemValue("bbs list", "num").toInt(); - //QDomProcessingInstruction instr = - // doc.createProcessingInstruction("xml","version=\"1.0\" encoding=\"UTF-8\""); - //doc.appendChild(instr); - //QDomElement addresses = doc.createElement("addresses"); - //doc.appendChild(addresses); - - QDomElement addresses = doc.documentElement(); - QDomElement imported = doc.createElement("folder"); imported.setAttribute("name", tr("imported sites")); + addresses.insertBefore(imported, QDomNode()); for (int i = -1; i < num; i++) { Param param; @@ -361,14 +357,14 @@ addresses.appendChild(site); } - QFile ofile(m_addrXml); - if (!ofile.open(QIODevice::WriteOnly)) - return false; - QByteArray xml = doc.toByteArray(); - QTextStream stream(&ofile); - stream << xml; - ofile.close(); - +// QFile ofile(m_addrXml); +// if (!ofile.open(QIODevice::WriteOnly)) +// return false; +// QByteArray xml = doc.toByteArray(); +// QTextStream stream(&ofile); +// stream << xml; +// ofile.close(); + saveAddressXml(doc); delete m_address; return true; } @@ -559,12 +555,13 @@ m_fileCfg = m_pathCfg + "qterm.cfg"; if (!createLocalFile(m_fileCfg, m_pathLib + "qterm.cfg")) return false; - //m_addrCfg = m_pathCfg + "address.cfg"; + m_addrCfg = m_pathCfg + "address.cfg"; //if (!createLocalFile(m_addrCfg, m_pathLib + "address.cfg")) // return false; m_addrXml = m_pathCfg + "address.xml"; //if (!createLocalFile(m_addrXml, m_pathLib + "address.xml")) // return false; + if (!convertAddressBook2XML()) return false; return true; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |