++instances;\r
qDebug() << "MyCheckBoxContainer instances:" << instances;\r
sortToBottom = false;\r
+ sortAlphabetically = false;\r
}\r
\r
MyCheckBoxContainer::~MyCheckBoxContainer()\r
void MyCheckBoxContainer::add(QString item)\r
{\r
QStringList list = item.split("\n");\r
+ if(sortAlphabetically)\r
+ {\r
+ list.sort();\r
+ }\r
foreach(QString item, list)\r
{\r
if(item.length() > 0)\r
\r
void MyCheckBoxContainer::set(QString item)\r
{\r
+ qDebug() << item;\r
clear();\r
add(item);\r
}\r
{\r
if(item->isChecked())\r
{\r
- tempListChecked.append(item);\r
+ if(sortAlphabetically)\r
+ {\r
+ int size = tempListChecked.size();\r
+ int pos = 0;\r
+ for(pos = 0; pos < size; ++pos)\r
+ {\r
+ if(tempListChecked[pos]->text() > item->text())\r
+ {\r
+ break;\r
+ }\r
+ }\r
+ tempListChecked.insert(pos, item);\r
+ }\r
+ else\r
+ {\r
+ tempListChecked.append(item);\r
+ }\r
}\r
else\r
{\r
- tempList.append(item);\r
+ if(sortAlphabetically)\r
+ {\r
+ int size = tempList.size();\r
+ int pos = 0;\r
+ for(pos = 0; pos < size; ++pos)\r
+ {\r
+ if(tempList[pos]->text() > item->text())\r
+ {\r
+ break;\r
+ }\r
+ }\r
+ tempList.insert(pos, item);\r
+ }\r
+ else\r
+ {\r
+ tempList.append(item);\r
+ }\r
}\r
}\r
checkBoxes.clear();\r
{\r
item->setChecked(false);\r
}\r
+ if(sortAlphabetically)\r
+ {\r
+ set(getListText());\r
+ }\r
}\r
\r
void MyCheckBoxContainer::removeChecked()\r
sortCheckedToBottom();\r
}\r
\r
+void MyCheckBoxContainer::setSortAlphabetically(bool sortAlphabetically)\r
+{\r
+ this->sortAlphabetically = sortAlphabetically;\r
+ if(sortAlphabetically)\r
+ {\r
+ set(getListText());\r
+ }\r
+}\r
+\r
void MyCheckBoxContainer::clickedAction()\r
{\r
qDebug() << "Clicked a MyCheckBox";\r