-rw-r--r-- | noncore/apps/opie-sheet/ChangeLog | 4 | ||||
-rw-r--r-- | noncore/apps/opie-sheet/sheet.cpp | 10 | ||||
-rw-r--r-- | noncore/apps/opie-sheet/sheet.h | 2 |
3 files changed, 11 insertions, 5 deletions
diff --git a/noncore/apps/opie-sheet/ChangeLog b/noncore/apps/opie-sheet/ChangeLog index 56887c5..e8a31ee 100644 --- a/noncore/apps/opie-sheet/ChangeLog +++ b/noncore/apps/opie-sheet/ChangeLog @@ -1,2 +1,6 @@ +January 8, 2004 + - fixed issue : "-if someone enters directly text as parameter to a string function the text renders as uppercase due to the calculation engine that uppercases all the parsing sentence." + now the text is handled correctly. + January 7, 2004 * Release by hayzel (koppermind@panafonet.gr) diff --git a/noncore/apps/opie-sheet/sheet.cpp b/noncore/apps/opie-sheet/sheet.cpp index 103b83b..e1e4744 100644 --- a/noncore/apps/opie-sheet/sheet.cpp +++ b/noncore/apps/opie-sheet/sheet.cpp @@ -910,5 +910,5 @@ double Sheet::functionCountIf(const QString ¶m1, const QString ¶m2, cons -QString Sheet::calculateFunction(const QString &function, const QString ¶meters, int NumOfParams) +QString Sheet::calculateFunction(const QString &func, const QString ¶meters, int NumOfParams) { bool ok; @@ -919,4 +919,6 @@ QString Sheet::calculateFunction(const QString &function, const QString ¶met QString s1,s2; //basic functions + QString function; + function=func.upper(); if (function=="+") { @@ -1778,5 +1780,5 @@ QString Sheet::dataParserHelper(const QString &data) else if(tokentype==VARIABLE_TOKEN) { - stack1.push(new QString(*s1)); + stack1.push(new QString(QString(*s1).upper())); //printf("Parse:Var=%s\r\n",s1->latin1()); //here to put implementation of other types of variables except cell. @@ -1802,5 +1804,5 @@ QString Sheet::dataParserHelper(const QString &data) // ,s1->latin1(),params.latin1(),stack1.count(),args); tempval=calculateFunction(*s1,params,args); - tempval=tempval.upper(); + tempval=tempval; stack1.push(new QString(tempval)); }; @@ -1826,5 +1828,5 @@ QString Sheet::dataParser(const QString &cell, const QString &data) listDataParser.append(cell); // printf("DATAPARSER: data=%s, cell=%s\r\n",data.ascii(),cell.ascii()); - strippedData=dataParserHelper(strippedData.remove(0, 1).upper().replace(QRegExp(":"), ",")); + strippedData=dataParserHelper(strippedData.remove(0, 1).replace(QRegExp(":"), ",")); int i=0; diff --git a/noncore/apps/opie-sheet/sheet.h b/noncore/apps/opie-sheet/sheet.h index 41f1b86..f705cd0 100644 --- a/noncore/apps/opie-sheet/sheet.h +++ b/noncore/apps/opie-sheet/sheet.h @@ -101,5 +101,5 @@ class Sheet: public QTable bool findRange(const QString &variable1, const QString &variable2, int *row1, int *col1, int *row2, int *col2); QString calculateVariable(const QString &variable); - QString calculateFunction(const QString &function, const QString ¶meters, int NumOfParams); + QString calculateFunction(const QString &func, const QString ¶meters, int NumOfParams); QString getParameter(const QString ¶meters, int paramNo, bool giveError=FALSE, const QString funcName=""); QString dataParser(const QString &cell, const QString &data); |