void dlgPackageExporter::recurseScripts(TScript* item, QTreeWidgetItem* qItem){ list<TScript *> * childList = item->getChildrenList(); if (!childList->size()) return; list<TScript *>::iterator it; for(it=childList->begin(); it!=childList->end();it++){ TScript * pChild = *it; QStringList sl; sl << pChild->getName(); QTreeWidgetItem * pItem = new QTreeWidgetItem(sl); pItem->setFlags(Qt::ItemIsUserCheckable|Qt::ItemIsTristate|Qt::ItemIsEnabled|Qt::ItemIsSelectable); pItem->setCheckState(0, Qt::Unchecked); scriptMap.insert(pItem, pChild); qItem->addChild(pItem); recurseScripts(pChild, pItem); } }
void dlgPackageExporter::listScripts() { ScriptUnit* tu = mpHost->getScriptUnit(); list<TScript *>::const_iterator it; std::list<TScript *> tList = tu->getScriptRootNodeList(); QList<QTreeWidgetItem *> items = treeWidget->findItems(QString("Scripts"), Qt::MatchExactly, 0); QTreeWidgetItem * top = items.first(); for(it = tList.begin(); it != tList.end(); it++) { TScript * pChild = *it; QStringList sl; sl << pChild->getName(); QTreeWidgetItem * pItem = new QTreeWidgetItem(sl); pItem->setFlags(Qt::ItemIsUserCheckable|Qt::ItemIsTristate|Qt::ItemIsEnabled|Qt::ItemIsSelectable); pItem->setCheckState(0, Qt::Unchecked); scriptMap.insert(pItem, pChild); top->addChild(pItem); recurseScripts(pChild, pItem); } }