- bool success = m_document->renderer()->mltResizeClipStart(m_tracksList.count() - m_dragItem->track(), m_dragItem->endPos(), m_dragItem->startPos(), m_dragItemInfo.startPos, m_dragItem->cropStart(), m_dragItem->cropStart() + m_dragItem->endPos() - m_dragItem->startPos());
- if (success) {
- updateClipFade((ClipItem *) m_dragItem);
- ResizeClipCommand *command = new ResizeClipCommand(this, m_dragItemInfo, info, false);
- m_commandStack->push(command);
- }
- else {
- m_dragItem->resizeStart((int) m_dragItemInfo.startPos.frames(m_document->fps()), m_scale);
- emit displayMessage(i18n("Error when resizing clip"), ErrorMessage);
- }
+ ItemInfo resizeinfo = m_dragItemInfo;
+ resizeinfo.track = m_tracksList.count() - resizeinfo.track;
+ bool success = m_document->renderer()->mltResizeClipStart(resizeinfo, m_dragItem->startPos() - m_dragItemInfo.startPos);
+ if (success) {
+ updateClipFade((ClipItem *) m_dragItem);
+ ResizeClipCommand *command = new ResizeClipCommand(this, m_dragItemInfo, info, false);
+ m_commandStack->push(command);
+ } else {
+ m_dragItem->resizeStart((int) m_dragItemInfo.startPos.frames(m_document->fps()), m_scale);
+ emit displayMessage(i18n("Error when resizing clip"), ErrorMessage);
+ }