![]() |
Deluge Firmware 1.3.0
Build date: 2025.11.04
|


Public Member Functions | |
| void | beginSession (MenuItem *navigatedBackwardFrom) final |
| Begin an editing session with this menu item. | |
| void | endSession () final |
| End an editing session with this menu item. | |
| void | readCurrentValue () final |
| Like readValueAgain, but does not redraw. | |
| void | writeCurrentValue () override |
| int32_t | getMinValue () const final |
| int32_t | getMaxValue () const final |
| int32_t | getNumDecimalPlaces () const final |
| virtual int32_t | getDefaultEditPos () |
| MenuPermission | checkPermissionToBeginSession (ModControllableAudio *modControllable, int32_t whichThing, MultiRange **currentRange) override |
| virtual ParamDescriptor | getDestinationDescriptor ()=0 |
| virtual PatchSource | getS ()=0 |
| uint8_t | getIndexOfPatchedParamToBlink () final |
| MenuItem * | selectButtonPress () final |
| Handle a select button press. | |
| ActionResult | buttonAction (hid::Button b, bool on, bool inCardRoutine) override |
| Handle an arbitrary button. | |
| void | selectEncoderAction (int32_t offset) override |
| Handle select encoder movement. | |
| void | horizontalEncoderAction (int32_t offset) override |
| Handle horizontal encoder movement. | |
| modulation::params::Kind | getParamKind () |
| uint32_t | getParamIndex () |
| PatchSource | getPatchSource () override |
| void | renderOLED () override |
| Root rendering routine for OLED. | |
| void | appendAdditionalDots (std::vector< uint8_t > &dotPositions) override |
| void | unlearnAction () final |
| Unlearn the parameter controlled by this menu. | |
| bool | allowsLearnMode () final |
| Used by SoundEditor to determine if the current menu item can accept MIDI learning. | |
| void | learnKnob (MIDICable *cable, int32_t whichKnob, int32_t modKnobMode, int32_t midiChannel) final |
| ModelStackWithAutoParam * | getModelStackWithParam (void *memory) override |
| Public Member Functions inherited from deluge::gui::menu_item::Decimal | |
| void | renderInHorizontalMenu (const HorizontalMenuSlotParams &slot) override |
| RenderingStyle | getRenderingStyle () const override |
| Public Member Functions inherited from deluge::gui::menu_item::Number | |
| void | drawHorizontalBar (int32_t y_top, int32_t margin_l, int32_t margin_r=-1, int32_t height=8) |
| Public Member Functions inherited from deluge::gui::menu_item::Value< int32_t > | |
| MenuItem () | |
| MenuItem (deluge::l10n::String newName, deluge::l10n::String newTitle=deluge::l10n::String::EMPTY_STRING) | |
| MenuItem (const MenuItem &other)=delete | |
| MenuItem (const MenuItem &&other)=delete | |
| void | beginSession (MenuItem *navigatedBackwardFrom) override |
| Begin an editing session with this menu item. | |
| void | selectEncoderAction (int32_t offset) override |
| Handle select encoder movement. | |
| void | readValueAgain () override |
| Re-read the value from the system and redraw the display to match. | |
| bool | selectEncoderActionEditsInstrument () final |
| Used by the sound editor to mark the current instrument as edited when the select encoder is scrolled. | |
| void | setValue (int32_t value) |
| int32_t | getValue () |
| Public Member Functions inherited from MenuItem | |
| MenuItem (deluge::l10n::String newName, deluge::l10n::String newTitle=deluge::l10n::String::EMPTY_STRING) | |
| MenuItem (const MenuItem &other)=delete | |
| MenuItem (const MenuItem &&other)=delete | |
| MenuItem & | operator= (const MenuItem &other)=delete |
| MenuItem & | operator= (const MenuItem &&other)=delete |
| virtual void | verticalEncoderAction (int32_t offset) |
| Handle vertical encoder movement. | |
| virtual ActionResult | timerCallback () |
| Handle a TimerName::UI_SPECIFIC event. | |
| virtual bool | usesAffectEntire () |
| Claim support for Kit AFFECT_ENTIRE editing. | |
| virtual MenuPermission | checkPermissionToBeginSession (ModControllableAudio *modControllable, int32_t whichThing, MultiRange **currentRange) |
| Double-check that this MenuItem will work with the currently selected sound range. | |
| virtual uint8_t | shouldBlinkPatchingSourceShortcut (PatchSource s, uint8_t *colour) |
| virtual MenuItem * | patchingSourceShortcutPress (PatchSource s, bool previousPressStillActive=false) |
| Action to take when a source shortcut is pressed. | |
| virtual bool | learnNoteOn (MIDICable &cable, int32_t channel, int32_t noteCode) |
| Attempt to bind this menu item to a note code. | |
| virtual void | learnProgramChange (MIDICable &cable, int32_t channel, int32_t programNumber) |
| virtual void | learnCC (MIDICable &cable, int32_t channel, int32_t ccNumber, int32_t value) |
| virtual bool | shouldBlinkLearnLed () |
| virtual bool | isRangeDependent () |
| Returns true if this parameter is only relevant to some note ranges. | |
| virtual std::string_view | getTitle () const |
| Get the title to be used when rendering on OLED, both as a deluge::gui::menu_item::Submenu and when displaying ourselves (using the default renderOLED implementation). | |
| virtual uint8_t | shouldDrawDotOnName () |
| Get the "draw dot state". | |
| virtual void | drawName () |
| Draw the name we want to use when selecting this in a deluge::gui::menu_item::Submenu to the 7SEG. | |
| virtual std::string_view | getName () const |
| Get the actual name for use on OLED for deluge::gui::menu_item::Submenu s. | |
| virtual bool | isRelevant (ModControllableAudio *modControllable, int32_t whichThing) |
| Check if this MenuItem should show up in a containing deluge::gui::menu_item::Submenu. | |
| virtual bool | shouldEnterSubmenu () |
| Check if selecting this menu item (with select encoder) should enter a submenu. | |
| virtual int32_t | getSubmenuItemTypeRenderLength () |
| Handle rendering of submenu item types. | |
| virtual int32_t | getSubmenuItemTypeRenderIconStart () |
| virtual void | renderSubmenuItemTypeForOled (int32_t yPixel) |
| virtual bool | isSubmenu () |
| virtual void | setupNumberEditor () |
| virtual void | updatePadLights () |
| virtual void | getColumnLabel (StringBuf &label) |
| virtual bool | showColumnLabel () const |
| Show a label for the parameter in Horizontal menu. | |
| virtual int32_t | getColumnSpan () const |
| Get the number of occupied virtual columns in Horizontal menu. | |
| virtual bool | showNotification () const |
| Show a popup with the full name and value of the editing parameter at the top of Horizontal menu. | |
| virtual bool | allowToBeginSessionFromHorizontalMenu () |
| Allow entering menu session by selecting the menu item twice in Horizontal menu. | |
| Public Member Functions inherited from MenuItemWithCCLearning | |
| virtual ParamDescriptor | getLearningThing ()=0 |
| void | unlearnAction () |
| bool | allowsLearnMode () const |
| void | learnKnob (MIDICable *cable, int32_t whichKnob, int32_t modKnobMode, int32_t midiChannel) |
| Public Member Functions inherited from deluge::gui::menu_item::Automation | |
| MenuItem * | selectButtonPress () |
| ActionResult | buttonAction (deluge::hid::Button b, bool on, bool inCardRoutine) |
| void | selectAutomationViewParameter (bool clipMinder) |
Public Attributes | |
| uint32_t | delayHorizontalScrollUntil = 0 |
| Used when scrolling horizontally to briefly catch on min / max decimal number edit position. | |
| deluge::l10n::String | title |
| Can get overridden by getTitle(). Actual max num chars for OLED display is 14. | |
| const deluge::l10n::String | name |
| Default name for use on OLED for deluge::gui::menu_item::Submenu s. | |
| deluge::gui::menu_item::HorizontalMenu * | parent {nullptr} |
Protected Member Functions | |
| ModelStackWithAutoParam * | getModelStack (void *memory, bool allowCreation=false) |
| void | getNotificationValue (StringBuf &valueBuf) override |
| Get the parameter value string to show in the popup. | |
| Protected Member Functions inherited from deluge::gui::menu_item::Decimal | |
| void | drawValue () override |
| virtual int32_t | getDefaultEditPos () const |
| virtual int32_t | getNumberEditSize () |
| void | drawPixelsForOled () override |
| Paints the pixels below the standard title block. | |
| virtual void | drawActualValue (bool justDidHorizontalScroll=false) |
| Protected Member Functions inherited from deluge::gui::menu_item::Number | |
| virtual float | normalize (int32_t value) |
| void | renderInHorizontalMenu (const HorizontalMenuSlotParams &slot) override |
| void | drawKnob (const HorizontalMenuSlotParams &slot) |
| void | drawBar (const HorizontalMenuSlotParams &slot) |
| void | drawPercent (const HorizontalMenuSlotParams &slot) |
| void | drawSlider (const HorizontalMenuSlotParams &slot, std::optional< int32_t > value=std::nullopt) |
| void | drawLengthSlider (const HorizontalMenuSlotParams &slot, bool min_slider_pos=3) |
| void | drawPan (const HorizontalMenuSlotParams &slot) |
| void | drawLpf (const HorizontalMenuSlotParams &slot) |
| void | drawHpf (const HorizontalMenuSlotParams &slot) |
| void | drawAttack (const HorizontalMenuSlotParams &slot) |
| void | drawRelease (const HorizontalMenuSlotParams &slot) |
| void | drawSidechainDucking (const HorizontalMenuSlotParams &slot) |
Private Member Functions | |
| bool | isInHorizontalMenu () const |
| void | setPatchCablePolarity (Polarity newPolarity) |
| void | updatePolarityUI () |
Private Attributes | |
| Polarity | polarity_in_the_ui_ |
| bool | patch_cable_exists_ = false |
Additional Inherited Members | |
| static void | drawItemsForOled (std::span< std::string_view > options, int32_t selectedOption, int32_t offset=0) |
| Internal helper which can draw the standard deluge::gui::menu_item::Submenu layout. | |
| Static Protected Member Functions inherited from deluge::gui::menu_item::Decimal | |
| static int32_t | getNumNonZeroDecimals (int32_t value) |
|
inlinefinalvirtual |
Used by SoundEditor to determine if the current menu item can accept MIDI learning.
Reimplemented from MenuItem.
|
overridevirtual |
Reimplemented from deluge::gui::menu_item::Decimal.
|
finalvirtual |
Begin an editing session with this menu item.
Should make sure the menu's internal state matches the system and redraw the display.
Reimplemented from deluge::gui::menu_item::Decimal.
|
overridevirtual |
Handle an arbitrary button.
The returned result is forwarded up the View stack, so returning ActionResult::DEALT_WITH will suppress buttons going to the current View.
This is called with (b == SELECT_ENC && on) immediately after the menu is entered, or after selectButtonPress is called and returns NO_NAVIGATION.
Reimplemented from MenuItem.
|
finalvirtual |
End an editing session with this menu item.
Reimplemented from MenuItem.
|
finalvirtual |
Reimplemented from MenuItem.
|
inlinenodiscardfinalvirtual |
Implements deluge::gui::menu_item::Number.
|
inlinenodiscardfinalvirtual |
Reimplemented from deluge::gui::menu_item::Number.
|
overridevirtual |
Implements deluge::gui::menu_item::Automation.
|
inlineoverrideprotectedvirtual |
Get the parameter value string to show in the popup.
Needs to be overridden
Reimplemented from deluge::gui::menu_item::Decimal.
|
inlinenodiscardfinalvirtual |
Implements deluge::gui::menu_item::Decimal.
|
virtual |
Reimplemented from MenuItem.
|
virtual |
Declares which parameter we intend to edit. SoundEditor uses this to find which shortcut pad to blink based on paramShortcutsForSounds.
Reimplemented from MenuItem.
|
overridevirtual |
Reimplemented from deluge::gui::menu_item::Automation.
|
overridevirtual |
Handle horizontal encoder movement.
| offset | must be either -1 or 1, jumping is not supported by many children. |
Reimplemented from deluge::gui::menu_item::Decimal.
|
inlinefinalvirtual |
Learn a mod knob to the parameter edited by this menu.
| cable | The MIDI cable to learn from, or null if a mod knob is to be learned. |
Reimplemented from MenuItem.
|
finalvirtual |
Like readValueAgain, but does not redraw.
Reimplemented from MenuItem.
|
overridevirtual |
Root rendering routine for OLED.
If you want a title, you probably want to override drawPixelsForOled instead or you will need to paint the title yourself. Uses the title from getTitle() when rendering.
Reimplemented from MenuItem.
|
finalvirtual |
Handle a select button press.
Reimplemented from MenuItem.
|
overridevirtual |
Handle select encoder movement.
Child classes which override this should be careful to handle offsets larger than 1, as holding shift and scrolling will increase them.
Reimplemented from deluge::gui::menu_item::Decimal.
|
inlinefinalvirtual |
Unlearn the parameter controlled by this menu.
Reimplemented from MenuItem.
|
overridevirtual |
Reimplemented from deluge::gui::menu_item::Value< int32_t >.