aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/parsingtoolbox.cpp
diff options
context:
space:
mode:
authorRenaud G <renaud@rolisteam.org>2019-07-28 01:41:34 +0200
committerRenaud G <renaud@rolisteam.org>2019-07-28 01:41:34 +0200
commita817fcbaa3350a59790d9b264d8eb613df80703d (patch)
tree22c186bf6441cd8b56bfcd736cf4161e5750bc58 /parsingtoolbox.cpp
parent7f535260bbc2210bf8d605bac88546e9f18b2b05 (diff)
downloadOneRoll-a817fcbaa3350a59790d9b264d8eb613df80703d.tar.gz
OneRoll-a817fcbaa3350a59790d9b264d8eb613df80703d.zip
Add bool return to manage no parameter on painter node
Diffstat (limited to 'parsingtoolbox.cpp')
-rw-r--r--parsingtoolbox.cpp38
1 files changed, 21 insertions, 17 deletions
diff --git a/parsingtoolbox.cpp b/parsingtoolbox.cpp
index 4084825..7caeefe 100644
--- a/parsingtoolbox.cpp
+++ b/parsingtoolbox.cpp
@@ -661,28 +661,32 @@ ParsingToolBox::LIST_OPERATOR ParsingToolBox::readListOperator(QString& str)
return NONE;
}
-void ParsingToolBox::readPainterParameter(PainterNode* painter, QString& str)
+bool ParsingToolBox::readPainterParameter(PainterNode* painter, QString& str)
{
- if(str.startsWith('['))
- {
- str= str.remove(0, 1);
- int pos= str.indexOf(']');
+ if(!str.startsWith('['))
+ return false;
+
+ str= str.remove(0, 1);
+ int pos= str.indexOf(']');
- if(pos > -1)
+ if(pos == -1)
+ return false;
+
+ QString data= str.left(pos);
+ str= str.remove(0, pos + 1);
+ QStringList duos= data.split(',');
+ bool result= false;
+ for(QString& duoStr : duos)
+ {
+ QStringList keyValu= duoStr.split(':');
+ if(keyValu.size() == 2)
{
- QString data= str.left(pos);
- str= str.remove(0, pos + 1);
- QStringList duos= data.split(',');
- for(QString& duoStr : duos)
- {
- QStringList keyValu= duoStr.split(':');
- if(keyValu.size() == 2)
- {
- painter->insertColorItem(keyValu[1], keyValu[0].toInt());
- }
- }
+ painter->insertColorItem(keyValu[1], keyValu[0].toInt());
+ result= true;
}
}
+
+ return result;
}
QHash<QString, QString> ParsingToolBox::getVariableHash()