Convert Qt to new serialization

This commit is contained in:
Pieter Wuille 2020-05-20 10:16:41 -07:00
parent 448bdff263
commit 65c589e45e
2 changed files with 17 additions and 34 deletions

View File

@ -24,19 +24,11 @@ public:
QDateTime date; QDateTime date;
SendCoinsRecipient recipient; SendCoinsRecipient recipient;
ADD_SERIALIZE_METHODS; SERIALIZE_METHODS(RecentRequestEntry, obj) {
unsigned int date_timet;
template <typename Stream, typename Operation> SER_WRITE(obj, date_timet = obj.date.toTime_t());
inline void SerializationOp(Stream& s, Operation ser_action) { READWRITE(obj.nVersion, obj.id, date_timet, obj.recipient);
unsigned int nDate = date.toTime_t(); SER_READ(obj, obj.date = QDateTime::fromTime_t(date_timet));
READWRITE(this->nVersion);
READWRITE(id);
READWRITE(nDate);
READWRITE(recipient);
if (ser_action.ForRead())
date = QDateTime::fromTime_t(nDate);
} }
}; };

View File

@ -44,30 +44,21 @@ public:
static const int CURRENT_VERSION = 1; static const int CURRENT_VERSION = 1;
int nVersion; int nVersion;
ADD_SERIALIZE_METHODS; SERIALIZE_METHODS(SendCoinsRecipient, obj)
{
std::string address_str, label_str, message_str, auth_merchant_str;
template <typename Stream, typename Operation> SER_WRITE(obj, address_str = obj.address.toStdString());
inline void SerializationOp(Stream& s, Operation ser_action) { SER_WRITE(obj, label_str = obj.label.toStdString());
std::string sAddress = address.toStdString(); SER_WRITE(obj, message_str = obj.message.toStdString());
std::string sLabel = label.toStdString(); SER_WRITE(obj, auth_merchant_str = obj.authenticatedMerchant.toStdString());
std::string sMessage = message.toStdString();
std::string sAuthenticatedMerchant = authenticatedMerchant.toStdString();
READWRITE(this->nVersion); READWRITE(obj.nVersion, address_str, label_str, obj.amount, message_str, obj.sPaymentRequest, auth_merchant_str);
READWRITE(sAddress);
READWRITE(sLabel);
READWRITE(amount);
READWRITE(sMessage);
READWRITE(sPaymentRequest);
READWRITE(sAuthenticatedMerchant);
if (ser_action.ForRead()) SER_READ(obj, obj.address = QString::fromStdString(address_str));
{ SER_READ(obj, obj.label = QString::fromStdString(label_str));
address = QString::fromStdString(sAddress); SER_READ(obj, obj.message = QString::fromStdString(message_str));
label = QString::fromStdString(sLabel); SER_READ(obj, obj.authenticatedMerchant = QString::fromStdString(auth_merchant_str));
message = QString::fromStdString(sMessage);
authenticatedMerchant = QString::fromStdString(sAuthenticatedMerchant);
}
} }
}; };