diff --git a/src/gui/widgets/TimeDisplayWidget.cpp b/src/gui/widgets/TimeDisplayWidget.cpp index d2afe9240..01b447d92 100644 --- a/src/gui/widgets/TimeDisplayWidget.cpp +++ b/src/gui/widgets/TimeDisplayWidget.cpp @@ -106,12 +106,13 @@ void TimeDisplayWidget::updateTime() break; case BarsTicks: - m_majorLCD.setValue( s->getTacts() + 1 ); - m_minorLCD.setValue( ( s->getTicks() % s->ticksPerTact() ) / - ( s->ticksPerTact() / s->getTimeSigModel().getNumerator() ) +1 ); -; - m_milliSecondsLCD.setValue( ( s->getTicks() % s->ticksPerTact() ) % - ( s->ticksPerTact() / s->getTimeSigModel().getNumerator() ) ); + int tick; + tick = ( s->getMilliseconds() * s->getTempo() * 48 ) / 60000 ; + m_majorLCD.setValue( (int)(tick / s->ticksPerTact() ) + 1); + m_minorLCD.setValue( ( tick % s->ticksPerTact() ) / + ( s->ticksPerTact() / s->getTimeSigModel().getNumerator() ) +1 ); + m_milliSecondsLCD.setValue( ( tick % s->ticksPerTact() ) % + ( s->ticksPerTact() / s->getTimeSigModel().getNumerator() ) ); break; default: break;