36 FilterModeSelection(deluge::l10n::String newName, deluge::l10n::String newTitle, FilterSlot slot_)
37 :
Selection{newName, newTitle}, info{slot_, FilterParamType::MODE} {}
40 void writeCurrentValue()
override {
41 auto current_value = this->getValue();
44 if (currentUIMode == UI_MODE_HOLDING_AFFECT_ENTIRE_IN_SOUND_EDITOR && soundEditor.editingKitRow()) {
46 Kit* kit = getCurrentKit();
48 for (
Drum* thisDrum = kit->firstDrum; thisDrum !=
nullptr; thisDrum = thisDrum->next) {
49 if (thisDrum->type == DrumType::SOUND) {
50 auto* soundDrum =
static_cast<SoundDrum*
>(thisDrum);
52 info.setModeForModControllable(current_value, soundDrum);
58 info.setMode(current_value);
61 bool wrapAround()
override {
return display->have7SEG(); }
62 deluge::vector<std::string_view> getOptions(OptType optType)
override {
63 using enum l10n::String;
64 bool shortOpt = optType == OptType::SHORT;
65 if (info.getSlot() == FilterSlot::HPF) {
67 l10n::getView(shortOpt ? STRING_FOR_SVF_BAND_SHORT : STRING_FOR_SVF_BAND),
68 l10n::getView(shortOpt ? STRING_FOR_SVF_NOTCH_SHORT : STRING_FOR_SVF_NOTCH),
69 l10n::getView(shortOpt ? STRING_FOR_12DB_LADDER_SHORT : STRING_FOR_HPLADDER),
70 l10n::getView(STRING_FOR_OFF),
74 l10n::getView(shortOpt ? STRING_FOR_12DB_LADDER_SHORT : STRING_FOR_12DB_LADDER),
75 l10n::getView(shortOpt ? STRING_FOR_24DB_LADDER_SHORT : STRING_FOR_24DB_LADDER),
76 l10n::getView(STRING_FOR_DRIVE),
77 l10n::getView(shortOpt ? STRING_FOR_SVF_BAND_SHORT : STRING_FOR_SVF_BAND),
78 l10n::getView(shortOpt ? STRING_FOR_SVF_NOTCH_SHORT : STRING_FOR_SVF_NOTCH),
79 l10n::getView(STRING_FOR_OFF),