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);
64 return display->have7SEG() || runtimeFeatureSettings.isOn(RuntimeFeatureSettingType::HorizontalMenus);
66 deluge::vector<std::string_view> getOptions(OptType optType)
override {
67 using enum l10n::String;
68 bool shortOpt = optType == OptType::SHORT;
69 if (info.getSlot() == FilterSlot::HPF) {
71 l10n::getView(shortOpt ? STRING_FOR_SVF_BAND_SHORT : STRING_FOR_SVF_BAND),
72 l10n::getView(shortOpt ? STRING_FOR_SVF_NOTCH_SHORT : STRING_FOR_SVF_NOTCH),
73 l10n::getView(shortOpt ? STRING_FOR_12DB_LADDER_SHORT : STRING_FOR_HPLADDER),
74 l10n::getView(STRING_FOR_OFF),
79 l10n::getView(shortOpt ? STRING_FOR_12DB_LADDER_SHORT : STRING_FOR_12DB_LADDER),
80 l10n::getView(shortOpt ? STRING_FOR_24DB_LADDER_SHORT : STRING_FOR_24DB_LADDER),
81 l10n::getView(STRING_FOR_DRIVE),
82 l10n::getView(shortOpt ? STRING_FOR_SVF_BAND_SHORT : STRING_FOR_SVF_BAND),
83 l10n::getView(shortOpt ? STRING_FOR_SVF_NOTCH_SHORT : STRING_FOR_SVF_NOTCH),
84 l10n::getView(STRING_FOR_OFF),