toolbar->setMovable(false);
statusBar()->setStyleSheet(QString("QStatusBar QLabel {font-size:%1pt;} QStatusBar::item { border: 0px; font-size:%1pt;padding:0px; }").arg(statusBar()->font().pointSize()));
QString style1 = "QToolBar { border: 0px } QToolButton { border-style: inset; border:1px solid #999999;border-radius: 3px;margin: 0px 3px;padding: 0px;} QToolButton:checked { background-color: rgba(224, 224, 0, 100); border-style: inset; border:1px solid #cc6666;border-radius: 3px;}";
-
+
// create edit mode buttons
KAction *normaledit = new KAction(KIcon("kdenlive-normal-edit"), i18n("Normal mode"), this);
normaledit->setShortcut(i18nc("Normal editing", "n"));
toolbar->addAction(normaledit);
normaledit->setCheckable(true);
normaledit->setChecked(true);
-
+
m_overwriteModeTool = new KAction(KIcon("kdenlive-overwrite-edit"), i18n("Overwrite mode"), this);
m_overwriteModeTool->setShortcut(i18nc("Overwrite mode shortcut", "o"));
toolbar->addAction(m_overwriteModeTool);
m_insertModeTool->setChecked(false);
// not implemented yet
m_insertModeTool->setEnabled(false);
-
+
QActionGroup *editGroup = new QActionGroup(this);
editGroup->addAction(normaledit);
editGroup->addAction(m_overwriteModeTool);
editGroup->setExclusive(true);
connect(editGroup, SIGNAL(triggered(QAction *)), this, SLOT(slotChangeEdit(QAction *)));
//connect(m_overwriteModeTool, SIGNAL(toggled(bool)), this, SLOT(slotSetOverwriteMode(bool)));
-
+
toolbar->addSeparator();
// create tools buttons
actionWidget = toolbar->widgetForAction(m_insertModeTool);
actionWidget->setMaximumWidth(max);
actionWidget->setMaximumHeight(max - 4);
-
+
actionWidget = toolbar->widgetForAction(m_overwriteModeTool);
actionWidget->setMaximumWidth(max);
actionWidget->setMaximumHeight(max - 4);
-
+
actionWidget = toolbar->widgetForAction(m_buttonSelectTool);
actionWidget->setMaximumWidth(max);
actionWidget->setMaximumHeight(max - 4);
statusBar()->addPermanentWidget(m_timecodeFormat);
//statusBar()->setMaximumHeight(statusBar()->font().pointSize() * 3);
- collection->addAction("normal_mode", normaledit);
+ collection->addAction("normal_mode", normaledit);
collection->addAction("overwrite_mode", m_overwriteModeTool);
collection->addAction("insert_mode", m_insertModeTool);
collection->addAction("select_tool", m_buttonSelectTool);
ungroupClip->setData("ungroup_clip");
connect(ungroupClip, SIGNAL(triggered(bool)), this, SLOT(slotUnGroupClips()));
+ KAction* insertOvertwrite = new KAction(KIcon(), i18n("Insert Clip Zone in Timeline (Overwrite)"), this);
+ insertOvertwrite->setShortcut(Qt::Key_V);
+ collection->addAction("overwrite_to_in_point", insertOvertwrite);
+ connect(insertOvertwrite, SIGNAL(triggered(bool)), this, SLOT(slotInsertClipOverwrite()));
+
KAction* selectTimelineClip = new KAction(KIcon("edit-select"), i18n("Select Clip"), this);
selectTimelineClip->setShortcut(Qt::Key_Plus);
collection->addAction("select_timeline_clip", selectTimelineClip);
profileName = KdenliveSettings::default_profile();
projectFolder = KdenliveSettings::defaultprojectfolder();
} else {
- ProjectSettings *w = new ProjectSettings(NULL, projectTracks.x(), projectTracks.y(), KdenliveSettings::defaultprojectfolder(), false, true, this);
+ ProjectSettings *w = new ProjectSettings(NULL, QStringList(), projectTracks.x(), projectTracks.y(), KdenliveSettings::defaultprojectfolder(), false, true, this);
if (w->exec() != QDialog::Accepted) return;
if (!KdenliveSettings::activatetabs()) closeCurrentDocument();
KdenliveSettings::setVideothumbnails(w->enableVideoThumbs());
void MainWindow::slotEditProjectSettings()
{
QPoint p = m_activeDocument->getTracksCount();
- ProjectSettings *w = new ProjectSettings(m_projectList, p.x(), p.y(), m_activeDocument->projectFolder().path(), true, !m_activeDocument->isModified(), this);
+ ProjectSettings *w = new ProjectSettings(m_projectList, m_activeTimeline->projectView()->extractTransitionsLumas(), p.x(), p.y(), m_activeDocument->projectFolder().path(), true, !m_activeDocument->isModified(), this);
if (w->exec() == QDialog::Accepted) {
QString profile = w->selectedProfile();
// Deselect current effect / transition
m_effectStack->slotClipItemSelected(NULL, 0);
m_transitionConfig->slotTransitionItemSelected(NULL, 0, QPoint(), false);
- m_clipMonitor->slotSetXml(NULL, 0);
+ m_clipMonitor->slotSetXml(NULL);
bool updateFps = m_activeDocument->setProfilePath(profile);
KdenliveSettings::setCurrent_profile(profile);
KdenliveSettings::setProject_fps(m_activeDocument->fps());
m_projectList->setDocument(doc);
m_transitionConfig->updateProjectFormat(doc->mltProfile(), doc->timecode(), doc->tracksList());
m_effectStack->updateProjectFormat(doc->mltProfile(), doc->timecode());
- connect(m_projectList, SIGNAL(clipSelected(DocClipBase *)), m_clipMonitor, SLOT(slotSetXml(DocClipBase *)));
+ connect(m_projectList, SIGNAL(clipSelected(DocClipBase *, QPoint)), m_clipMonitor, SLOT(slotSetXml(DocClipBase *, QPoint)));
connect(m_projectList, SIGNAL(refreshClip()), m_clipMonitor, SLOT(refreshMonitor()));
connect(m_projectList, SIGNAL(projectModified()), doc, SLOT(setModified()));
connect(m_projectList, SIGNAL(clipNameChanged(const QString, const QString)), trackView->projectView(), SLOT(clipNameChanged(const QString, const QString)));
void MainWindow::slotUpdatePreviewSettings()
{
if (m_activeDocument) {
- m_clipMonitor->slotSetXml(NULL, 0);
+ m_clipMonitor->slotSetXml(NULL);
m_activeDocument->updatePreviewSettings();
}
}
}
}
+void MainWindow::slotInsertClipOverwrite()
+{
+ if (m_activeTimeline) {
+ QStringList data = m_clipMonitor->getZoneInfo();
+ m_activeTimeline->projectView()->insertZoneOverwrite(data, m_activeTimeline->inPoint());
+ }
+}
+
void MainWindow::slotSelectTimelineClip()
{
if (m_activeTimeline) {