Mercurial > projects > qtd
comparison generator/abstractmetabuilder.cpp @ 380:beb04f46ef4a
fix NULL default values
author | Eldar Insafutdinov |
---|---|
date | Sat, 10 Jul 2010 22:32:16 +0100 |
parents | 18bd68f586c6 |
children | 1049b01aebd2 |
comparison
equal
deleted
inserted
replaced
379:a795eeb3b21f | 380:beb04f46ef4a |
---|---|
2022 | 2022 |
2023 // constructor or functioncall can be a bit tricky... | 2023 // constructor or functioncall can be a bit tricky... |
2024 if (expr == "QVariant()" /* qtd || expr == "QModelIndex()"*/) { | 2024 if (expr == "QVariant()" /* qtd || expr == "QModelIndex()"*/) { |
2025 return "null"; | 2025 return "null"; |
2026 } else if (expr == "QString()") { | 2026 } else if (expr == "QString()") { |
2027 return "null"; | 2027 return "\"\""; |
2028 } else if (expr.endsWith(")") && expr.contains("::")) { | 2028 } else if (expr.endsWith(")") && expr.contains("::")) { |
2029 TypeEntry *typeEntry = TypeDatabase::instance()->findType(expr.left(expr.indexOf("::"))); | 2029 TypeEntry *typeEntry = TypeDatabase::instance()->findType(expr.left(expr.indexOf("::"))); |
2030 if (typeEntry) | 2030 if (typeEntry) |
2031 return typeEntry->qualifiedTargetLangName() + "." + expr.right(expr.length() - expr.indexOf("::") - 2); | 2031 return typeEntry->qualifiedTargetLangName() + "." + expr.right(expr.length() - expr.indexOf("::") - 2); |
2032 } else if (expr.endsWith(")") && type->isValue()) { | 2032 } else if (expr.endsWith(")") && type->isValue()) { |
2038 return typeEntry->qualifiedCppName() + expr.right(expr.length() - pos); | 2038 return typeEntry->qualifiedCppName() + expr.right(expr.length() - pos); |
2039 else | 2039 else |
2040 return "new " + typeEntry->qualifiedCppName() + expr.right(expr.length() - pos); | 2040 return "new " + typeEntry->qualifiedCppName() + expr.right(expr.length() - pos); |
2041 } else | 2041 } else |
2042 return expr; | 2042 return expr; |
2043 } else if (expr == "0") { | 2043 } else if (expr == "0" || expr == "NULL") { |
2044 return "null"; | 2044 return "null"; |
2045 } else if (type->isObject() || type->isValue() || expr.contains("::")) { // like Qt::black passed to a QColor | 2045 } else if (type->isObject() || type->isValue() || expr.contains("::")) { // like Qt::black passed to a QColor |
2046 TypeEntry *typeEntry = TypeDatabase::instance()->findType(expr.left(expr.indexOf("::"))); | 2046 TypeEntry *typeEntry = TypeDatabase::instance()->findType(expr.left(expr.indexOf("::"))); |
2047 | 2047 |
2048 expr = expr.right(expr.length() - expr.indexOf("::") - 2); | 2048 expr = expr.right(expr.length() - expr.indexOf("::") - 2); |