m_colKeyframeBg = scheme.shade(KColorScheme::MidShade);
}
-void SimpleTimelineWidget::setKeyframes(QList <int> keyframes)
+void SimpleTimelineWidget::setKeyframes(const QList<int> &keyframes)
{
m_keyframes = keyframes;
qSort(m_keyframes);
void SimpleTimelineWidget::slotGoToNext()
{
+ if (m_position == m_duration)
+ return;
+
foreach (const int &keyframe, m_keyframes) {
if (keyframe > m_position) {
slotSetPosition(keyframe);
void SimpleTimelineWidget::slotGoToPrev()
{
+ if (m_position == 0)
+ return;
+
for (int i = m_keyframes.count() - 1; i >= 0; --i) {
if (m_keyframes.at(i) < m_position) {
slotSetPosition(m_keyframes.at(i));
void SimpleTimelineWidget::wheelEvent(QWheelEvent* event)
{
int change = event->delta() < 0 ? -1 : 1;
- if (m_currentKeyframe > 0) {
+ /*if (m_currentKeyframe > 0) {
m_currentKeyframe = qBound(0, m_currentKeyframe + change, m_duration);
emit keyframeMoved(m_currentKeyframeOriginal, m_currentKeyframe);
- } else {
+ } else { */
m_position = qBound(0, m_position + change, m_duration);
emit positionChanged(m_position);
- }
+// }
emit atKeyframe(m_keyframes.contains(m_position));
update();
}