Deluge Firmware 1.3.0
Build date: 2025.09.27
Loading...
Searching...
No Matches
audio_interpolation.h
1#pragma once
2
3#include "definitions_cxx.hpp"
4#include "gui/menu_item/selection.h"
5#include "model/sample/sample_controls.h"
6#include "model/song/song.h"
7
8namespace deluge::gui::menu_item {
9
11public:
12 using Selection::Selection;
13
14 void readCurrentValue() override {
15 const auto& sampleControls = getCurrentAudioClip()->sampleControls;
16 setValue(sampleControls.interpolationMode);
17 }
18
19 bool usesAffectEntire() override { return true; }
20 void writeCurrentValue() override {
21 auto& sampleControls = getCurrentAudioClip()->sampleControls;
22 sampleControls.interpolationMode = getValue<InterpolationMode>();
23 }
24
25 deluge::vector<std::string_view> getOptions(OptType optType) override {
26 (void)optType;
27 return {l10n::getView(l10n::String::STRING_FOR_LINEAR), l10n::getView(l10n::String::STRING_FOR_SINC)};
28 }
29
30 bool isRelevant(ModControllableAudio* modControllable, int32_t whichThing) override {
31 return getCurrentAudioClip()->sampleHolder.audioFile != nullptr;
32 }
33};
34
35} // namespace deluge::gui::menu_item
Definition mod_controllable_audio.h:47
Definition audio_interpolation.h:10
bool usesAffectEntire() override
Claim support for Kit AFFECT_ENTIRE editing.
Definition audio_interpolation.h:19
bool isRelevant(ModControllableAudio *modControllable, int32_t whichThing) override
Check if this MenuItem should show up in a containing deluge::gui::menu_item::Submenu.
Definition audio_interpolation.h:30
void readCurrentValue() override
Like readValueAgain, but does not redraw.
Definition audio_interpolation.h:14
Definition selection.h:26