mirror of
https://github.com/vcmi/vcmi.git
synced 2025-08-13 19:54:17 +02:00
handle integer type in vcmi <-> Qt JSON interoperability
This commit is contained in:
@@ -66,6 +66,8 @@ QVariant toVariant(const JsonNode & node)
|
|||||||
return QVariant(node.Bool());
|
return QVariant(node.Bool());
|
||||||
case JsonNode::JsonType::DATA_FLOAT:
|
case JsonNode::JsonType::DATA_FLOAT:
|
||||||
return QVariant(node.Float());
|
return QVariant(node.Float());
|
||||||
|
case JsonNode::JsonType::DATA_INTEGER:
|
||||||
|
return QVariant{static_cast<qlonglong>(node.Integer())};
|
||||||
case JsonNode::JsonType::DATA_STRING:
|
case JsonNode::JsonType::DATA_STRING:
|
||||||
return QVariant(QString::fromStdString(node.String()));
|
return QVariant(QString::fromStdString(node.String()));
|
||||||
case JsonNode::JsonType::DATA_VECTOR:
|
case JsonNode::JsonType::DATA_VECTOR:
|
||||||
@@ -102,6 +104,8 @@ JsonNode toJson(QVariant object)
|
|||||||
ret.String() = object.toString().toUtf8().data();
|
ret.String() = object.toString().toUtf8().data();
|
||||||
else if(object.userType() == QMetaType::Bool)
|
else if(object.userType() == QMetaType::Bool)
|
||||||
ret.Bool() = object.toBool();
|
ret.Bool() = object.toBool();
|
||||||
|
else if(object.canConvert<int>())
|
||||||
|
ret.Integer() = object.toInt();
|
||||||
else if(object.canConvert<double>())
|
else if(object.canConvert<double>())
|
||||||
ret.Float() = object.toFloat();
|
ret.Float() = object.toFloat();
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user