tabifyDockWidget(m_clipMonitorDock, m_recMonitorDock);
#endif
setCentralWidget(m_timelineArea);
-
-
setupGUI();
+ // Find QDockWidget tab bars and show / hide widget title bars on right click
+ QList <QTabBar *> tabs = findChildren<QTabBar *>();
+ for (int i = 0; i < tabs.count(); i++) {
+ tabs.at(i)->setContextMenuPolicy(Qt::CustomContextMenu);
+ connect(tabs.at(i), SIGNAL(customContextMenuRequested(const QPoint &)), this, SLOT(slotSwitchTitles()));
+ }
+
/*ScriptingPart* sp = new ScriptingPart(this, QStringList());
guiFactory()->addClient(sp);*/
m_timelineContextMenu->addAction(actionCollection()->action("delete_space"));
m_timelineContextMenu->addAction(actionCollection()->action(KStandardAction::name(KStandardAction::Paste)));
+ m_timelineContextClipMenu->addAction(actionCollection()->action("edit_clip_duration"));
m_timelineContextClipMenu->addAction(actionCollection()->action("delete_timeline_clip"));
m_timelineContextClipMenu->addAction(actionCollection()->action("group_clip"));
m_timelineContextClipMenu->addAction(actionCollection()->action("ungroup_clip"));
//TODO: re-enable custom effects menu when it is implemented
m_timelineContextClipMenu->addMenu(m_customEffectsMenu);
+ m_timelineContextTransitionMenu->addAction(actionCollection()->action("edit_clip_duration"));
m_timelineContextTransitionMenu->addAction(actionCollection()->action("delete_timeline_clip"));
m_timelineContextTransitionMenu->addAction(actionCollection()->action(KStandardAction::name(KStandardAction::Copy)));
ungroupClip->setData("ungroup_clip");
connect(ungroupClip, SIGNAL(triggered(bool)), this, SLOT(slotUnGroupClips()));
+ KAction* editClipDuration = new KAction(KIcon("measure"), i18n("Edit Duration"), this);
+ collection->addAction("edit_clip_duration", editClipDuration);
+ connect(editClipDuration, SIGNAL(triggered(bool)), this, SLOT(slotEditClipDuration()));
+
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);
showTimeline->setChecked(true);
connect(showTimeline, SIGNAL(triggered(bool)), this, SLOT(slotShowTimeline(bool)));
+ QAction *showTitleBar = new KAction(i18n("Show Title Bars"), this);
+ collection->addAction("show_titlebars", showTitleBar);
+ showTitleBar->setCheckable(true);
+ connect(showTitleBar, SIGNAL(triggered(bool)), this, SLOT(slotShowTitleBars(bool)));
+ showTitleBar->setChecked(KdenliveSettings::showtitlebars());
+
/*QAction *maxCurrent = new KAction(i18n("Maximize Current Widget"), this);
collection->addAction("maximize_current", maxCurrent);
maxCurrent->setCheckable(true);
}
}
+void MainWindow::slotEditClipDuration()
+{
+ if (m_activeTimeline) {
+ m_activeTimeline->projectView()->editClipDuration();
+ }
+}
+
void MainWindow::slotAddProjectClip(KUrl url)
{
if (m_activeDocument)
}
EditClipCommand *command = new EditClipCommand(m_projectList, clip->getId(), clip->properties(), newprops, true);
m_activeDocument->commandStack()->push(command);
- m_activeTimeline->projectView()->slotUpdateClip(clip->getId());
+ //m_activeTimeline->projectView()->slotUpdateClip(clip->getId());
m_activeDocument->setModified(true);
}
delete dia_ui;
}
+void MainWindow::slotShowTitleBars(bool show)
+{
+ if (show) {
+ m_effectStackDock->setTitleBarWidget(0);
+ m_clipMonitorDock->setTitleBarWidget(0);
+ m_projectMonitorDock->setTitleBarWidget(0);
+ m_recMonitorDock->setTitleBarWidget(0);
+ m_effectListDock->setTitleBarWidget(0);
+ m_transitionConfigDock->setTitleBarWidget(0);
+ m_projectListDock->setTitleBarWidget(0);
+ m_undoViewDock->setTitleBarWidget(0);
+ } else {
+ if (!m_effectStackDock->isFloating()) m_effectStackDock->setTitleBarWidget(new QWidget(this));
+ if (!m_clipMonitorDock->isFloating()) m_clipMonitorDock->setTitleBarWidget(new QWidget(this));
+ if (!m_projectMonitorDock->isFloating()) m_projectMonitorDock->setTitleBarWidget(new QWidget(this));
+ if (!m_recMonitorDock->isFloating()) m_recMonitorDock->setTitleBarWidget(new QWidget(this));
+ if (!m_effectListDock->isFloating()) m_effectListDock->setTitleBarWidget(new QWidget(this));
+ if (!m_transitionConfigDock->isFloating()) m_transitionConfigDock->setTitleBarWidget(new QWidget(this));
+ if (!m_projectListDock->isFloating()) m_projectListDock->setTitleBarWidget(new QWidget(this));
+ if (!m_undoViewDock->isFloating()) m_undoViewDock->setTitleBarWidget(new QWidget(this));
+ }
+ KdenliveSettings::setShowtitlebars(show);
+}
+
+void MainWindow::slotSwitchTitles()
+{
+ slotShowTitleBars(!KdenliveSettings::showtitlebars());
+}
+
#include "mainwindow.moc"