32 void readCurrentValue()
override { this->setValue(soundEditor.currentModControllable->stutterConfig.pingPong); }
34 void writeCurrentValue()
override {
35 bool current_value = this->getValue();
38 if (currentUIMode == UI_MODE_HOLDING_AFFECT_ENTIRE_IN_SOUND_EDITOR && soundEditor.editingKitRow()) {
40 Kit* kit = getCurrentKit();
42 for (
Drum* thisDrum = kit->firstDrum; thisDrum !=
nullptr; thisDrum = thisDrum->next) {
43 if (thisDrum->type == DrumType::SOUND) {
44 auto* soundDrum =
static_cast<SoundDrum*
>(thisDrum);
46 if (!soundEditor.currentModControllable->stutterConfig.useSongStutter) {
47 soundDrum->stutterConfig.pingPong = current_value;
54 soundEditor.currentModControllable->stutterConfig.pingPong = current_value;
58 return soundEditor.currentModControllable->isSong()
59 || !soundEditor.currentModControllable->stutterConfig.useSongStutter;