Exemplo n.º 1
0
Arquivo: var.cpp Projeto: Aspenka/SSD
Var Var::fromQVariant(QVariant qvar)
{
    Var var;
	if(qvar.type()==QVariant::List)
    {
        QVariantList qlist = qvar.toList();
		var.setType("list");
		for(int i=0;i<qlist.size();i++)
			var.append(fromQVariant(qlist[i]));
    }
	if(qvar.type()==QVariant::Map)
    {
        QVariantMap qmap = qvar.toMap();
		var.setType("map");
		for(QVariantMap::const_iterator i = qmap.constBegin();i != qmap.constEnd();i++)
			var.insert(i.key(),fromQVariant(i.value()));
    }
	if(qvar.type()==QVariant::String)
    {
        var.setType("string");
		var.setString(qvar.toString());
    }
	if(qvar.type()==QVariant::Int)
    {
        var.setType("string");
		var.setString(QString::number(qvar.toInt()));
    }
	if(qvar.type()==QVariant::Double)
    {
        var.setType("string");
		var.setString(QString::number(qvar.toDouble()));
    }
	return var;
	}