Example #1
0
void QhcpWriter::writeDocuments()
{
    if (m_qhpFile.isEmpty())
        return;

    QString out = m_qhpFile;
    int i = out.indexOf(QLatin1Char('.'));
    if (i > -1)
        out = out.left(i);
    out.append(QLatin1String(".qch"));

    writeStartElement(QLatin1String("docFiles"));
    
    writeStartElement(QLatin1String("generate"));
    writeStartElement(QLatin1String("file"));
    writeTextElement(QLatin1String("input"), m_qhpFile);
    writeTextElement(QLatin1String("output"), out);
    writeEndElement();
    writeEndElement();

    writeStartElement(QLatin1String("register"));
    writeTextElement(QLatin1String("file"), out);
    writeEndElement();

    writeEndElement();
}
Example #2
0
void BookmarkFactory::serialize(Payload *extension, QXmlStreamWriter *writer)
{
	Bookmark *bookmark = se_cast<Bookmark*>(extension);
	writer->writeStartElement(QLatin1String("storage"));
	writer->writeDefaultNamespace(NS_BOOKMARKS);
	foreach (const Bookmark::Conference &conf, bookmark->conferences()) {
		writer->writeStartElement(QLatin1String("conference"));
		writeAttribute(writer,QLatin1String("jid"), conf.jid().full());
		writeAttribute(writer,QLatin1String("name"), conf.name());
		writeAttribute(writer,QLatin1String("autojoin"), enumToStr(conf.autojoin(), autojoin_types));
		writeTextElement(writer,QLatin1String("nick"), conf.nick());
		writeTextElement(writer,QLatin1String("password"), conf.password());
		writer->writeEndElement();
	}
	writer->writeEndElement();
}
Example #3
0
bool QhpWriter::writeFile(const QString &fileName)
{
    QFile out(fileName);
    if (!out.open(QIODevice::WriteOnly))
        return false;

    setDevice(&out);
    writeStartDocument();
    writeStartElement(QLatin1String("QtHelpProject"));
    writeAttribute(QLatin1String("version"), QLatin1String("1.0"));
    writeTextElement(QLatin1String("namespace"), m_namespaceName);
    writeTextElement(QLatin1String("virtualFolder"), m_virtualFolder);
    writeCustomFilters();
    writeFilterSection();
    writeEndDocument();

    out.close();
    return true;
}
Example #4
0
void QhpWriter::writeCustomFilters()
{
    if (!m_customFilters.count())
        return;

    foreach (const CustomFilter &f, m_customFilters) {
        writeStartElement(QLatin1String("customFilter"));
        writeAttribute(QLatin1String("name"), f.name);
        foreach (const QString &a, f.filterAttributes)
            writeTextElement(QLatin1String("filterAttribute"), a);
        writeEndElement();
    }
Example #5
0
//! [2]
void XbelWriter::writeItem(QTreeWidgetItem *item)
{
    QString tagName = item->data(0, Qt::UserRole).toString();
    if (tagName == "folder") {
        bool folded = !treeWidget->isItemExpanded(item);
        writeStartElement(tagName);
        writeAttribute("folded", folded ? "yes" : "no");
        writeTextElement("title", item->text(0));
        for (int i = 0; i < item->childCount(); ++i)
            writeItem(item->child(i));
        writeEndElement();
    } else if (tagName == "bookmark") {
        writeStartElement(tagName);
        if (!item->text(1).isEmpty())
            writeAttribute("href", item->text(1));
        writeTextElement("title", item->text(0));
        writeEndElement();
    } else if (tagName == "separator") {
        writeEmptyElement(tagName);
    }
}
Example #6
0
void QhcpWriter::writeAssistantSettings()
{
    if (m_properties.isEmpty())
        return;

    writeStartElement(QLatin1String("assistant"));

    if (m_properties.contains(QLatin1String("title")))
        writeTextElement(QLatin1String("title"), m_properties.value(QLatin1String("title")));
    if (m_properties.contains(QLatin1String("applicationicon")))
        writeTextElement(QLatin1String("applicationIcon"),
            m_properties.value(QLatin1String("applicationicon")));
    if (m_properties.contains(QLatin1String("startpage")))
        writeTextElement(QLatin1String("startPage"), m_titlePath + QLatin1String("/")
            + m_properties.value(QLatin1String("startpage")));
    if (m_properties.contains(QLatin1String("aboutmenutext"))) {
        writeStartElement(QLatin1String("aboutMenuText"));
        writeTextElement(QLatin1String("text"),
            m_properties.value(QLatin1String("aboutmenutext")));
        writeEndElement();
    }
    if (m_properties.contains(QLatin1String("abouturl"))) {
        writeStartElement(QLatin1String("aboutDialog"));
        writeTextElement(QLatin1String("file"), m_properties.value(QLatin1String("abouturl")));
        writeEndElement();
    }
    if (m_properties.contains(QLatin1String("name"))) {
        writeTextElement(QLatin1String("cacheDirectory"),
            QLatin1String(".") + m_properties.value(QLatin1String("name")));
    }

    writeEndElement();
}
Example #7
0
void XSPFParser::save(const QList<MediaInfo> & files) {
	QTime timeElapsed;
	timeElapsed.start();

	_stop = false;

	qDebug() << __FUNCTION__ << "Playlist:" << _filename;

	QString path(QFileInfo(_filename).path());

	QFile file(_filename);
	if (file.open(QIODevice::WriteOnly)) {

		QXmlStreamWriter xml(&file);
		xml.setAutoFormatting(true);
		xml.writeStartDocument();

		xml.writeStartElement(XSPF_PLAYLIST);
		xml.writeAttribute("version", "1");
		xml.writeDefaultNamespace("http://xspf.org/ns/0/");
		xml.writeNamespace(XSPF_QUARKPLAYER_NAMESPACE, "qp");

			writeTextElement(xml, XSPF_TITLE, QFileInfo(_filename).baseName());
			writeTextElement(xml, XSPF_CREATOR, QCoreApplication::applicationName());
			writeTextElement(xml, XSPF_INFO, "http://quarkplayer.googlecode.com");
			writeTextElement(xml, XSPF_DATE, QDateTime::currentDateTime().toString(Qt::ISODate));

			xml.writeStartElement(XSPF_TRACKLIST);

				foreach (MediaInfo mediaInfo, files) {
					if (_stop) {
						break;
					}
					writeTrack(xml, mediaInfo);
				}

			xml.writeEndElement();	//trackList

		xml.writeEndElement();	//playlist
	}
//! [1]
def writeFile(self, device):
    self.setDevice(device)

    self.writeStartDocument()
    self.writeDTD("<!DOCTYPE xbel>")
    self.writeStartElement("xbel")
    self.writeAttribute("version", "1.0")
    for i in range(0, self.treeWidget.topLevelItemCount()):
        self.writeItem(self.treeWidget.topLevelItem(i))

    self.writeEndDocument()
    return True;
//! [1]

//! [2]
void XbelWriter::writeItem(QTreeWidgetItem *item)
{
    QString tagName = item->data(0, Qt::UserRole).toString();
    if (tagName == "folder") {
        bool folded = !treeWidget->isItemExpanded(item);
        writeStartElement(tagName);
        writeAttribute("folded", folded ? "yes" : "no");
        writeTextElement("title", item->text(0));
        for (int i = 0; i < item->childCount(); ++i)
            writeItem(item->child(i));
        writeEndElement();
    } else if (tagName == "bookmark") {
        writeStartElement(tagName);
        if (!item->text(1).isEmpty())
            writeAttribute("href", item->text(1));
        writeTextElement("title", item->text(0));
        writeEndElement();
    } else if (tagName == "separator") {
        writeEmptyElement(tagName);
    }
}
Example #9
0
void XSPFParser::writeTrack(QXmlStreamWriter & xml, const MediaInfo & mediaInfo) {

	xml.writeStartElement(XSPF_TRACK);

		//Filename
		QUrl url(mediaInfo.fileName());
		writeTextElement(xml, XSPF_LOCATION, url.toEncoded());

		//Unique ID
		//FIXME not implemented yet
		//writeTextElement(xml, XSPF_IDENTIFIER, QString());

		//Artist
		writeTextElement(xml, XSPF_CREATOR, mediaInfo.metadataValue(MediaInfo::Artist));

		//Album
		writeTextElement(xml, XSPF_ALBUM, mediaInfo.metadataValue(MediaInfo::Album));

		//Track number
		writeTextElement(xml, XSPF_TRACKNUM, mediaInfo.metadataValue(MediaInfo::TrackNumber));

		//Title
		writeTextElement(xml, XSPF_TITLE, mediaInfo.metadataValue(MediaInfo::Title));

		//Comment
		writeTextElement(xml, XSPF_ANNOTATION, mediaInfo.metadataValue(MediaInfo::Comment));

		//Length
		writeIntElement(xml, XSPF_DURATION, mediaInfo.lengthMilliseconds());

		//Album art URL
		//FIXME not implemented yet
		//writeTextElement(xml, XSPF_IMAGE, mediaInfo.metadataValue(MediaInfo::AlbumArt));

		//URL of the original web page
		writeTextElement(xml, XSPF_INFO, mediaInfo.metadataValue(MediaInfo::URL));

		xml.writeStartElement(XSPF_EXTENSION);
		xml.writeAttribute(XSPF_APPLICATION, XSPF_QUARKPLAYER_NAMESPACE);
		writeTextElementWithNamespace(xml, XSPF_QUARKPLAYER_NAMESPACE, XSPF_QUARKPLAYER_CUE_START_INDEX, mediaInfo.cueStartIndexFormatted());
		writeTextElementWithNamespace(xml, XSPF_QUARKPLAYER_NAMESPACE, XSPF_QUARKPLAYER_CUE_END_INDEX, mediaInfo.cueEndIndexFormatted());
		writeTextElementWithNamespace(xml, XSPF_QUARKPLAYER_NAMESPACE, XSPF_QUARKPLAYER_YEAR, mediaInfo.metadataValue(MediaInfo::Year));
		writeTextElementWithNamespace(xml, XSPF_QUARKPLAYER_NAMESPACE, XSPF_QUARKPLAYER_GENRE, mediaInfo.metadataValue(MediaInfo::Genre));
		xml.writeEndElement();	//extension

	xml.writeEndElement();	//track
}
Example #10
0
void XmlWrite_Input::Write()
{
    //QHash的迭代器
    QHashIterator<QString, SimData_Input*>HashIterator_SimData_Input(Hash_SimData_Input);
    //用于记录输入变量当前个数,并在<addition>中输出
    int num = 0;

    //自动格式化,让输出的xml文件自动考虑空格等排版因素
    setAutoFormatting(true);
    //写文档头,作用类似于创建一个xml文档,并在文档开头部分写入版本信息和编码信息
    writeStartDocument();

    //遍历所有的仿真输入数据
    while(HashIterator_SimData_Input.hasNext())
    {
        //迭代下一个数据
        HashIterator_SimData_Input.next();
        //指向每个仿真输入数据
        pSimData_Input = HashIterator_SimData_Input.value();

        //写入开始记号
        writeStartElement("Data");

        //写入文本信息记号
        writeTextElement("name", pSimData_Input->getName());
        writeTextElement("des", pSimData_Input->getDes());
        writeTextElement("type", pSimData_Input->getType());
        writeTextElement("init", pSimData_Input->getInit());
        writeTextElement("min", QString::number(pSimData_Input->getMin()));
        writeTextElement("max", QString::number(pSimData_Input->getMax()));
        writeTextElement("enable", QString::number(pSimData_Input->getEnable()));

        writeStartElement("unit");
        writeTextElement("type", pSimData_Input->getUnit_type());
        writeTextElement("std", pSimData_Input->getUnit_std());
        writeTextElement("super", pSimData_Input->getUnit_super());
        writeTextElement("StdtoSuper", QString::number(pSimData_Input->getUnit_StdtoSpuer()));
        //</unit>
        writeEndElement();

        writeStartElement("addition");
        writeTextElement("currentNum", QString::number(num++));
        writeTextElement("memAddress","暂不支持输出内存地址值");
        //</addition>
        writeEndElement();

        //</Data>
        writeEndElement();
    }

    //对应于writeStartDocument(),当调用这个函数时,即表示文档信息写入完毕
    writeEndDocument();
    qDebug()<<"INFO:输出仿真输入数据xml成功!";
}
Example #11
0
void OpenSearchWriter::write(OpenSearchEngine *engine)
{
    writeStartDocument();
    writeStartElement(QL1S("OpenSearchDescription"));
    writeDefaultNamespace(QL1S("http://a9.com/-/spec/opensearch/1.1/"));

    if (!engine->name().isEmpty())
    {
        writeTextElement(QL1S("ShortName"), engine->name());
    }

    if (!engine->description().isEmpty())
    {
        writeTextElement(QL1S("Description"), engine->description());
    }

    if (!engine->searchUrlTemplate().isEmpty())
    {
        writeStartElement(QL1S("Url"));
        writeAttribute(QL1S("method"), QL1S("get"));
        writeAttribute(QL1S("template"), engine->searchUrlTemplate());

        if (!engine->searchParameters().empty())
        {
            writeNamespace(QL1S("http://a9.com/-/spec/opensearch/extensions/parameters/1.0/"), QL1S("p"));

            QList<OpenSearchEngine::Parameter>::const_iterator end = engine->searchParameters().constEnd();
            QList<OpenSearchEngine::Parameter>::const_iterator i = engine->searchParameters().constBegin();
            for (; i != end; ++i)
            {
                writeStartElement(QL1S("p:Parameter"));
                writeAttribute(QL1S("name"), i->first);
                writeAttribute(QL1S("value"), i->second);
                writeEndElement();
            }
        }

        writeEndElement();
    }

    if (!engine->suggestionsUrlTemplate().isEmpty())
    {
        writeStartElement(QL1S("Url"));
        writeAttribute(QL1S("method"), QL1S("get"));
        writeAttribute(QL1S("type"), engine->type());
        writeAttribute(QL1S("template"), engine->suggestionsUrlTemplate());

        if (!engine->suggestionsParameters().empty())
        {
            writeNamespace(QL1S("http://a9.com/-/spec/opensearch/extensions/parameters/1.0/"), QL1S("p"));

            QList<OpenSearchEngine::Parameter>::const_iterator end = engine->suggestionsParameters().constEnd();
            QList<OpenSearchEngine::Parameter>::const_iterator i = engine->suggestionsParameters().constBegin();
            for (; i != end; ++i)
            {
                writeStartElement(QL1S("p:Parameter"));
                writeAttribute(QL1S("name"), i->first);
                writeAttribute(QL1S("value"), i->second);
                writeEndElement();
            }
        }

        writeEndElement();
    }

    if (!engine->imageUrl().isEmpty())
        writeTextElement(QL1S("Image"), engine->imageUrl());

    writeEndElement();
    writeEndDocument();
}
Example #12
-1
File: xbel.cpp Project: selebro/qt
void XbelWriter::writeItem(const BookmarkNode *parent)
{
    switch (parent->type()) {
    case BookmarkNode::Folder:
        writeStartElement(QLatin1String("folder"));
        writeAttribute(QLatin1String("folded"), parent->expanded ? QLatin1String("no") : QLatin1String("yes"));
        writeTextElement(QLatin1String("title"), parent->title);
        for (int i = 0; i < parent->children().count(); ++i)
            writeItem(parent->children().at(i));
        writeEndElement();
        break;
    case BookmarkNode::Bookmark:
        writeStartElement(QLatin1String("bookmark"));
        if (!parent->url.isEmpty())
            writeAttribute(QLatin1String("href"), parent->url);
        writeTextElement(QLatin1String("title"), parent->title);
        if (!parent->desc.isEmpty())
            writeAttribute(QLatin1String("desc"), parent->desc);
        writeEndElement();
        break;
    case BookmarkNode::Separator:
        writeEmptyElement(QLatin1String("separator"));
        break;
    default:
        break;
    }
}