Mercurial > projects > qtd
diff generator/cppimplgenerator.cpp @ 188:7dd099050621
initial commit for D2 support
author | eldar |
---|---|
date | Sun, 12 Jul 2009 18:58:03 +0000 |
parents | d3f4f14d43a5 |
children | a1b48a630f73 |
line wrap: on
line diff
--- a/generator/cppimplgenerator.cpp Sat Jul 11 11:17:44 2009 +0000 +++ b/generator/cppimplgenerator.cpp Sun Jul 12 18:58:03 2009 +0000 @@ -2014,9 +2014,12 @@ } else s << translateType(argument->type(), EnumAsInts, d_export); } - else if (d_type->name() == "QModelIndex") - s << "QModelIndexAccessor"; - else if (te->isStructInD()) + else if (d_type->name() == "QModelIndex") { + if(d_export && dVersion == 2 && d_type->isConstant()) + s << "const(QModelIndexAccessor)"; + else + s << "QModelIndexAccessor"; + } else if (te->isStructInD()) s << te->qualifiedCppName(); else s << "void*"; @@ -3717,8 +3720,12 @@ return "void*"; else if (java_type->typeEntry()->isEnum() && d_export) return "int" + QString(java_type->indirections(), '*'); - else - return d_name + QString(java_type->indirections(), '*'); + else { + if (java_type->isConstant() && dVersion == 2 && d_export) + return "const (" + d_name + ")" + QString(java_type->indirections(), '*'); + else + return d_name + QString(java_type->indirections(), '*'); + } } else { return d_name + QString(java_type->indirections(), '*'); }