m_view.rescale_size->setText("320x240");
- QMenu *renderMenu = new QMenu(i18n("Start Rendering"), this);
- QAction *renderAction = renderMenu->addAction(KIcon("video-x-generic"), i18n("Render to File"));
- connect(renderAction, SIGNAL(triggered()), this, SLOT(slotPrepareExport()));
- QAction *scriptAction = renderMenu->addAction(KIcon("application-x-shellscript"), i18n("Generate Script"));
- connect(scriptAction, SIGNAL(triggered()), this, SLOT(slotGenerateScript()));
-
- m_view.buttonStart->setMenu(renderMenu);
- m_view.buttonStart->setPopupMode(QToolButton::MenuButtonPopup);
- m_view.buttonStart->setDefaultAction(renderAction);
- m_view.buttonStart->setToolButtonStyle(Qt::ToolButtonTextOnly);
+ connect(m_view.buttonRender, SIGNAL(clicked()), this, SLOT(slotPrepareExport()));
+ connect(m_view.buttonGenerateScript, SIGNAL(clicked()), this, SLOT(slotGenerateScript()));
+
m_view.abort_job->setEnabled(false);
m_view.start_script->setEnabled(false);
m_view.delete_script->setEnabled(false);
m_view.format_list->setAlternatingRowColors(true);
m_view.size_list->setAlternatingRowColors(true);
+ KColorScheme scheme(palette().currentColorGroup(), KColorScheme::Window);
+ QPalette p = m_view.errorLabel->palette();
+ p.setColor(QPalette::Background, scheme.background(KColorScheme::NegativeBackground).color());
+ m_view.errorLabel->setAutoFillBackground(true);
+ m_view.errorLabel->setPalette(p);
+ m_view.errorLabel->setHidden(true);
+
parseProfiles();
parseScriptFiles();
connect(m_view.format_selection, SIGNAL(activated(int)), this, SLOT(refreshView()));
- m_view.buttonStart->setEnabled(false);
+ m_view.buttonRender->setEnabled(false);
+ m_view.buttonGenerateScript->setEnabled(false);
m_view.rescale_size->setEnabled(false);
m_view.guides_box->setVisible(false);
m_view.open_dvd->setVisible(false);
}
QDBusConnectionInterface* interface = QDBusConnection::sessionBus().interface();
- if (!interface || !interface->isServiceRegistered("org.kde.ksmserver")) {
+ if (!interface || (!interface->isServiceRegistered("org.kde.ksmserver") && !interface->isServiceRegistered("org.gnome.SessionManager"))) {
m_view.shutdown->setEnabled(false);
}
*/
void RenderWidget::slotUpdateButtons(KUrl url)
{
- if (m_view.out_file->url().isEmpty()) m_view.buttonStart->setEnabled(false);
- else {
+ if (m_view.out_file->url().isEmpty()) {
+ m_view.buttonGenerateScript->setEnabled(false);
+ m_view.buttonRender->setEnabled(false);
+ } else {
updateButtons(); // This also checks whether the selected format is available
- //m_view.buttonStart->setEnabled(true);
}
if (url != 0) {
QListWidgetItem *item = m_view.size_list->currentItem();
if (!item) {
- m_view.buttonStart->setEnabled(false);
+ m_view.buttonRender->setEnabled(false);
+ m_view.buttonGenerateScript->setEnabled(false);
return;
}
QString extension = item->data(ExtensionRole).toString();
*/
void RenderWidget::slotUpdateButtons()
{
- if (m_view.out_file->url().isEmpty()) m_view.buttonStart->setEnabled(false);
- else updateButtons(); // This also checks whether the selected format is available
- //else m_view.buttonStart->setEnabled(true);
+ if (m_view.out_file->url().isEmpty()) {
+ m_view.buttonRender->setEnabled(false);
+ m_view.buttonGenerateScript->setEnabled(false);
+ } else {
+ updateButtons(); // This also checks whether the selected format is available
+ }
}
void RenderWidget::slotSaveProfile()
m_view.buttonSave->setEnabled(false);
m_view.buttonDelete->setEnabled(false);
m_view.buttonEdit->setEnabled(false);
- m_view.buttonStart->setEnabled(false);
+ m_view.buttonRender->setEnabled(false);
+ m_view.buttonGenerateScript->setEnabled(false);
} else {
m_view.buttonSave->setEnabled(true);
- m_view.buttonStart->setEnabled(m_view.size_list->currentItem()->toolTip().isEmpty());
+ m_view.buttonRender->setEnabled(m_view.size_list->currentItem()->toolTip().isEmpty());
+ m_view.buttonGenerateScript->setEnabled(m_view.size_list->currentItem()->toolTip().isEmpty());
QString edit = m_view.size_list->currentItem()->data(EditableRole).toString();
if (edit.isEmpty() || !edit.endsWith("customprofiles.xml")) {
m_view.buttonDelete->setEnabled(false);
if (!existing.isEmpty()) {
renderItem = existing.at(0);
if (renderItem->data(1, Qt::UserRole + 2).toInt() == RUNNINGJOB) {
- KMessageBox::information(this, i18n("There is already a job writing file:<br><b>%1</b><br>Abort the job if you want to overwrite it...", dest), i18n("Already running"));
+ KMessageBox::information(this, i18n("There is already a job writing file:<br /><b>%1</b><br />Abort the job if you want to overwrite it...", dest), i18n("Already running"));
return;
}
renderItem->setData(1, Qt::UserRole + 4, QString());
QListWidgetItem *item = m_view.size_list->currentItem();
if (!item || item->isHidden()) {
m_view.advanced_params->clear();
- m_view.buttonStart->setEnabled(false);
+ m_view.buttonRender->setEnabled(false);
+ m_view.buttonGenerateScript->setEnabled(false);
return;
}
QString params = item->data(ParamsRole).toString();
m_view.buttonEdit->setEnabled(true);
}
- m_view.buttonStart->setEnabled(m_view.size_list->currentItem()->toolTip().isEmpty());
+ m_view.buttonRender->setEnabled(m_view.size_list->currentItem()->toolTip().isEmpty());
+ m_view.buttonGenerateScript->setEnabled(m_view.size_list->currentItem()->toolTip().isEmpty());
}
void RenderWidget::reloadProfiles()
if (!existing.isEmpty()) {
renderItem = existing.at(0);
if (renderItem->data(1, Qt::UserRole + 2).toInt() == RUNNINGJOB) {
- KMessageBox::information(this, i18n("There is already a job writing file:<br><b>%1</b><br>Abort the job if you want to overwrite it...", destination), i18n("Already running"));
+ KMessageBox::information(this, i18n("There is already a job writing file:<br /><b>%1</b><br />Abort the job if you want to overwrite it...", destination), i18n("Already running"));
return;
}
} else renderItem = new QTreeWidgetItem(m_view.running_jobs, QStringList() << QString() << destination << QString());
KRun::runCommand(command, KdenliveSettings::defaultplayerapp(), KdenliveSettings::defaultplayerapp(), this, startId);
}
-
+void RenderWidget::missingClips(bool hasMissing)
+{
+ if (hasMissing) {
+ m_view.errorLabel->setText(i18n("Check missing clips"));
+ m_view.errorLabel->setHidden(false);
+ } else m_view.errorLabel->setHidden(true);
+}