+void MainWindow::slotClipInTimeline(const QString &clipId)
+{
+ if (m_activeTimeline && m_activeDocument) {
+ QList<ItemInfo> matching = m_activeTimeline->projectView()->findId(clipId);
+
+ QMenu *inTimelineMenu = static_cast<QMenu*>(factory()->container("clip_in_timeline", this));
+ inTimelineMenu->clear();
+
+ for(int i = 0; i < matching.size(); ++i) {
+ QString track = QString::number(matching.at(i).track);
+ QString start = m_activeDocument->timecode().getTimecode(matching.at(i).startPos);
+ QAction *a = inTimelineMenu->addAction(track + ": " + start);
+ a->setData(QStringList() << track << start);
+ connect(a, SIGNAL(triggered()), this, SLOT(slotSelectClipInTimeline()));
+ }
+
+ if (matching.empty())
+ inTimelineMenu->setEnabled(false);
+ else
+ inTimelineMenu->setEnabled(true);
+ }
+}
+
+void MainWindow::slotSelectClipInTimeline()
+{
+ if (m_activeTimeline) {
+ QAction *action = qobject_cast<QAction *>(sender());
+ QStringList data = action->data().toStringList();
+ m_activeTimeline->projectView()->selectFound(data.at(0), data.at(1));
+ }
+}
+