m_timelineContextMenu->addAction(actionCollection()->action(KStandardAction::name(KStandardAction::Paste)));
m_timelineContextClipMenu->addAction(actionCollection()->action("delete_timeline_clip"));
+ m_timelineContextClipMenu->addAction(actionCollection()->action("change_clip_speed"));
m_timelineContextClipMenu->addAction(actionCollection()->action("cut_timeline_clip"));
m_timelineContextClipMenu->addAction(actionCollection()->action(KStandardAction::name(KStandardAction::Copy)));
m_timelineContextClipMenu->addAction(actionCollection()->action("paste_effects"));
actionCollection()->addAction("delete_timeline_clip", deleteTimelineClip);
connect(deleteTimelineClip, SIGNAL(triggered(bool)), this, SLOT(slotDeleteTimelineClip()));
+ KAction* editTimelineClipSpeed = new KAction(KIcon("edit-delete"), i18n("Change Clip Speed"), this);
+ actionCollection()->addAction("change_clip_speed", editTimelineClipSpeed);
+ connect(editTimelineClipSpeed, SIGNAL(triggered(bool)), this, SLOT(slotChangeClipSpeed()));
+
KAction* cutTimelineClip = new KAction(KIcon("edit-cut"), i18n("Cut Clip"), this);
cutTimelineClip->setShortcut(Qt::SHIFT + Qt::Key_R);
actionCollection()->addAction("cut_timeline_clip", cutTimelineClip);
KStandardAction::paste(this, SLOT(slotPaste()),
actionCollection());
- KStandardAction::undo(this, SLOT(undo()),
- actionCollection());
+ KAction *undo = KStandardAction::undo(m_commandStack, SLOT(undo()),
+ actionCollection());
+ undo->setEnabled(false);
+ connect(m_commandStack, SIGNAL(canUndoChanged(bool)), undo, SLOT(setEnabled(bool)));
- KStandardAction::redo(this, SLOT(redo()),
- actionCollection());
+ KAction *redo = KStandardAction::redo(m_commandStack, SLOT(redo()),
+ actionCollection());
+ redo->setEnabled(false);
+ connect(m_commandStack, SIGNAL(canRedoChanged(bool)), redo, SLOT(setEnabled(bool)));
KStandardAction::fullScreen(this, SLOT(slotFullScreen()), this, actionCollection());
readOptions();
}
-void MainWindow::undo() {
- m_commandStack->undo();
-}
-
-void MainWindow::redo() {
- m_commandStack->redo();
-}
-
void MainWindow::slotDisplayActionMessage(QAction *a) {
statusBar()->showMessage(a->data().toString(), 3000);
}
void MainWindow::openLastFile() {
KSharedConfigPtr config = KGlobal::config();
- QString Lastproject = config->group("Recent Files").readPathEntry("File1", QString());
- openFile(KUrl(Lastproject));
+ KUrl::List urls = m_fileOpenRecent->urls();
+ if (urls.isEmpty()) newFile();
+ else openFile(urls.last());
}
void MainWindow::openFile(const KUrl &url) {
// create it :
KdenliveSettingsDialog* dialog = new KdenliveSettingsDialog(this);
connect(dialog, SIGNAL(settingsChanged(const QString&)), this, SLOT(updateConfiguration()));
+ connect(dialog, SIGNAL(doResetProfile()), this, SLOT(resetProfiles()));
dialog->show();
if (page != -1) dialog->showPage(page, option);
}
}
+void MainWindow::resetProfiles() {
+ m_monitorManager->resetProfiles(m_activeDocument->profilePath());
+}
+
void MainWindow::slotSwitchVideoThumbs() {
KdenliveSettings::setVideothumbnails(!KdenliveSettings::videothumbnails());
if (m_activeTimeline) {
}
}
+void MainWindow::slotChangeClipSpeed() {
+ if (m_activeTimeline) {
+ m_activeTimeline->projectView()->changeClipSpeed();
+ }
+}
+
void MainWindow::slotAddClipMarker() {
if (m_activeTimeline) {
m_activeTimeline->projectView()->slotAddClipMarker();