Use QByteArray instead of QString for buffers.

This commit is contained in:
Jim Evins
2016-04-24 17:27:04 -04:00
parent 6045b9e6b6
commit c69db1efd7
5 changed files with 15 additions and 15 deletions
+3 -3
View File
@@ -1101,11 +1101,11 @@ void LabelModel::copySelection()
{ {
QClipboard *clipboard = QApplication::clipboard(); QClipboard *clipboard = QApplication::clipboard();
QString buffer; QByteArray buffer;
XmlLabelCreator::serializeObjects( getSelection(), buffer ); XmlLabelCreator::serializeObjects( getSelection(), buffer );
QMimeData *mimeData = new QMimeData; QMimeData *mimeData = new QMimeData;
mimeData->setData( MIME_TYPE, buffer.toUtf8() ); mimeData->setData( MIME_TYPE, buffer );
clipboard->setMimeData( mimeData ); clipboard->setMimeData( mimeData );
} }
@@ -1157,7 +1157,7 @@ void LabelModel::paste()
if ( mimeData->hasFormat( MIME_TYPE ) ) if ( mimeData->hasFormat( MIME_TYPE ) )
{ {
QByteArray buffer = mimeData->data( MIME_TYPE ); QByteArray buffer = mimeData->data( MIME_TYPE );
QList <LabelModelObject*> objects = XmlLabelParser::deserializeObjects( QString(buffer) ); QList <LabelModelObject*> objects = XmlLabelParser::deserializeObjects( buffer );
unselectAll(); unselectAll();
foreach ( LabelModelObject* object, objects ) foreach ( LabelModelObject* object, objects )
+6 -6
View File
@@ -41,7 +41,7 @@ XmlLabelCreator::writeFile( const LabelModel* label, const QString& fileName )
QDomDocument doc; QDomDocument doc;
createDoc( doc, label ); createDoc( doc, label );
QString buffer = doc.toString( 2 ); QByteArray buffer = doc.toByteArray( 2 );
QFile file( fileName ); QFile file( fileName );
@@ -51,23 +51,23 @@ XmlLabelCreator::writeFile( const LabelModel* label, const QString& fileName )
<< ": " << file.errorString(); << ": " << file.errorString();
} }
file.write( buffer.toStdString().c_str(), buffer.size() ); file.write( buffer.data(), buffer.size() );
} }
void void
XmlLabelCreator::writeBuffer( const LabelModel* label, QString& buffer ) XmlLabelCreator::writeBuffer( const LabelModel* label, QByteArray& buffer )
{ {
QDomDocument doc; QDomDocument doc;
createDoc( doc, label ); createDoc( doc, label );
buffer = doc.toString( 2 ); buffer = doc.toByteArray( 2 );
} }
void void
XmlLabelCreator::serializeObjects( const QList<LabelModelObject*>& objects, XmlLabelCreator::serializeObjects( const QList<LabelModelObject*>& objects,
QString& buffer ) QByteArray& buffer )
{ {
QDomDocument doc; QDomDocument doc;
@@ -79,7 +79,7 @@ XmlLabelCreator::serializeObjects( const QList<LabelModelObject*>& objects,
addObjectsToNode( root, objects ); addObjectsToNode( root, objects );
buffer = doc.toString( 2 ); buffer = doc.toByteArray( 2 );
} }
+2 -2
View File
@@ -45,8 +45,8 @@ class XmlLabelCreator : public QObject
public: public:
static void writeFile( const LabelModel* label, const QString& fileName ); static void writeFile( const LabelModel* label, const QString& fileName );
static void writeBuffer( const LabelModel* label, QString& buffer ); static void writeBuffer( const LabelModel* label, QByteArray& buffer );
static void serializeObjects( const QList<LabelModelObject*>& objects, QString& buffer ); static void serializeObjects( const QList<LabelModelObject*>& objects, QByteArray& buffer );
private: private:
static void createDoc( QDomDocument& doc, const LabelModel* label ); static void createDoc( QDomDocument& doc, const LabelModel* label );
+2 -2
View File
@@ -89,7 +89,7 @@ XmlLabelParser::readFile( const QString& fileName )
LabelModel* LabelModel*
XmlLabelParser::readBuffer( const QString& buffer ) XmlLabelParser::readBuffer( const QByteArray& buffer )
{ {
QDomDocument doc; QDomDocument doc;
QString errorString; QString errorString;
@@ -116,7 +116,7 @@ XmlLabelParser::readBuffer( const QString& buffer )
QList<LabelModelObject*> QList<LabelModelObject*>
XmlLabelParser::deserializeObjects( const QString& buffer ) XmlLabelParser::deserializeObjects( const QByteArray& buffer )
{ {
QList<LabelModelObject*> list; QList<LabelModelObject*> list;
+2 -2
View File
@@ -45,8 +45,8 @@ class XmlLabelParser : public QObject
public: public:
static LabelModel* readFile( const QString& fileName ); static LabelModel* readFile( const QString& fileName );
static LabelModel* readBuffer( const QString& buffer ); static LabelModel* readBuffer( const QByteArray& buffer );
static QList<LabelModelObject*> deserializeObjects( const QString& buffer ); static QList<LabelModelObject*> deserializeObjects( const QByteArray& buffer );
private: private:
static void gunzip( const QByteArray& gzippedData, QByteArray& data ); static void gunzip( const QByteArray& gzippedData, QByteArray& data );