Deluge Firmware 1.3.0
Build date: 2026.07.29
Loading...
Searching...
No Matches
deluge::gui::ui::keyboard::KeyboardLayout Class Referenceabstract
Inheritance diagram for deluge::gui::ui::keyboard::KeyboardLayout:
Collaboration diagram for deluge::gui::ui::keyboard::KeyboardLayout:

Public Member Functions

virtual void evaluatePads (PressedPad presses[kMaxNumKeyboardPadPresses])=0
 Handle input pad presses.
virtual void handleVerticalEncoder (int32_t offset)=0
 Shift state not supplied since that function is already taken.
virtual void handleHorizontalEncoder (int32_t offset, bool shiftEnabled, PressedPad presses[kMaxNumKeyboardPadPresses], bool encoderPressed=false)=0
 Will be called with offset 0 to recalculate bounds on clip changes.
virtual void precalculate ()=0
 This function is called on visibility change and if colour offset changes.
virtual void renderPads (RGB image[][kDisplayWidth+kSideBarWidth])
 Handle output.
virtual void renderSidebarPads (RGB image[][kDisplayWidth+kSideBarWidth])
virtual l10n::String name ()=0
virtual bool supportsInstrument ()
 This currently includes Synth, MIDI and CV.
virtual bool supportsKit ()
virtual RequiredScaleMode requiredScaleMode ()
virtual bool supportsScale (Scale scale)
virtual NotesStategetNotesState ()
virtual void checkNewInstrument (Instrument *newInstrument)

Public Attributes

uint8_t velocity = 64

Protected Member Functions

bool isKit ()
int16_t getRootNote ()
 Song root note can be in any octave, layouts get the normalized one.
bool getScaleModeEnabled ()
uint8_t getScaleNoteCount ()
NoteSetgetScaleNotes ()
uint8_t getDefaultVelocity ()
int32_t getLowestClipNote ()
int32_t getHighestClipNote ()
RGB getNoteColour (uint8_t note)
NoteHighlightIntensity & getHighlightedNotes ()
NoteHighlightIntensity & getNornsNotes ()
KeyboardStategetState ()

Protected Attributes

NotesState currentNotesState

Member Function Documentation

◆ evaluatePads()

◆ handleHorizontalEncoder()

◆ handleVerticalEncoder()

◆ precalculate()

◆ renderPads()

◆ supportsInstrument()

◆ supportsScale()

virtual bool deluge::gui::ui::keyboard::KeyboardLayout::supportsScale ( Scale scale)
inlinevirtual

Whether this layout can operate with the given scale. Layouts that only support certain scales (e.g. the chord keyboard) override this so the scale-mode sidebar can avoid selecting a scale the layout can't handle.

Reimplemented in deluge::gui::ui::keyboard::layout::KeyboardLayoutChord.


The documentation for this class was generated from the following file: