- int t = child->data(0, typeRole).toInt();
- if (child->data(0, statusRole).toInt() == CLIPOK) {
- QString id = child->data(0, idRole).toString();
- if (t == TITLE_IMAGE_ELEMENT) {
- // edit images embedded in titles
- for (int i = 0; i < infoproducers.count(); i++) {
- e = infoproducers.item(i).toElement();
- if (e.attribute("id") == id) {
- // Fix clip
- QString xml = e.attribute("xmldata");
- xml.replace(child->data(0, typeOriginalResource).toString(), child->text(1));
- e.setAttribute("xmldata", xml);
- break;
- }
- }
- for (int i = 0; i < producers.count(); i++) {
- e = producers.item(i).toElement();
- if (e.attribute("id").section('_', 0, 0) == id) {
- // Fix clip
- properties = e.childNodes();
- for (int j = 0; j < properties.count(); ++j) {
- property = properties.item(j).toElement();
- if (property.attribute("name") == "xmldata") {
- QString xml = property.firstChild().nodeValue();
- xml.replace(child->data(0, typeOriginalResource).toString(), child->text(1));
- property.firstChild().setNodeValue(xml);
- break;
- }
- }
- }
- }
- } else {
- // edit clip url
- for (int i = 0; i < infoproducers.count(); i++) {
- e = infoproducers.item(i).toElement();
- if (e.attribute("id") == id) {
- // Fix clip
- e.setAttribute("resource", child->text(1));
- e.setAttribute("name", KUrl(child->text(1)).fileName());
- break;
- }
+ if (child->data(0, statusRole).toInt() == SOURCEMISSING) {
+ for (int j = 0; j < child->childCount(); j++) {
+ fixClipItem(child->child(j), producers, infoproducers, trans);
+ }
+ }
+ else fixClipItem(child, producers, infoproducers, trans);
+ ix++;
+ child = m_ui.treeWidget->topLevelItem(ix);
+ }
+ //QDialog::accept();
+}
+
+void DocumentChecker::fixClipItem(QTreeWidgetItem *child, QDomNodeList producers, QDomNodeList infoproducers, QDomNodeList trans)
+{
+ QDomElement e, property;
+ QDomNodeList properties;
+ int t = child->data(0, typeRole).toInt();
+ if (child->data(0, statusRole).toInt() == CLIPOK) {
+ QString id = child->data(0, idRole).toString();
+ if (t == TITLE_IMAGE_ELEMENT) {
+ // edit images embedded in titles
+ for (int i = 0; i < infoproducers.count(); ++i) {
+ e = infoproducers.item(i).toElement();
+ if (e.attribute("id") == id) {
+ // Fix clip
+ QString xml = e.attribute("xmldata");
+ xml.replace(child->data(0, typeOriginalResource).toString(), child->text(1));
+ e.setAttribute("xmldata", xml);
+ break;