Вот нужный код:
void RizekFaster::saveData()
{
QDomDocument doc("data");
QDomElement domElement = doc.createElement("data");
saveNode(domElement);
doc.appendChild(domElement);
}
void RizekFaster::saveNode(const QDomNode& node, QModelIndex& index)
{
for (int a=0;a<itemModel->rowCount(index);a++)
{
//If it is folder
if(itemModel->item(a,0)->hasChildren())
{
QDomElement folder;
folder.setAttribute("name",node.toElement().text());
node.appendChild(folder);
QModelIndex newIndex = itemModel->index(a,0,index);
saveNode(folder,newIndex);
}
//If it is item
//if(!itemModel->item(a,0)->hasChildren())
else
{
QDomElement item;
item.setNodeValue(node.toElement().text());
node.appendChild(item);
}
}
}
Цитата
код в студию, естественно, что для константного объекта получить не константную ссылку "честным" способом нельзя.
Да, но если я не ошибаюсь, то все наоборот: я отправляю неконстантный объект, который преобразуется в функции в константную ссылку, что вроде как норма