summaryrefslogtreecommitdiff
path: root/muse2/muse/widgets/metronome.cpp
diff options
context:
space:
mode:
authorRobert Jonsson <spamatica@gmail.com>2013-02-07 21:24:46 +0000
committerRobert Jonsson <spamatica@gmail.com>2013-02-07 21:24:46 +0000
commit902abc5f16e90a0c1097c3d6bc932ea53aaea142 (patch)
tree51acbd864bf273262c894a73f02ce25bd20075a7 /muse2/muse/widgets/metronome.cpp
parent2f4156822ef88a9aef541547da5055561c4e6ab6 (diff)
metronome work
Diffstat (limited to 'muse2/muse/widgets/metronome.cpp')
-rw-r--r--muse2/muse/widgets/metronome.cpp105
1 files changed, 78 insertions, 27 deletions
diff --git a/muse2/muse/widgets/metronome.cpp b/muse2/muse/widgets/metronome.cpp
index 416e9e47..a31d5a31 100644
--- a/muse2/muse/widgets/metronome.cpp
+++ b/muse2/muse/widgets/metronome.cpp
@@ -40,13 +40,36 @@ MetronomeConfig::MetronomeConfig(QDialog* parent)
: QDialog(parent)
{
setupUi(this);
+
+ volumeSlider->setValue(MusEGlobal::audioClickVolume*100);
+ measVolumeSlider->setValue(MusEGlobal::measClickVolume*100);
+ beatVolumeSlider->setValue(MusEGlobal::beatClickVolume*100);
+ accent1VolumeSlider->setValue(MusEGlobal::accent1ClickVolume*100);
+ accent2VolumeSlider->setValue(MusEGlobal::accent2ClickVolume*100);
+ if (MusEGlobal::clickSamples == MusEGlobal::origSamples)
+ radioSamples2->setChecked(true);
+ else
+ radioSamples4->setChecked(true);
+ switchSamples(); // to disable gui elements
+
+ volumeLabel->setText(QString::number(int(MusEGlobal::audioClickVolume*100)));
+ measVolumeLabel->setText(QString::number(int(MusEGlobal::measClickVolume*100)));
+ beatVolumeLabel->setText(QString::number(int(MusEGlobal::beatClickVolume*100)));
+ accent1VolumeLabel->setText(QString::number(int(MusEGlobal::accent1ClickVolume*100)));
+ accent2VolumeLabel->setText(QString::number(int(MusEGlobal::accent2ClickVolume*100)));
+
connect(buttonApply, SIGNAL(clicked()), SLOT(apply()));
connect(midiClick, SIGNAL(toggled(bool)), SLOT(midiClickChanged(bool)));
connect(precountEnable, SIGNAL(toggled(bool)), SLOT(precountEnableChanged(bool)));
connect(precountFromMastertrack, SIGNAL(toggled(bool)),
SLOT(precountFromMastertrackChanged(bool)));
connect(audioBeepRoutesButton, SIGNAL(clicked()), SLOT(audioBeepRoutesClicked()));
- connect(volumeSlider, SIGNAL(valueChanged(int)), SLOT(beepVolumeChanged(int)));
+ connect(volumeSlider, SIGNAL(valueChanged(int)), SLOT(volumeChanged(int)));
+ connect(measVolumeSlider, SIGNAL(valueChanged(int)), SLOT(measVolumeChanged(int)));
+ connect(beatVolumeSlider, SIGNAL(valueChanged(int)), SLOT(beatVolumeChanged(int)));
+ connect(accent1VolumeSlider, SIGNAL(valueChanged(int)), SLOT(accent1VolumeChanged(int)));
+ connect(accent2VolumeSlider, SIGNAL(valueChanged(int)), SLOT(accent2VolumeChanged(int)));
+ connect(radioSamples2, SIGNAL(toggled(bool)),SLOT(switchSamples()));
measureNote->setValue(MusEGlobal::measureClickNote);
measureVelocity->setValue(MusEGlobal::measureClickVelo);
@@ -55,15 +78,15 @@ MetronomeConfig::MetronomeConfig(QDialog* parent)
midiChannel->setValue(MusEGlobal::clickChan+1);
midiPort->setValue(MusEGlobal::clickPort+1);
- /*
+
precountBars->setValue(MusEGlobal::preMeasures);
- precountEnable->setChecked(precountEnableFlag);
- precountFromMastertrack->setChecked(precountFromMastertrackFlag);
- precountSigZ->setValue(::precountSigZ);
- precountSigN->setValue(::precountSigN);
- precountPrerecord->setChecked(::precountPrerecord);
- precountPreroll->setChecked(::precountPreroll);
- */
+ precountEnable->setChecked(MusEGlobal::precountEnableFlag);
+ precountFromMastertrack->setChecked(MusEGlobal::precountFromMastertrackFlag);
+ precountSigZ->setValue(MusEGlobal::precountSigZ);
+ precountSigN->setValue(MusEGlobal::precountSigN);
+ precountPrerecord->setChecked(MusEGlobal::precountPrerecord);
+ precountPreroll->setChecked(MusEGlobal::precountPreroll);
+
midiClick->setChecked(MusEGlobal::midiClickFlag);
audioBeep->setChecked(MusEGlobal::audioClickFlag);
@@ -139,14 +162,14 @@ void MetronomeConfig::apply()
MusEGlobal::clickChan = midiChannel->value() - 1;
MusEGlobal::clickPort = midiPort->value() - 1;
MusEGlobal::preMeasures = precountBars->value();
- /*
- precountEnableFlag = precountEnable->isChecked();
- precountFromMastertrackFlag = precountFromMastertrack->isChecked();
- ::precountSigZ = precountSigZ->value();
- ::precountSigN = precountSigN->value();
- ::precountPrerecord = precountPrerecord->isChecked();
- ::precountPreroll = precountPreroll->isChecked();
- */
+
+ MusEGlobal::precountEnableFlag = precountEnable->isChecked();
+ MusEGlobal::precountFromMastertrackFlag = precountFromMastertrack->isChecked();
+ MusEGlobal::precountSigZ = precountSigZ->value();
+ MusEGlobal::precountSigN = precountSigN->value();
+ MusEGlobal::precountPrerecord = precountPrerecord->isChecked();
+ MusEGlobal::precountPreroll = precountPreroll->isChecked();
+
MusEGlobal::midiClickFlag = midiClick->isChecked();
MusEGlobal::audioClickFlag = audioBeep->isChecked();
//audioVolumeChanged = volumeSlider->value();
@@ -175,29 +198,57 @@ void MetronomeConfig::midiClickChanged(bool flag)
midiPort->setEnabled(flag);
}
-void MetronomeConfig::precountEnableChanged(bool /*flag*/)
+void MetronomeConfig::precountEnableChanged(bool flag)
{
- /*
precountBars->setEnabled(flag);
precountFromMastertrack->setEnabled(flag);
precountSigZ->setEnabled(flag && !precountFromMastertrack->isChecked());
precountSigN->setEnabled(flag && !precountFromMastertrack->isChecked());
- */
+
}
-void MetronomeConfig::precountFromMastertrackChanged(bool /*flag*/)
+void MetronomeConfig::precountFromMastertrackChanged(bool flag)
{
- /*
+
precountSigZ->setEnabled(!flag);
precountSigN->setEnabled(!flag);
- */
+
}
-void MetronomeConfig::beepVolumeChanged(int volume)
- {
- // this value is directly applied, not using th Apply button, it just seems more usable this way.
+// these values are directly applied, not using th Apply button, it just seems more usable this way.
+void MetronomeConfig::volumeChanged(int volume) {
MusEGlobal::audioClickVolume=volume/100.0;
- }
+ volumeLabel->setText(QString::number(int(MusEGlobal::audioClickVolume*100)));
+}
+void MetronomeConfig::measVolumeChanged(int volume) {
+ MusEGlobal::measClickVolume=volume/100.0;
+ measVolumeLabel->setText(QString::number(int(MusEGlobal::measClickVolume*100)));
+}
+void MetronomeConfig::beatVolumeChanged(int volume) {
+ MusEGlobal::beatClickVolume=volume/100.0;
+ beatVolumeLabel->setText(QString::number(int(MusEGlobal::beatClickVolume*100)));
+}
+void MetronomeConfig::accent1VolumeChanged(int volume) {
+ MusEGlobal::accent1ClickVolume=volume/100.0;
+ accent1VolumeLabel->setText(QString::number(int(MusEGlobal::accent1ClickVolume*100)));
+}
+void MetronomeConfig::accent2VolumeChanged(int volume) {
+ MusEGlobal::accent2ClickVolume=volume/100.0;
+ accent2VolumeLabel->setText(QString::number(int(MusEGlobal::accent2ClickVolume*100)));
+}
+
+void MetronomeConfig::switchSamples() {
+ if (radioSamples2->isChecked()) {
+ MusEGlobal::clickSamples = MusEGlobal::origSamples;
+ accent1VolumeSlider->setDisabled(true);
+ accent2VolumeSlider->setDisabled(true);
+ }
+ else {
+ MusEGlobal::clickSamples = MusEGlobal::newSamples;
+ accent1VolumeSlider->setDisabled(false);
+ accent2VolumeSlider->setDisabled(false);
+ }
+}
} // namespace MusEGui