Deluge Firmware 1.3.0
Build date: 2025.04.16
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
 
AutomationSubType getAutomationSubType ()
 
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
 
ActionResult scrollVertical (int32_t scrollAmount)
 
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
 
ClipMindertoClipMinder () override
 
void setAutomationParamType ()
 
bool onAutomationOverview ()
 
bool inAutomationEditor ()
 
bool inNoteEditor ()
 
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 ()
 
- 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)
 

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)
 
void auditionPadAction (int32_t velocity, int32_t yDisplay, 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.

◆ getUIType()

UIType AutomationView::getUIType ( )
inlineoverridevirtual

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: