}
}
+void CustomTrackView::slotAlignPlayheadToMousePos()
+{
+ /* get curser point ref in screen coord */
+ QPoint ps = QCursor::pos();
+ /* get xPos in scene coord */
+ int mappedXPos = qMax((int)(mapToScene(mapFromGlobal(ps)).x() + 0.5), 0);
+ /* move playhead to new xPos*/
+ seekCursorPos(mappedXPos);
+}
// virtual
void CustomTrackView::mouseMoveEvent(QMouseEvent * event)
parameters.addParam(QString("filter%1.tag").arg(subeffectix), subeffect.attribute("tag"));
parameters.addParam(QString("filter%1.kdenlive_info").arg(subeffectix), subeffect.attribute("kdenlive_info"));
QDomNodeList subparams = subeffect.elementsByTagName("parameter");
- adjustEffectParameters(parameters, subparams, QString("filter%1.").arg(subeffectix));
+ adjustEffectParameters(parameters, subparams, m_document->mltProfile(), QString("filter%1.").arg(subeffectix));
}
}
QDomNodeList params = effect.elementsByTagName("parameter");
- adjustEffectParameters(parameters, params);
+ adjustEffectParameters(parameters, params, m_document->mltProfile());
return parameters;
}
-void CustomTrackView::adjustEffectParameters(EffectsParameterList ¶meters, QDomNodeList params, const QString &prefix)
+void CustomTrackView::adjustEffectParameters(EffectsParameterList ¶meters, QDomNodeList params, MltVideoProfile profile, const QString &prefix)
{
QLocale locale;
for (int i = 0; i < params.count(); i++) {
if (e.attribute("factor", "1") != "1" || e.attribute("offset", "0") != "0") {
double fact;
if (e.attribute("factor").contains('%')) {
- fact = ProfilesDialog::getStringEval(m_document->mltProfile(), e.attribute("factor"));
+ fact = ProfilesDialog::getStringEval(profile, e.attribute("factor"));
} else {
fact = e.attribute("factor", "1").toDouble();
}
}
// Make sure there is no collision
QList<QGraphicsItem *> children = m_selectionGroup->childItems();
- ClipItem *item;
+ ClipItem *item = NULL;
for (int i = 0; i < children.count(); i++) {
if (children.at(i)->type() == AVWIDGET) {
item = (ClipItem*) children.at(i);
break;
}
}
+ if (!item) {
+ emit displayMessage(i18n("No clip found"), ErrorMessage);
+ return;
+ }
QMap <QString, QString> data = item->baseClip()->analysisData();
if (data.isEmpty()) {
emit displayMessage(i18n("No keyframe data found in clip"), ErrorMessage);