fixes #6759: Tempo Sync Knob - Context menu string don't update on custom tempo (#6827)

* fixed #6759: Context menu string doesn't update

The TempoSyncKnobModel didn't emit any signal when the a
SyncMode::Custom was recaclulated.
Also it looks like someone broke the TempoSyncKnowModel
  bc SyncMode had been renamed to TempoSyncMode and the
  build was screaming.

* fixed #6759: Knob custom tempo

The TempoSyncKnobModel didn't emit any signal when the a SyncMode::Custom was recalculated.
Also it looks like someone broke the TempoSyncKnowModel
  because SyncMode had been renamed to TempoSyncMode and the
  build was screaming.

Recommit, fixed silly mistake where the signal would be emitted twice
on mode change to Custom.

* Update src/core/TempoSyncKnobModel.cpp

Co-authored-by: saker <sakertooth@gmail.com>

* Update src/core/TempoSyncKnobModel.cpp

Co-authored-by: saker <sakertooth@gmail.com>

* Use function pointers for connect TempoSyncKnob.cpp

* Silly fp mistake fixed in TempoSyncKnob.cpp

* Unfixed second macro call for now: TempoSyncKnob.cpp

---------

Co-authored-by: saker <sakertooth@gmail.com>
This commit is contained in:
consolegrl
2023-08-25 21:16:34 -04:00
committed by GitHub
parent a311eed8e8
commit a9f0a533a0
2 changed files with 5 additions and 2 deletions

View File

@@ -117,6 +117,10 @@ void TempoSyncKnobModel::calculateTempoSyncTime( bpm_t _bpm )
emit syncModeChanged( m_tempoSyncMode );
m_tempoLastSyncMode = m_tempoSyncMode;
}
else if (m_tempoSyncMode == SyncMode::Custom)
{
emit syncModeChanged(m_tempoSyncMode);
}
}

View File

@@ -75,8 +75,7 @@ void TempoSyncKnob::modelChanged()
{
m_custom->setModel( &model()->m_custom );
}
connect( model(), SIGNAL(syncModeChanged(lmms::TempoSyncKnobModel::TempoSyncMode)),
this, SLOT(updateDescAndIcon()));
connect(model(), &TempoSyncKnobModel::syncModeChanged, this, &TempoSyncKnob::updateDescAndIcon);
connect( this, SIGNAL(sliderMoved(float)),
model(), SLOT(disableSync()));
updateDescAndIcon();