Mercurial > projects > qtd
diff generator/abstractmetalang.cpp @ 288:f9559a957be9 signals
new signals and slots implementation
author | eldar |
---|---|
date | Sun, 08 Nov 2009 19:28:01 +0000 |
parents | a5cba313c924 |
children | 8627891e4556 |
line wrap: on
line diff
--- a/generator/abstractmetalang.cpp Sun Nov 08 19:20:53 2009 +0000 +++ b/generator/abstractmetalang.cpp Sun Nov 08 19:28:01 2009 +0000 @@ -42,6 +42,7 @@ #include "abstractmetalang.h" #include "reporthandler.h" #include "jumptable.h" +#include <iostream> /******************************************************************************* * AbstractMetaType @@ -668,15 +669,15 @@ return QString(); } -QString AbstractMetaFunction::minimalSignature() const +QString AbstractMetaFunction::minimalSignature(int reduce) const { - if (!m_cached_minimal_signature.isEmpty()) + if (!m_cached_minimal_signature.isEmpty() && !reduce) return m_cached_minimal_signature; QString minimalSignature = originalName() + "("; AbstractMetaArgumentList arguments = this->arguments(); - - for (int i=0; i<arguments.count(); ++i) { + int argsCount = arguments.count() - reduce; + for (int i=0; i<argsCount; ++i) { AbstractMetaType *t = arguments.at(i)->type(); if (i > 0) @@ -689,7 +690,8 @@ minimalSignature += "const"; minimalSignature = QMetaObject::normalizedSignature(minimalSignature.toLocal8Bit().constData()); - m_cached_minimal_signature = minimalSignature; + if(!reduce) + m_cached_minimal_signature = minimalSignature; return minimalSignature; }