|
bool | getGreyoutColsAndRows (uint32_t *cols, uint32_t *rows) override |
bool | opened () override |
void | focusRegained () override |
ActionResult | buttonAction (deluge::hid::Button b, bool on, bool inCardRoutine) override |
ActionResult | clipCreationButtonPressed (hid::Button i, bool on, bool routine) |
ActionResult | padAction (int32_t x, int32_t y, int32_t velocity) override |
ActionResult | horizontalEncoderAction (int32_t offset) override |
ActionResult | verticalEncoderAction (int32_t offset, bool inCardRoutine) override |
bool | renderSidebar (uint32_t whichRows, RGB image[][kDisplayWidth+kSideBarWidth], uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth]) override |
void | removeClip (Clip *clip) |
void | redrawClipsOnScreen (bool doRender=true) |
uint32_t | getMaxZoom () override |
void | cloneClip (uint8_t yDisplayFrom, uint8_t yDisplayTo) |
bool | renderRow (ModelStack *modelStack, uint8_t yDisplay, RGB thisImage[kDisplayWidth+kSideBarWidth], uint8_t thisOccupancyMask[kDisplayWidth+kSideBarWidth], bool drawUndefinedArea=true) |
void | graphicsRoutine () override |
int32_t | displayLoopsRemainingPopup (bool ephemeral=false) |
| display number of bars or quarter notes remaining until a launch event
|
void | potentiallyRenderClipLaunchPlayhead (bool reallyNoTickSquare, int32_t sixteenthNotesRemaining) |
void | requestRendering (UI *ui, uint32_t whichMainRows=0xFFFFFFFF, uint32_t whichSideRows=0xFFFFFFFF) |
int32_t | getClipPlaceOnScreen (Clip *clip) |
void | drawStatusSquare (uint8_t yDisplay, RGB thisImage[]) |
void | drawSectionSquare (uint8_t yDisplay, RGB thisImage[]) |
bool | calculateZoomPinSquares (uint32_t oldScroll, uint32_t newScroll, uint32_t newZoom, uint32_t oldZoom) override |
uint32_t | getMaxLength () override |
bool | setupScroll (uint32_t oldScroll) override |
uint32_t | getClipLocalScroll (Clip *loopable, uint32_t overviewScroll, uint32_t xZoom) |
void | flashPlayRoutine () |
void | modEncoderButtonAction (uint8_t whichModEncoder, bool on) override |
void | modButtonAction (uint8_t whichButton, bool on) override |
void | selectEncoderAction (int8_t offset) override |
ActionResult | timerCallback () override |
void | noteRowChanged (InstrumentClip *clip, NoteRow *noteRow) override |
void | setLedStates () |
void | editNumRepeatsTilLaunch (int32_t offset) |
uint32_t | getGreyedOutRowsNotRepresentingOutput (Output *output) override |
bool | renderMainPads (uint32_t whichRows, RGB image[][kDisplayWidth+kSideBarWidth], uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth], bool drawUndefinedArea=true) override |
void | midiLearnFlash () override |
void | transitionToViewForClip (Clip *clip=nullptr) |
void | transitionToSessionView () |
void | finishedTransitioningHere () |
void | playbackEnded () override |
void | clipNeedsReRendering (Clip *clip) override |
void | sampleNeedsReRendering (Sample *sample) override |
Clip * | getClipOnScreen (int32_t yDisplay) |
Output * | getOutputFromPad (int32_t x, int32_t y) |
void | modEncoderAction (int32_t whichModEncoder, int32_t offset) override |
ActionResult | verticalScrollOneSquare (int32_t direction) |
void | renderOLED (deluge::hid::display::oled_canvas::Canvas &canvas) override |
void | redrawNumericDisplay () |
void | clearNumericDisplay () |
void | displayRepeatsTilLaunch () |
Clip * | getClipForLayout () |
int32_t | getClipIndexForLayout () |
void | copyClipName (Clip *source, Clip *target, Output *targetOutput) |
bool | gridFirstPadActive () |
ActionResult | gridHandlePads (int32_t x, int32_t y, int32_t on) |
ActionResult | gridHandleScroll (int32_t offsetX, int32_t offsetY) |
UIType | getUIType () override |
| What type of UI is this? e.g. UIType::ARRANGER.
|
UIModControllableContext | getUIModControllableContext () override |
| What mod controllable context is this UI using? E.g. Automation View can use the Song ModControllable when in Arranger but the Clip ModControllable when in a Clip.
|
Clip * | createNewClip (OutputType outputType, int32_t yDisplay) |
void | enterMacrosConfigMode () |
void | exitMacrosConfigMode () |
char const * | getMacroKindString (SessionMacroKind kind) |
void | enterMidiLearnMode () |
void | exitMidiLearnMode () |
void | displayPotentialTempoChange (UI *ui) |
void | displayTempoBPM (deluge::hid::display::oled_canvas::Canvas &canvas, StringBuf &tempoBPM, bool clearArea) |
void | displayCurrentRootNoteAndScaleName (deluge::hid::display::oled_canvas::Canvas &canvas, StringBuf &rootNoteAndScaleName, bool clearArea) |
void | replaceInstrumentClipWithAudioClip (Clip *clip) |
void | gridPulseSelectedClip () |
void | scrollFinished () override |
TimelineView * | toTimelineView () final |
| Convert this view to a TimelineView.
|
virtual int32_t | getNavSysId () const |
virtual void | tellMatrixDriverWhichRowsContainSomethingZoomable () |
ActionResult | buttonAction (deluge::hid::Button b, bool on, bool inCardRoutine) override |
void | displayZoomLevel (bool justPopup=false) |
ActionResult | horizontalEncoderAction (int32_t offset) override |
void | displayScrollPos () |
void | displayNumberOfBarsAndBeats (uint32_t number, uint32_t quantization, bool countFromOne, char const *tooLongText) |
void | initiateXScroll (uint32_t newXScroll, int32_t numSquaresToScroll=kDisplayWidth) |
bool | zoomToMax (bool inOnly=false) |
void | initiateXZoom (int32_t zoomMagnitude, int32_t newScroll, uint32_t oldZoom) |
void | midiLearnFlash () override |
bool | scrollRightToEndOfLengthIfNecessary (int32_t maxLength) |
bool | scrollLeftIfTooFarRight (int32_t maxLength) |
void | tripletsButtonPressed () |
void | setTripletsLEDState () |
int32_t | getPosFromSquare (int32_t square, int32_t localScroll=-1) const |
int32_t | getPosFromSquare (int32_t square, int32_t xScroll, uint32_t xZoom) const |
int32_t | getSquareFromPos (int32_t pos, bool *rightOnSquare=nullptr, int32_t localScroll=-1) |
int32_t | getSquareFromPos (int32_t pos, bool *rightOnSquare, int32_t xScroll, uint32_t xZoom) |
int32_t | getSquareEndFromPos (int32_t pos, int32_t localScroll=-1) |
bool | isSquareDefined (int32_t square, int32_t xScroll=-1) |
bool | isSquareDefined (int32_t square, int32_t xScroll, uint32_t xZoom) |
bool | inTripletsView () const |
virtual bool | getAffectEntire () |
bool | canSeeViewUnderneath () final |
virtual bool | supportsTriplets () const |
virtual void | notifyPlaybackBegun () |
virtual void | displayOrLanguageChanged () |
virtual ClipMinder * | toClipMinder () |
virtual bool | pcReceivedForMidiLearn (MIDICable &fromCable, int32_t channel, int32_t program) |
virtual bool | noteOnReceivedForMidiLearn (MIDICable &fromCable, int32_t channel, int32_t note, int32_t velocity) |
virtual bool | exitUI () |
| returns whether a UI exited
|
void | close () |
virtual UI * | getUI () |
| When entering a UI (e.g. automationView), you may wish to open a different UI based on the current context (e.g. automationViewArranger, automationViewAudioClip, etc.)
|
virtual UIType | getUIContextType () |
| What context does UI relate to? e.g. UIType could be AUTOMATION but UIContextType could be ARRANGER, AUDIO CLIP, INSTRUMENT CLIP.
|
|
void | commandChangeSectionRepeats (int8_t offset) |
void | commandChangeClipPreset (int8_t offset) |
void | commandChangeCurrentSectionRepeats (int8_t offset) |
void | commandChangeLayout (int8_t offset) |
void | renderViewDisplay () |
| render session view display on opening
|
void | sectionPadAction (uint8_t y, bool on) |
void | clipPressEnded () |
void | drawSectionRepeatNumber () |
void | beginEditingSectionRepeatsNum () |
void | goToArrangementEditor () |
void | rowNeedsRenderingDependingOnSubMode (int32_t yDisplay) |
void | setCentralLEDStates () |
Clip * | createNewAudioClip (int32_t yDisplay) |
Clip * | createNewInstrumentClip (OutputType outputType, int32_t yDisplay) |
bool | createNewTrackForAudioClip (AudioClip *newClip) |
bool | createNewTrackForInstrumentClip (OutputType type, InstrumentClip *clip, bool copyDrumsFromClip) |
bool | insertAndResyncNewClip (Clip *newClip, int32_t yDisplay) |
void | resyncNewClip (Clip *newClip, ModelStackWithTimelineCounter *modelStackWithTimelineCounter) |
void | selectLayout (int8_t offset) |
void | renderLayoutChange (bool displayPopup=true) |
void | selectSpecificLayout (SessionLayoutType layout) |
bool | gridRenderSidebar (uint32_t whichRows, RGB image[][kDisplayWidth+kSideBarWidth], uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth]) |
void | gridRenderActionModes (int32_t y, RGB image[][kDisplayWidth+kSideBarWidth], uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth]) |
bool | gridRenderMainPads (uint32_t whichRows, RGB image[][kDisplayWidth+kSideBarWidth], uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth], bool drawUndefinedArea=true) |
RGB | gridRenderClipColor (Clip *clip, int32_t x, int32_t y, bool renderPulse=true) |
ActionResult | gridHandlePadsEdit (int32_t x, int32_t y, int32_t on, Clip *clip) |
ActionResult | gridHandlePadsLaunch (int32_t x, int32_t y, int32_t on, Clip *clip) |
ActionResult | gridHandlePadsLaunchImmediate (int32_t x, int32_t y, int32_t on, Clip *clip) |
ActionResult | gridHandlePadsLaunchWithSelection (int32_t x, int32_t y, int32_t on, Clip *clip) |
void | gridHandlePadsWithMidiLearnPressed (int32_t x, int32_t on, Clip *clip) |
ActionResult | gridHandlePadsMacros (int32_t x, int32_t y, int32_t on, Clip *clip) |
void | gridHandlePadsLaunchToggleArming (Clip *clip, bool immediate) |
void | gridTransitionToSessionView () |
void | gridTransitionToViewForClip (Clip *clip) |
bool | gridSecondPadInactive () |
void | gridResetPresses (bool first=true, bool second=true) |
Clip * | gridCloneClip (Clip *sourceClip) |
Clip * | gridCreateClipInTrack (Output *targetOutput) |
AudioClip * | gridCreateAudioClipWithNewTrack () |
InstrumentClip * | gridCreateInstrumentClipWithNewTrack (OutputType type) |
Clip * | gridCreateClip (uint32_t targetSection, Output *targetOutput=nullptr, Clip *sourceClip=nullptr) |
void | gridClonePad (uint32_t sourceX, uint32_t sourceY, uint32_t targetX, uint32_t targetY) |
void | setupNewClip (Clip *newClip) |
void | gridStartSection (uint32_t section, bool instant) |
void | gridToggleClipPlay (Clip *clip, bool instant) |
const size_t | gridTrackCount () const |
uint32_t | gridClipCountForTrack (Output *track) |
uint32_t | gridTrackIndexFromTrack (Output *track, uint32_t maxTrack) |
Output * | gridTrackFromIndex (uint32_t trackIndex, uint32_t maxTrack) |
int32_t | gridYFromSection (uint32_t section) |
int32_t | gridSectionFromY (uint32_t y) |
int32_t | gridXFromTrack (uint32_t trackIndex) |
int32_t | gridTrackIndexFromX (uint32_t x, uint32_t maxTrack) |
Output * | gridTrackFromX (uint32_t x, uint32_t maxTrack) |
Clip * | gridClipFromCoords (uint32_t x, uint32_t y) |
int32_t | gridClipIndexFromCoords (uint32_t x, uint32_t y) |
Cartesian | gridXYFromClip (Clip &clip) |
void | gridSetDefaultMode () |
void | setupTrackCreation () const |
void | exitTrackCreation () |
void | gridStopSelectedClipPulsing () |
| disable selected clip pulsing
|
void | gridResetSelectedClipPulseProgress () |
| reset blend position for pulse
|
void | gridSelectClipForPulsing (Clip &clip) |
| render pulse for selected clip
|
bool | gridCheckForPulseStop () |
| check if we should stop pulsing
|