***************************************************************************/
-#include <QDomDocument>
-#include <QItemDelegate>
-#include <QTreeWidgetItem>
-#include <QListWidgetItem>
-#include <QHeaderView>
-#include <QMenu>
-#include <QProcess>
-#include <QInputDialog>
+#include "renderwidget.h"
+#include "kdenlivesettings.h"
+#include "ui_saveprofile_ui.h"
#include <KStandardDirs>
#include <KDebug>
#include <KIO/NetAccess>
// #include <knewstuff2/engine.h>
-#include "kdenlivesettings.h"
-#include "renderwidget.h"
-#include "ui_saveprofile_ui.h"
+#include <QDomDocument>
+#include <QItemDelegate>
+#include <QTreeWidgetItem>
+#include <QListWidgetItem>
+#include <QHeaderView>
+#include <QMenu>
+#include <QProcess>
+#include <QInputDialog>
const int GroupRole = Qt::UserRole;
const int ExtensionRole = GroupRole + 1;
m_view.buttonSave->setEnabled(true);
m_view.buttonStart->setEnabled(m_view.size_list->currentItem()->flags() & Qt::ItemIsEnabled);
QString edit = m_view.size_list->currentItem()->data(EditableRole).toString();
- if (edit.isEmpty()) {
+ if (edit.isEmpty() || !edit.endsWith("customprofiles.xml")) {
m_view.buttonDelete->setEnabled(false);
m_view.buttonEdit->setEnabled(false);
} else {
- m_view.buttonDelete->setEnabled(edit.endsWith("customprofiles.xml"));
- m_view.buttonEdit->setEnabled(edit.endsWith("customprofiles.xml"));
+ m_view.buttonDelete->setEnabled(true);
+ m_view.buttonEdit->setEnabled(true);
}
}
}
width = m_profile.width;
height = m_profile.height;
}
- renderArgs.replace("%dar", "@" + QString::number(m_profile.display_aspect_num) + "/" + QString::number(m_profile.display_aspect_den));
+ renderArgs.replace("%dar", '@' + QString::number(m_profile.display_aspect_num) + '/' + QString::number(m_profile.display_aspect_den));
// Adjust scanning
if (m_view.scanning_list->currentIndex() == 1) renderArgs.append(" progressive=1");
if (group == "dvd" && m_view.open_dvd->isChecked()) {
renderItem->setData(0, Qt::UserRole, group);
if (renderArgs.contains("profile=")) {
- // rendering profile contains an MLT profile, so pass it to the running jog item, usefull for dvd
+ // rendering profile contains an MLT profile, so pass it to the running jog item, useful for dvd
QString prof = renderArgs.section("profile=", 1, 1);
prof = prof.section(' ', 0, 0);
kDebug() << "// render profile: " << prof;
// }
m_view.out_file->setFilter("*." + extension);
QString edit = item->data(EditableRole).toString();
- if (edit.isEmpty()) {
+ if (edit.isEmpty() || !edit.endsWith("customprofiles.xml")) {
m_view.buttonDelete->setEnabled(false);
m_view.buttonEdit->setEnabled(false);
} else {
- m_view.buttonDelete->setEnabled(edit.endsWith("customprofiles.xml"));
- m_view.buttonEdit->setEnabled(edit.endsWith("customprofiles.xml"));
+ m_view.buttonDelete->setEnabled(true);
+ m_view.buttonEdit->setEnabled(true);
}
m_view.buttonStart->setEnabled(m_view.size_list->currentItem()->flags() & Qt::ItemIsEnabled);
QDir directory = QDir(exportFolder);
QStringList filter;
filter << "*.xml";
- const QStringList fileList = directory.entryList(filter, QDir::Files);
- foreach(const QString filename, fileList)
- parseFile(exportFolder + '/' + filename, true); //filename == "customprofiles.xml");
+ QStringList fileList = directory.entryList(filter, QDir::Files);
+ // We should parse customprofiles.xml in last position, so that user profiles
+ // can also override profiles installed by KNewStuff
+ fileList.removeAll("customprofiles.xml");
+ foreach(const QString &filename, fileList)
+ parseFile(exportFolder + '/' + filename, true);
+ if (QFile::exists(exportFolder + "/customprofiles.xml")) parseFile(exportFolder + "/customprofiles.xml", true);
if (!meta.isEmpty()) {
m_view.destination_list->blockSignals(true);
if (editable) {
item->setData(EditableRole, exportFile);
if (exportFile.endsWith("customprofiles.xml")) item->setIcon(KIcon("emblem-favorite"));
+ else item->setIcon(KIcon("applications-internet"));
}
node = doc.elementsByTagName("profile").at(count);
count++;
}
}
groupName = documentElement.attribute("name", i18n("Custom"));
- extension = documentElement.attribute("extension", QString::null);
- renderer = documentElement.attribute("renderer", QString::null);
+ extension = documentElement.attribute("extension", QString());
+ renderer = documentElement.attribute("renderer", QString());
QList <QListWidgetItem *> list = m_view.format_list->findItems(groupName, Qt::MatchExactly);
bool exists = false;
for (int j = 0; j < list.count(); j++) {
void RenderWidget::slotGenerateScript() {
slotExport(true);
-}
\ No newline at end of file
+}
+