Deluge Firmware 1.3.0
Build date: 2025.06.30
Loading...
Searching...
No Matches
AutomationView Class Referencefinal
Inheritance diagram for AutomationView:
Collaboration diagram for AutomationView:

Public Member Functions

bool opened () override
void initializeView ()
void openedInBackground ()
void focusRegained () override
void graphicsRoutine () override
UIType getUIType () override
 What type of UI is this? e.g. UIType::ARRANGER.
UIType getUIContextType () override
 What context does UI relate to? e.g. UIType could be AUTOMATION but UIContextType could be ARRANGER, AUDIO CLIP, INSTRUMENT CLIP.
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.
ClipMindertoClipMinder () override
void setAutomationParamType ()
bool onAutomationOverview ()
bool inAutomationEditor ()
bool inNoteEditor ()
bool possiblyRefreshAutomationEditorGrid (Clip *clip, deluge::modulation::params::Kind paramKind, int32_t paramID)
bool renderMainPads (uint32_t whichRows, RGB image[][kDisplayWidth+kSideBarWidth], uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth], bool drawUndefinedArea=true) override
bool renderSidebar (uint32_t whichRows, RGB image[][kDisplayWidth+kSideBarWidth], uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth]) override
void renderDisplay (int32_t knobPosLeft=kNoSelection, int32_t knobPosRight=kNoSelection, bool modEncoderAction=false)
void displayAutomation (bool padSelected=false, bool updateDisplay=true)
void renderOLED (deluge::hid::display::oled_canvas::Canvas &canvas) override
ActionResult buttonAction (deluge::hid::Button b, bool on, bool inCardRoutine) override
ActionResult padAction (int32_t x, int32_t y, int32_t velocity) override
ActionResult horizontalEncoderAction (int32_t offset) override
uint32_t getMaxLength () override
uint32_t getMaxZoom () override
int32_t getNavSysId () const override
ActionResult verticalEncoderAction (int32_t offset, bool inCardRoutine) override
void potentiallyVerticalScrollToSelectedDrum (InstrumentClip *clip, Output *output)
void modEncoderAction (int32_t whichModEncoder, int32_t offset) override
void modEncoderButtonAction (uint8_t whichModEncoder, bool on) override
void selectEncoderAction (int8_t offset) override
void getLastSelectedParamShortcut (Clip *clip)
void getLastSelectedParamArrayPosition (Clip *clip)
void noteRowChanged (InstrumentClip *clip, NoteRow *noteRow) override
void notifyPlaybackBegun () override
ModelStackWithAutoParamgetModelStackWithParamForClip (ModelStackWithTimelineCounter *modelStack, Clip *clip, int32_t paramID=deluge::modulation::params::kNoParamID, deluge::modulation::params::Kind paramKind=deluge::modulation::params::Kind::NONE)
void initParameterSelection (bool updateDisplay=true)
void blinkInterpolationShortcut ()
void blinkPadSelectionShortcut ()
int32_t getAutomationParameterKnobPos (ModelStackWithAutoParam *modelStack, uint32_t pos)
void setAutomationKnobIndicatorLevels (ModelStackWithAutoParam *modelStack, int32_t knobPosLeft, int32_t knobPosRight)
void resetInterpolationShortcutBlinking ()
void resetPadSelectionShortcutBlinking ()
bool getAffectEntire () override
void resetShortcutBlinking ()
Public Member Functions inherited from ClipView
uint32_t getMaxZoom () override
uint32_t getMaxLength () override
ActionResult horizontalEncoderAction (int32_t offset) override
int32_t getLengthChopAmount (int32_t square)
int32_t getLengthExtendAmount (int32_t square)
void focusRegained () override
ActionResult buttonAction (deluge::hid::Button b, bool on, bool inCardRoutine) override
Public Member Functions inherited from TimelineView
void scrollFinished () override
TimelineViewtoTimelineView () final
 Convert this view to a TimelineView.
virtual bool calculateZoomPinSquares (uint32_t oldScroll, uint32_t newScroll, uint32_t newZoom, uint32_t oldZoom)
virtual bool setupScroll (uint32_t oldScroll)
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
Public Member Functions inherited from RootUI
bool canSeeViewUnderneath () final
virtual bool supportsTriplets () const
virtual uint32_t getGreyedOutRowsNotRepresentingOutput (Output *output)
virtual void playbackEnded ()
virtual void clipNeedsReRendering (Clip *clip)
virtual void sampleNeedsReRendering (Sample *sample)
Public Member Functions inherited from UI
virtual void modButtonAction (uint8_t whichButton, bool on)
virtual ActionResult timerCallback ()
virtual void displayOrLanguageChanged ()
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 getGreyoutColsAndRows (uint32_t *cols, uint32_t *rows)
virtual bool exitUI ()
 returns whether a UI exited
void close ()
virtual UIgetUI ()
 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.)
Public Member Functions inherited from InstrumentClipMinder
void displayOrLanguageChanged ()
bool createNewInstrument (OutputType newOutputType, bool is_dx=false)
void setLedStates ()
void focusRegained ()
ActionResult buttonAction (deluge::hid::Button b, bool on, bool inCardRoutine)
void calculateDefaultRootNote ()
void drawActualNoteCode (int16_t noteCode)
void cycleThroughScales ()
bool setScale (Scale newScale)
void displayScaleName (Scale scale)
void displayCurrentScaleName ()
void selectEncoderAction (int32_t offset)
bool changeOutputType (OutputType newOutputType)
void renderOLED (deluge::hid::display::oled_canvas::Canvas &canvas)
Public Member Functions inherited from ClipMinder
ActionResult buttonAction (deluge::hid::Button b, bool on)
void transitionToArrangerOrSession ()
 Called by button action of active clip view when b == SESSION_VIEW.

Public Attributes

int32_t navSysId
CopiedParamAutomation copiedParamAutomation
bool multiPadPressSelected
bool interpolation
bool interpolationBefore
bool interpolationAfter
bool onArrangerView
bool onMenuView
UIpreviousUI
AutomationParamType automationParamType
Public Attributes inherited from UI
bool oledShowsUIUnderneath

Private Member Functions

void handleSessionButtonAction (Clip *clip, bool on)
void handleKeyboardButtonAction (bool on)
void handleClipButtonAction (bool on, bool isAudioClip)
void handleCrossScreenButtonAction (bool on)
void handleKitButtonAction (OutputType outputType, bool on)
void handleSynthButtonAction (OutputType outputType, bool on)
void handleMidiButtonAction (OutputType outputType, bool on)
void handleCVButtonAction (OutputType outputType, bool on)
bool handleHorizontalEncoderButtonAction (bool on, bool isAudioClip)
bool handleBackAndHorizontalEncoderButtonComboAction (Clip *clip, bool on)
void handleVerticalEncoderButtonAction (bool on)
void handleSelectEncoderButtonAction (bool on)
void handleAffectEntireButtonAction (bool on)
ActionResult handleEditPadAction (ModelStackWithAutoParam *modelStackWithParam, ModelStackWithNoteRow *modelStackWithNoteRow, NoteRow *noteRow, Clip *clip, Output *output, OutputType outputType, int32_t effectiveLength, int32_t x, int32_t y, int32_t velocity, SquareInfo &squareInfo)
bool shortcutPadAction (ModelStackWithAutoParam *modelStackWithParam, Clip *clip, Output *output, OutputType outputType, int32_t effectiveLength, int32_t x, int32_t y, int32_t velocity, int32_t xScroll, int32_t xZoom, SquareInfo &squareInfo)
bool toggleAutomationInterpolation ()
 toggle automation interpolation on / off
bool toggleVelocityPadSelectionMode (SquareInfo &squareInfo)
 toggle velocity pad selection mode on / off
bool toggleAutomationPadSelectionMode (ModelStackWithAutoParam *modelStackWithParam, int32_t effectiveLength, int32_t xScroll, int32_t xZoom)
 toggle automation pad selection mode on / off
void handleParameterSelection (Clip *clip, Output *output, OutputType outputType, int32_t xDisplay, int32_t yDisplay)
void noteEditPadAction (ModelStackWithNoteRow *modelStackWithNoteRow, NoteRow *noteRow, InstrumentClip *clip, int32_t x, int32_t y, int32_t velocity, int32_t effectiveLength, SquareInfo &squareInfo)
void velocityPadSelectionAction (ModelStackWithNoteRow *modelStackWithNoteRow, InstrumentClip *clip, int32_t x, int32_t y, int32_t velocity, SquareInfo &squareInfo)
void velocityEditPadAction (ModelStackWithNoteRow *modelStackWithNoteRow, NoteRow *noteRow, InstrumentClip *clip, int32_t x, int32_t y, int32_t velocity, int32_t effectiveLength, SquareInfo &squareInfo)
int32_t getVelocityFromY (int32_t y)
int32_t getYFromVelocity (int32_t velocity)
void addNoteWithNewVelocity (int32_t x, int32_t velocity, int32_t newVelocity)
void adjustNoteVelocity (ModelStackWithNoteRow *modelStackWithNoteRow, NoteRow *noteRow, int32_t x, int32_t velocity, int32_t newVelocity, uint8_t squareType)
void setVelocity (ModelStackWithNoteRow *modelStackWithNoteRow, NoteRow *noteRow, int32_t x, int32_t newVelocity)
void setVelocityRamp (ModelStackWithNoteRow *modelStackWithNoteRow, NoteRow *noteRow, SquareInfo rowSquareInfo[kDisplayWidth], int32_t velocityIncrement)
void recordNoteEditPadAction (int32_t x, int32_t velocity)
void automationEditPadAction (ModelStackWithAutoParam *modelStackWithParam, Clip *clip, int32_t xDisplay, int32_t yDisplay, int32_t velocity, int32_t effectiveLength, int32_t xScroll, int32_t xZoom)
bool recordAutomationSinglePadPress (int32_t xDisplay, int32_t yDisplay)
ActionResult handleMutePadAction (ModelStackWithTimelineCounter *modelStackWithTimelineCounter, InstrumentClip *instrumentClip, Output *output, OutputType outputType, int32_t y, int32_t velocity)
ActionResult handleAuditionPadAction (InstrumentClip *instrumentClip, Output *output, OutputType outputType, int32_t y, int32_t velocity)
ActionResult auditionPadAction (InstrumentClip *clip, Output *output, OutputType outputType, int32_t yDisplay, int32_t velocity, bool shiftButtonDown)
void performActualRender (RGB image[][kDisplayWidth+kSideBarWidth], uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth], int32_t xScroll, uint32_t xZoom, int32_t renderWidth, int32_t imageWidth, bool drawUndefinedArea=true)
void renderAutomationOverview (ModelStackWithTimelineCounter *modelStackWithTimelineCounter, ModelStackWithThreeMainThings *modelStackWithThreeMainThings, Clip *clip, OutputType outputType, RGB image[][kDisplayWidth+kSideBarWidth], uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth], int32_t xDisplay, bool isMIDICVDrum)
void renderAutomationEditor (ModelStackWithAutoParam *modelStackWithParam, Clip *clip, RGB image[][kDisplayWidth+kSideBarWidth], uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth], int32_t renderWidth, int32_t xScroll, uint32_t xZoom, int32_t effectiveLength, int32_t xDisplay, bool drawUndefinedArea, deluge::modulation::params::Kind kind, bool isBipolar)
void renderAutomationColumn (ModelStackWithAutoParam *modelStackWithParam, RGB image[][kDisplayWidth+kSideBarWidth], uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth], int32_t lengthToDisplay, int32_t xDisplay, bool isAutomated, int32_t xScroll, int32_t xZoom, deluge::modulation::params::Kind kind, bool isBipolar)
 render each square in each column of the automation editor grid
void renderAutomationBipolarSquare (RGB image[][kDisplayWidth+kSideBarWidth], uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth], int32_t xDisplay, int32_t yDisplay, bool isAutomated, deluge::modulation::params::Kind kind, int32_t knobPos)
 render column for bipolar params - e.g. pan, pitch, patch cable
void renderAutomationUnipolarSquare (RGB image[][kDisplayWidth+kSideBarWidth], uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth], int32_t xDisplay, int32_t yDisplay, bool isAutomated, int32_t knobPos)
 render column for unipolar params (e.g. not pan, pitch, or patch cables)
void renderNoteEditor (ModelStackWithNoteRow *modelStackWithNoteRow, InstrumentClip *clip, RGB image[][kDisplayWidth+kSideBarWidth], uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth], int32_t renderWidth, int32_t xScroll, uint32_t xZoom, int32_t effectiveLength, int32_t xDisplay, bool drawUndefinedArea, SquareInfo &squareInfo)
void renderNoteColumn (ModelStackWithNoteRow *modelStackWithNoteRow, InstrumentClip *clip, RGB image[][kDisplayWidth+kSideBarWidth], uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth], int32_t xDisplay, int32_t xScroll, int32_t xZoom, SquareInfo &squareInfo)
 render each square in each column of the note editor grid
void renderNoteSquare (RGB image[][kDisplayWidth+kSideBarWidth], uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth], int32_t xDisplay, int32_t yDisplay, uint8_t squareType, int32_t value)
 render column for note parameter
void renderUndefinedArea (int32_t xScroll, uint32_t xZoom, int32_t lengthToDisplay, RGB image[][kDisplayWidth+kSideBarWidth], uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth], int32_t imageWidth, TimelineView *timelineView, bool tripletsOnHere, int32_t xDisplay)
void renderDisplayOLED (Clip *clip, Output *output, OutputType outputType, int32_t knobPosLeft=kNoSelection, int32_t knobPosRight=kNoSelection)
void renderAutomationOverviewDisplayOLED (deluge::hid::display::oled_canvas::Canvas &canvas, Output *output, OutputType outputType)
void renderAutomationEditorDisplayOLED (deluge::hid::display::oled_canvas::Canvas &canvas, Clip *clip, OutputType outputType, int32_t knobPosLeft, int32_t knobPosRight)
void renderNoteEditorDisplayOLED (deluge::hid::display::oled_canvas::Canvas &canvas, InstrumentClip *clip, OutputType outputType, int32_t knobPosLeft, int32_t knobPosRight)
void renderDisplay7SEG (Clip *clip, Output *output, OutputType outputType, int32_t knobPosLeft=kNoSelection, bool modEncoderAction=false)
void renderAutomationOverviewDisplay7SEG (Output *output, OutputType outputType)
void renderAutomationEditorDisplay7SEG (Clip *clip, OutputType outputType, int32_t knobPosLeft, bool modEncoderAction)
void renderNoteEditorDisplay7SEG (InstrumentClip *clip, OutputType outputType, int32_t knobPosLeft)
void shiftAutomationHorizontally (ModelStackWithAutoParam *modelStackWithParam, int32_t offset, int32_t effectiveLength)
bool automationModEncoderActionForSelectedPad (ModelStackWithAutoParam *modelStackWithParam, int32_t whichModEncoder, int32_t offset, int32_t effectiveLength)
void automationModEncoderActionForUnselectedPad (ModelStackWithAutoParam *modelStackWithParam, int32_t whichModEncoder, int32_t offset, int32_t effectiveLength)
void copyAutomation (ModelStackWithAutoParam *modelStackWithParam, Clip *clip, int32_t xScroll, int32_t xZoom)
void pasteAutomation (ModelStackWithAutoParam *modelStackWithParam, Clip *clip, int32_t effectiveLength, int32_t xScroll, int32_t xZoom)
void selectGlobalParam (int32_t offset, Clip *clip)
void selectNonGlobalParam (int32_t offset, Clip *clip)
bool selectPatchCable (int32_t offset, Clip *clip)
bool selectPatchCableAtIndex (Clip *clip, PatchCableSet *set, int32_t patchCableIndex, bool &foundCurrentPatchCable)
void selectMIDICC (int32_t offset, Clip *clip)
int32_t getNextSelectedParamArrayPosition (int32_t offset, int32_t lastSelectedParamArrayPosition, int32_t numParams)
void getLastSelectedNonGlobalParamArrayPosition (Clip *clip)
void getLastSelectedGlobalParamArrayPosition (Clip *clip)
void initPadSelection ()
void initInterpolation ()
ParamManagerForTimelinegetParamManagerForClip (Clip *clip)
int32_t getEffectiveLength (ModelStackWithTimelineCounter *modelStack)
uint32_t getSquareWidth (int32_t square, int32_t effectiveLength, int32_t xScroll, int32_t xZoom)
uint32_t getMiddlePosFromSquare (int32_t xDisplay, int32_t effectiveLength, int32_t xScroll, int32_t xZoom)
void getAutomationParameterName (Clip *clip, OutputType outputType, StringBuf &parameterName)
bool getAutomationNodeInterpolation (ModelStackWithAutoParam *modelStack, int32_t pos, bool reversed)
void setAutomationParameterValue (ModelStackWithAutoParam *modelStack, int32_t knobPos, int32_t squareStart, int32_t xDisplay, int32_t effectiveLength, int32_t xScroll, int32_t xZoom, bool modEncoderAction=false)
void updateAutomationModPosition (ModelStackWithAutoParam *modelStack, uint32_t squareStart, bool updateDisplay=true, bool updateIndicatorLevels=true)
void handleAutomationSinglePadPress (ModelStackWithAutoParam *modelStackWithParam, Clip *clip, int32_t xDisplay, int32_t yDisplay, int32_t effectiveLength, int32_t xScroll, int32_t xZoom)
void handleAutomationParameterChange (ModelStackWithAutoParam *modelStackWithParam, Clip *clip, OutputType outputType, int32_t xDisplay, int32_t yDisplay, int32_t effectiveLength, int32_t xScroll, int32_t xZoom)
int32_t calculateAutomationKnobPosForPadPress (ModelStackWithAutoParam *modelStackWithParam, OutputType outputType, int32_t yDisplay)
int32_t calculateAutomationKnobPosForMiddlePadPress (deluge::modulation::params::Kind kind, int32_t yDisplay)
int32_t calculateAutomationKnobPosForSinglePadPress (deluge::modulation::params::Kind kind, int32_t yDisplay)
void handleAutomationMultiPadPress (ModelStackWithAutoParam *modelStackWithParam, Clip *clip, int32_t firstPadX, int32_t firstPadY, int32_t secondPadX, int32_t secondPadY, int32_t effectiveLength, int32_t xScroll, int32_t xZoom, bool modEncoderAction=false)
void renderAutomationDisplayForMultiPadPress (ModelStackWithAutoParam *modelStackWithParam, Clip *clip, int32_t effectiveLength, int32_t xScroll, int32_t xZoom, int32_t xDisplay=kNoSelection, bool modEncoderAction=false)
int32_t calculateAutomationKnobPosForModEncoderTurn (ModelStackWithAutoParam *modelStackWithParam, int32_t knobPos, int32_t offset)
void blinkShortcuts ()
void resetParameterShortcutBlinking ()
void initMIDICCShortcutsForAutomation ()

Private Attributes

bool parameterShortcutBlinking
bool interpolationShortcutBlinking
bool padSelectionShortcutBlinking
bool padSelectionOn
bool multiPadPressActive
bool middlePadPressSelected
int32_t leftPadSelectedX
int32_t leftPadSelectedY
int32_t rightPadSelectedX
int32_t rightPadSelectedY
int32_t lastPadSelectedKnobPos
int32_t numNotesSelected
int32_t selectedPadPressed
bool playbackStopped
uint32_t midiCCShortcutsForAutomation [kDisplayWidth][kDisplayHeight]
bool midiCCShortcutsLoaded
bool probabilityChanged
uint32_t timeSelectKnobLastReleased

Additional Inherited Members

Static Public Member Functions inherited from InstrumentClipMinder
static void redrawNumericDisplay ()
static void drawMIDIControlNumber (int32_t controlNumber, bool automationExists)
static bool makeCurrentClipActiveOnInstrumentIfPossible (ModelStack *modelStack)
Static Public Attributes inherited from InstrumentClipMinder
static int16_t defaultRootNote
static bool toggleScaleModeOnButtonRelease
static uint32_t scaleButtonPressTime
static bool flashDefaultRootNoteOn
static uint8_t editingMIDICCForWhichModKnob
Protected Member Functions inherited from ClipView
int32_t getTickSquare ()
ActionlengthenClip (int32_t newLength)
ActionshortenClip (int32_t newLength)
uint32_t changeClipLength (int32_t offset, uint32_t oldLength, Action *&action)
Protected Member Functions inherited from ClipNavigationTimelineView
void horizontalScrollForLinearRecording (int32_t newXScroll)
Protected Attributes inherited from UI
UIType uiType
Static Protected Attributes inherited from ClipNavigationTimelineView
static int32_t xScrollBeforeFollowingAutoExtendingLinearRecording

Member Function Documentation

◆ buttonAction()

ActionResult AutomationView::buttonAction ( deluge::hid::Button b,
bool on,
bool inCardRoutine )
overridevirtual

Reimplemented from UI.

◆ focusRegained()

void AutomationView::focusRegained ( )
overridevirtual

Reimplemented from UI.

◆ getAffectEntire()

bool AutomationView::getAffectEntire ( )
overridevirtual

Reimplemented from RootUI.

◆ getMaxLength()

uint32_t AutomationView::getMaxLength ( )
overridevirtual

Implements TimelineView.

◆ getMaxZoom()

uint32_t AutomationView::getMaxZoom ( )
overridevirtual

Implements TimelineView.

◆ getNavSysId()

int32_t AutomationView::getNavSysId ( ) const
nodiscardoverridevirtual

Reimplemented from TimelineView.

◆ getUIContextType()

UIType AutomationView::getUIContextType ( )
overridevirtual

What context does UI relate to? e.g. UIType could be AUTOMATION but UIContextType could be ARRANGER, AUDIO CLIP, INSTRUMENT CLIP.

Reimplemented from UI.

◆ getUIModControllableContext()

UIModControllableContext AutomationView::getUIModControllableContext ( )
inlineoverridevirtual

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.

Reimplemented from UI.

◆ getUIType()

UIType AutomationView::getUIType ( )
inlineoverridevirtual

What type of UI is this? e.g. UIType::ARRANGER.

Implements UI.

◆ graphicsRoutine()

void AutomationView::graphicsRoutine ( )
overridevirtual

Reimplemented from UI.

◆ horizontalEncoderAction()

ActionResult AutomationView::horizontalEncoderAction ( int32_t offset)
overridevirtual

Reimplemented from UI.

◆ modEncoderAction()

void AutomationView::modEncoderAction ( int32_t whichModEncoder,
int32_t offset )
overridevirtual

Reimplemented from UI.

◆ modEncoderButtonAction()

void AutomationView::modEncoderButtonAction ( uint8_t whichModEncoder,
bool on )
overridevirtual

Reimplemented from UI.

◆ noteRowChanged()

void AutomationView::noteRowChanged ( InstrumentClip * clip,
NoteRow * noteRow )
overridevirtual

Reimplemented from RootUI.

◆ notifyPlaybackBegun()

void AutomationView::notifyPlaybackBegun ( )
overridevirtual

Reimplemented from RootUI.

◆ opened()

bool AutomationView::opened ( )
overridevirtual

Reimplemented from UI.

◆ padAction()

ActionResult AutomationView::padAction ( int32_t x,
int32_t y,
int32_t velocity )
overridevirtual

Reimplemented from UI.

◆ potentiallyVerticalScrollToSelectedDrum()

void AutomationView::potentiallyVerticalScrollToSelectedDrum ( InstrumentClip * clip,
Output * output )

if we're entering note editor, we want the selected drum to be visible and in sync with lastAuditionedYDisplay so we'll check if the yDisplay of the selectedDrum is in sync with the lastAuditionedYDisplay if they're not in sync, we'll sync them up by performing a vertical scroll

◆ renderMainPads()

bool AutomationView::renderMainPads ( uint32_t whichRows,
RGB image[][kDisplayWidth+kSideBarWidth],
uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth],
bool drawUndefinedArea = true )
overridevirtual

Reimplemented from UI.

◆ renderOLED()

void AutomationView::renderOLED ( deluge::hid::display::oled_canvas::Canvas & canvas)
inlineoverridevirtual

Implements UI.

◆ renderSidebar()

bool AutomationView::renderSidebar ( uint32_t whichRows,
RGB image[][kDisplayWidth+kSideBarWidth],
uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth] )
overridevirtual

Reimplemented from UI.

◆ selectEncoderAction()

void AutomationView::selectEncoderAction ( int8_t offset)
overridevirtual

Reimplemented from UI.

◆ shortcutPadAction()

bool AutomationView::shortcutPadAction ( ModelStackWithAutoParam * modelStackWithParam,
Clip * clip,
Output * output,
OutputType outputType,
int32_t effectiveLength,
int32_t x,
int32_t y,
int32_t velocity,
int32_t xScroll,
int32_t xZoom,
SquareInfo & squareInfo )
private

handles shortcut pad actions, including: 1) toggle interpolation on / off 2) select parameter on automation overview 3) select parameter using shift + shortcut pad 4) select parameter using audition + shortcut pad

◆ toClipMinder()

ClipMinder * AutomationView::toClipMinder ( )
inlineoverridevirtual

Convert this clip to a clip minder. Returns true for views which manage a single clip, false for song level views

Reimplemented from UI.

◆ verticalEncoderAction()

ActionResult AutomationView::verticalEncoderAction ( int32_t offset,
bool inCardRoutine )
overridevirtual

Reimplemented from UI.


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