Mercurial > hg > sonic-visualiser
comparison main/MainWindow.cpp @ 1038:0f46daf55706 3.0-integration
Merge from default branch
| author | Chris Cannam |
|---|---|
| date | Fri, 24 Jul 2015 16:31:54 +0100 |
| parents | 8d45d6412ca6 2d524c9eee33 |
| children | 1f4e40be5aa2 |
comparison
equal
deleted
inserted
replaced
| 1030:afe496c595e1 | 1038:0f46daf55706 |
|---|---|
| 233 connect(m_fader, SIGNAL(mouseEntered()), this, SLOT(mouseEnteredWidget())); | 233 connect(m_fader, SIGNAL(mouseEntered()), this, SLOT(mouseEnteredWidget())); |
| 234 connect(m_fader, SIGNAL(mouseLeft()), this, SLOT(mouseLeftWidget())); | 234 connect(m_fader, SIGNAL(mouseLeft()), this, SLOT(mouseLeftWidget())); |
| 235 | 235 |
| 236 m_playSpeed = new AudioDial(frame); | 236 m_playSpeed = new AudioDial(frame); |
| 237 m_playSpeed->setMinimum(0); | 237 m_playSpeed->setMinimum(0); |
| 238 m_playSpeed->setMaximum(200); | 238 m_playSpeed->setMaximum(120); |
| 239 m_playSpeed->setValue(100); | 239 m_playSpeed->setValue(60); |
| 240 m_playSpeed->setFixedWidth(32); | 240 m_playSpeed->setFixedWidth(32); |
| 241 m_playSpeed->setFixedHeight(32); | 241 m_playSpeed->setFixedHeight(32); |
| 242 m_playSpeed->setNotchesVisible(true); | 242 m_playSpeed->setNotchesVisible(true); |
| 243 m_playSpeed->setPageStep(10); | 243 m_playSpeed->setPageStep(10); |
| 244 m_playSpeed->setObjectName(tr("Playback Speedup")); | 244 m_playSpeed->setObjectName(tr("Playback Speed")); |
| 245 m_playSpeed->setDefaultValue(100); | 245 m_playSpeed->setRangeMapper(new PlaySpeedRangeMapper); |
| 246 m_playSpeed->setRangeMapper(new PlaySpeedRangeMapper(0, 200)); | 246 m_playSpeed->setDefaultValue(60); |
| 247 m_playSpeed->setShowToolTip(true); | 247 m_playSpeed->setShowToolTip(true); |
| 248 connect(m_playSpeed, SIGNAL(valueChanged(int)), | 248 connect(m_playSpeed, SIGNAL(valueChanged(int)), |
| 249 this, SLOT(playSpeedChanged(int))); | 249 this, SLOT(playSpeedChanged(int))); |
| 250 connect(m_playSpeed, SIGNAL(mouseEntered()), this, SLOT(mouseEnteredWidget())); | 250 connect(m_playSpeed, SIGNAL(mouseEntered()), this, SLOT(mouseEnteredWidget())); |
| 251 connect(m_playSpeed, SIGNAL(mouseLeft()), this, SLOT(mouseLeftWidget())); | 251 connect(m_playSpeed, SIGNAL(mouseLeft()), this, SLOT(mouseLeftWidget())); |
| 3867 } | 3867 } |
| 3868 | 3868 |
| 3869 void | 3869 void |
| 3870 MainWindow::playSpeedChanged(int position) | 3870 MainWindow::playSpeedChanged(int position) |
| 3871 { | 3871 { |
| 3872 PlaySpeedRangeMapper mapper(0, 200); | 3872 PlaySpeedRangeMapper mapper; |
| 3873 | 3873 |
| 3874 double percent = m_playSpeed->mappedValue(); | 3874 double percent = m_playSpeed->mappedValue(); |
| 3875 double factor = mapper.getFactorForValue(percent); | 3875 double factor = mapper.getFactorForValue(percent); |
| 3876 | 3876 |
| 3877 // cerr << "speed = " << position << " percent = " << percent << " factor = " << factor << endl; | 3877 // cerr << "play speed position = " << position << " (range 0-120) percent = " << percent << " factor = " << factor << endl; |
| 3878 | 3878 |
| 3879 bool something = (position != 100); | 3879 int centre = m_playSpeed->defaultValue(); |
| 3880 | 3880 |
| 3881 int pc = int(lrint(percent)); | 3881 // Percentage is shown to 0dp if >100, to 1dp if <100; factor is |
| 3882 | 3882 // shown to 3sf |
| 3883 if (!something) { | 3883 |
| 3884 char pcbuf[30]; | |
| 3885 char facbuf[30]; | |
| 3886 | |
| 3887 if (position == centre) { | |
| 3884 contextHelpChanged(tr("Playback speed: Normal")); | 3888 contextHelpChanged(tr("Playback speed: Normal")); |
| 3889 } else if (position < centre) { | |
| 3890 sprintf(pcbuf, "%.1f", percent); | |
| 3891 sprintf(facbuf, "%.3g", 1.0 / factor); | |
| 3892 contextHelpChanged(tr("Playback speed: %1% (%2x slower)") | |
| 3893 .arg(pcbuf) | |
| 3894 .arg(facbuf)); | |
| 3885 } else { | 3895 } else { |
| 3886 contextHelpChanged(tr("Playback speed: %1%2%") | 3896 sprintf(pcbuf, "%.0f", percent); |
| 3887 .arg(position > 100 ? "+" : "") | 3897 sprintf(facbuf, "%.3g", factor); |
| 3888 .arg(pc)); | 3898 contextHelpChanged(tr("Playback speed: %1% (%2x faster)") |
| 3889 } | 3899 .arg(pcbuf) |
| 3890 | 3900 .arg(facbuf)); |
| 3891 m_playSource->setTimeStretch(factor); | 3901 } |
| 3902 | |
| 3903 m_playSource->setTimeStretch(1.0 / factor); // factor is a speedup | |
| 3892 | 3904 |
| 3893 updateMenuStates(); | 3905 updateMenuStates(); |
| 3894 } | 3906 } |
| 3895 | 3907 |
| 3896 void | 3908 void |
