diff -r fd7f08a85971 -r 2658342e3310 api.cpp --- a/api.cpp Sat Jul 23 10:26:29 2005 +0000 +++ b/api.cpp Tue Jan 24 15:09:48 2006 +0000 @@ -29,12 +29,39 @@ com=re.cap(1); // Get parameters + paramList.clear(); re.setPattern ("\\((.*)\\)"); pos=re.search (s); if (pos>=0) { QString s=re.cap(1); - paramList=QStringList::split(",",s); + QString a; + bool inquote=false; + pos=0; + if (!s.isEmpty()) + { + while (pos paramList.count()) { errorString =QString("Parameter index %1 is outside of parameter list").arg(index); - return false; + noErr=false; } else { paramList[index].toInt (&ok, 10); if (!ok) { errorString=QString("Parameter %1 is not an integer").arg(index); - return false; - } - return true; + noErr=false; + } else + noErr=true; } + return noErr; } int API::parInt (bool &ok,const uint &index)