void DomTree::removeElements(std::vector<DomElement *> &children) { while(children.size()) { if(children[0]->getAttributes().size()) { removeAttributes(children[0]->getAttributes()); } if(children[0]->getChildren().size()) removeElements(children[0]->getChildren()); delete children[0]; children.erase(children.begin()); } }
void DomTree::clearChildren() { while(elements.size()) { if(elements[0]->getAttributes().size()) { removeAttributes(elements[0]->getAttributes()); } if(elements[0]->getChildren().size()) removeElements(elements[0]->getChildren()); delete elements[0]; elements.erase(elements.begin()); } }
AttributeWidget::AttributeWidget(TreeItem *item) : QWidget(), ui(new Ui::AttributeWidget) { itemEditing = item; m_attributes = item->getAttributes(); setAttribute(Qt::WA_DeleteOnClose); ui->setupUi(this); ui->twAttributes->horizontalHeader()->setResizeMode(1, QHeaderView::Stretch); connect(ui->pbAdd, SIGNAL(clicked()), this, SLOT(addAttributes())); connect(ui->pbRemove, SIGNAL(clicked()), this, SLOT(removeAttributes())); connect(ui->pbSave, SIGNAL(clicked()), this, SLOT(saveData())); connect(ui->twAttributes, SIGNAL(doubleClicked(QModelIndex)), this, SLOT(modifyTable(QModelIndex))); setWindowTitle("Attributes of node: " + itemEditing->getName()); addAction(ui->actionClose); if (m_attributes.size() > 0) fillAttTable(); }
void doApply(MapFacade* facade, const IssueList& issues) const { const PushSelection selection(facade); removeAttributes(facade, collectEntities(issues)); }
DomTree::~DomTree() { removeElements(elements); removeAttributes(attributes); }