35class KeyboardScreen final :
public RootUI,
public InstrumentClipMinder {
39 ActionResult padAction(int32_t x, int32_t y, int32_t velocity)
override;
40 ActionResult buttonAction(deluge::hid::Button b,
bool on,
bool inCardRoutine)
override;
41 ActionResult verticalEncoderAction(int32_t offset,
bool inCardRoutine)
override;
42 ActionResult horizontalEncoderAction(int32_t offset)
override;
43 void selectEncoderAction(int8_t offset)
override;
45 bool renderMainPads(uint32_t whichRows,
RGB image[][kDisplayWidth + kSideBarWidth],
46 uint8_t occupancyMask[][kDisplayWidth + kSideBarWidth],
47 bool drawUndefinedArea =
false)
override;
48 bool renderSidebar(uint32_t whichRows,
RGB image[][kDisplayWidth + kSideBarWidth],
49 uint8_t occupancyMask[][kDisplayWidth + kSideBarWidth])
override;
51 void flashDefaultRootNote();
52 void openedInBackground();
53 void exitAuditionMode();
55 uint8_t highlightedNotes[kHighestKeyboardNote] = {0};
56 uint8_t nornsNotes[kHighestKeyboardNote] = {0};
58 inline void requestRendering() { uiNeedsRendering(
this, 0xFFFFFFFF, 0xFFFFFFFF); }
60 void killColumnSwitchKey(int32_t column);
63 UIType
getUIType()
override {
return UIType::KEYBOARD_SCREEN; }
66 void checkNewInstrument(
Instrument* newInstrument);
69 bool opened()
override;
70 void focusRegained()
override;
71 void displayOrLanguageChanged() final;
73 void evaluateActiveNotes();
74 void updateActiveNotes();
76 void noteOff(
ModelStack& modelStack,
Instrument& activeInstrument,
bool clipIsActiveOnInstrument, int32_t note);
80 void graphicsRoutine()
override;
81 bool getAffectEntire()
override;
83 void unscrolledPadAudition(int32_t velocity, int32_t note,
bool shiftButtonDown);
86 InstrumentClipMinder::renderOLED(canvas);
89 void selectLayout(int8_t offset);
90 void enterScaleMode(int32_t selectedRootNote = kDefaultCalculateRootNote);
92 void drawNoteCode(int32_t noteCode);
94 PressedPad pressedPads[kMaxNumKeyboardPadPresses];
95 NotesState lastNotesState;
96 NotesState currentNotesState;
98 bool keyboardButtonActive =
false;
99 bool keyboardButtonUsed =
false;
100 bool yEncoderActive =
false;
101 bool xEncoderActive =
false;
UIType getUIContextType() override
What context does UI relate to? e.g. UIType could be AUTOMATION but UIContextType could be ARRANGER,...
Definition keyboard_screen.h:64