return 0;
}
+QByteArray KEduVocDocument::toByteArray(const QString &generator)
+{
+ // no file needed
+ KEduVocKvtml2Writer kvtmlWriter(0);
+ return kvtmlWriter.toByteArray( this, generator );
+}
+
void KEduVocDocument::merge( KEduVocDocument *docToMerge, bool matchIdentifiers )
{
kDebug(1100) << "Merging of docs is not implemented"; /// @todo IMPLEMENT ME
return d->m_license;
}
-
QString KEduVocDocument::documentComment() const
{
return d->m_comment;
*/
int saveAs( const KUrl & url, FileType ft, const QString & generator );
+ QByteArray toByteArray(const QString &generator);
+
/**
* Merges data from another document
*
m_outputFile = file;
}
-
bool KEduVocKvtml2Writer::writeDoc( KEduVocDocument *doc, const QString &generator )
+{
+ if (createXmlDocument(doc, generator)) {
+ QTextStream ts( m_outputFile );
+ m_domDoc.save( ts, 2 );
+ return true;
+ }
+ return false;
+}
+
+QByteArray KEduVocKvtml2Writer::toByteArray(KEduVocDocument * doc, const QString & generator)
+{
+ if (createXmlDocument(doc, generator)) {
+ return m_domDoc.toByteArray();
+ }
+ return QByteArray();
+}
+
+bool KEduVocKvtml2Writer::createXmlDocument( KEduVocDocument *doc, const QString &generator )
{
m_doc = doc;
m_domDoc.appendChild( domElementKvtml );
- QTextStream ts( m_outputFile );
- m_domDoc.save( ts, 2 );
-
return true;
}
element.appendChild( textNode );
}
+
bool writeDoc( KEduVocDocument *doc, const QString &generator );
+ QByteArray toByteArray( KEduVocDocument *doc, const QString &generator );
+
/**
* Helper function, appends a new element AND a text child to @p parent
* Only appends if @p text is NOT empty.
static void appendTextElement( QDomElement &parent, const QString &elementName, const QString &text );
private:
+
+ bool createXmlDocument( KEduVocDocument *doc, const QString &generator );
+
/** write information entries
* @param informationElement QDomElement information to write to
* @param generator text describing generator