31 using Decimal::Decimal;
32 void beginSession(MenuItem* navigatedBackwardFrom)
final;
35 void writeCurrentValue()
override;
36 [[nodiscard]] int32_t getMinValue()
const final {
return kMinMenuPatchCableValue; }
37 [[nodiscard]] int32_t getMaxValue()
const final {
return kMaxMenuPatchCableValue; }
38 [[nodiscard]] int32_t getNumDecimalPlaces()
const final {
return 2; }
39 virtual int32_t getDefaultEditPos() {
return 2; }
40 MenuPermission checkPermissionToBeginSession(
ModControllableAudio* modControllable, int32_t whichThing,
43 virtual PatchSource getS() = 0;
46 ActionResult
buttonAction(hid::Button b,
bool on,
bool inCardRoutine)
override;
52 PatchSource getPatchSource()
override;
57 void appendAdditionalDots(std::vector<uint8_t>& dotPositions)
override;
60 bool allowsLearnMode() final {
return MenuItemWithCCLearning::allowsLearnMode(); }
61 void learnKnob(
MIDICable* cable, int32_t whichKnob, int32_t modKnobMode, int32_t midiChannel)
final {
62 MenuItemWithCCLearning::learnKnob(cable, whichKnob, modKnobMode, midiChannel);
77 bool isInHorizontalMenu()
const;
78 void setPatchCablePolarity(Polarity newPolarity);
79 void updatePolarityUI();
80 Polarity polarityInTheUI_;
82 bool patchCableExists_ =
false;