mirror of
https://github.com/romixlab/qmsgpack.git
synced 2025-08-01 19:34:27 +02:00
1/2 QPoint
This commit is contained in:
@@ -132,3 +132,28 @@ QVariant MsgPackPrivate::unpack_qdatetime(const QByteArray &data)
|
|||||||
QTime t = unpack_qtime_raw(p + 3);
|
QTime t = unpack_qtime_raw(p + 3);
|
||||||
return QDateTime(d, t);
|
return QDateTime(d, t);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Points and Vectors
|
||||||
|
quint32 MsgPackPrivate::pack_qpoint(const QVariant &variant, QByteArray &data, bool write)
|
||||||
|
{
|
||||||
|
QPoint pt = variant.toPoint();
|
||||||
|
quint8 *p = 0;
|
||||||
|
if (write) {
|
||||||
|
p = (quint8 *)data.data();
|
||||||
|
p = MsgPackPrivate::pack_int(pt.x(), p, false);
|
||||||
|
p = MsgPackPrivate::pack_int(pt.y(), p, false);
|
||||||
|
return data.size(); // ok since it already resized
|
||||||
|
} else {
|
||||||
|
p = MsgPackPrivate::pack_int(pt.x(), p, false);
|
||||||
|
p = MsgPackPrivate::pack_int(pt.y(), p, false);
|
||||||
|
return p - (quint8 *)0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
QVariant MsgPackPrivate::unpack_qpoint(const QByteArray &data)
|
||||||
|
{
|
||||||
|
quint8 *p = (quint8 *)data.data();
|
||||||
|
QVariant v;
|
||||||
|
p = (MsgPackPrivate::unpackers[*p - 0xc0])(v, p);
|
||||||
|
|
||||||
|
}
|
@@ -27,6 +27,10 @@ QVariant unpack_qdate(const QByteArray &data);
|
|||||||
quint32 pack_qdatetime(const QVariant &variant, QByteArray &data, bool write);
|
quint32 pack_qdatetime(const QVariant &variant, QByteArray &data, bool write);
|
||||||
QVariant unpack_qdatetime(const QByteArray &data);
|
QVariant unpack_qdatetime(const QByteArray &data);
|
||||||
|
|
||||||
|
// Points and Vectors
|
||||||
|
quint32 pack_qpoint(const QVariant &variant, QByteArray &data, bool write);
|
||||||
|
QVariant unpack_qpoint(const QByteArray &data);
|
||||||
|
|
||||||
|
|
||||||
} // MsgPackPrivate
|
} // MsgPackPrivate
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user