Deluge Firmware 1.3.0
Build date: 2025.06.05
Loading...
Searching...
No Matches
TimelineView Class Referenceabstract
Inheritance diagram for TimelineView:
Collaboration diagram for TimelineView:

Public Member Functions

void scrollFinished () override
 
TimelineViewtoTimelineView () final
 Convert this view to a TimelineView.
 
virtual uint32_t getMaxZoom ()=0
 
virtual bool calculateZoomPinSquares (uint32_t oldScroll, uint32_t newScroll, uint32_t newZoom, uint32_t oldZoom)
 
virtual uint32_t getMaxLength ()=0
 
virtual bool setupScroll (uint32_t oldScroll)
 
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
 
- Public Member Functions inherited from RootUI
virtual bool getAffectEntire ()
 
bool canSeeViewUnderneath () final
 
virtual bool supportsTriplets () const
 
virtual void notifyPlaybackBegun ()
 
virtual uint32_t getGreyedOutRowsNotRepresentingOutput (Output *output)
 
virtual void noteRowChanged (InstrumentClip *clip, NoteRow *noteRow)
 
virtual void playbackEnded ()
 
virtual void clipNeedsReRendering (Clip *clip)
 
virtual void sampleNeedsReRendering (Sample *sample)
 
- Public Member Functions inherited from UI
virtual ActionResult padAction (int32_t x, int32_t y, int32_t velocity)
 
virtual ActionResult verticalEncoderAction (int32_t offset, bool inCardRoutine)
 
virtual void selectEncoderAction (int8_t offset)
 
virtual void modEncoderAction (int32_t whichModEncoder, int32_t offset)
 
virtual void modButtonAction (uint8_t whichButton, bool on)
 
virtual void modEncoderButtonAction (uint8_t whichModEncoder, bool on)
 
virtual void graphicsRoutine ()
 
virtual ActionResult timerCallback ()
 
virtual bool opened ()
 
virtual void focusRegained ()
 
virtual void displayOrLanguageChanged ()
 
virtual ClipMindertoClipMinder ()
 
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 renderMainPads (uint32_t whichRows=0, RGB image[][kDisplayWidth+kSideBarWidth]=nullptr, uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth]=nullptr, bool drawUndefinedArea=true)
 
virtual bool renderSidebar (uint32_t whichRows=0, RGB image[][kDisplayWidth+kSideBarWidth]=nullptr, uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth]=nullptr)
 
virtual bool exitUI ()
 returns whether a UI exited
 
void close ()
 
virtual void renderOLED (deluge::hid::display::oled_canvas::Canvas &canvas)=0
 
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.)
 
virtual UIType getUIType ()=0
 What type of UI is this? e.g. UIType::ARRANGER.
 
virtual UIType getUIContextType ()
 What context does UI relate to? e.g. UIType could be AUTOMATION but UIContextType could be ARRANGER, AUDIO CLIP, INSTRUMENT CLIP.
 
virtual UIModControllableContext getUIModControllableContext ()
 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.
 

Private Attributes

uint32_t delayHorizontalZoomUntil = 0
 Used when scrolling horizontally to briefly catch on clip's max zoom.
 
int8_t delayHorizontalZoomMagnitude
 

Additional Inherited Members

- Public Attributes inherited from UI
bool oledShowsUIUnderneath
 
- Protected Attributes inherited from UI
UIType uiType
 

Member Function Documentation

◆ buttonAction()

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

Reimplemented from UI.

◆ getMaxLength()

virtual uint32_t TimelineView::getMaxLength ( )
pure virtual

Implemented in PerformanceView.

◆ getMaxZoom()

virtual uint32_t TimelineView::getMaxZoom ( )
pure virtual

Implemented in PerformanceView.

◆ horizontalEncoderAction()

ActionResult TimelineView::horizontalEncoderAction ( int32_t offset)
overridevirtual

Reimplemented from UI.

◆ midiLearnFlash()

void TimelineView::midiLearnFlash ( )
overridevirtual

Reimplemented from RootUI.

◆ scrollFinished()

void TimelineView::scrollFinished ( )
overridevirtual

Reimplemented from UI.

◆ toTimelineView()

TimelineView * TimelineView::toTimelineView ( )
inlinefinalvirtual

Convert this view to a TimelineView.

Returns
nullptr if the view is not a TimelineView, otherwise this cast to a TimelineView

Reimplemented from UI.

Member Data Documentation

◆ delayHorizontalZoomMagnitude

int8_t TimelineView::delayHorizontalZoomMagnitude
private

Horizontal scroll is only delayed in the direction that clip's max zoom was crossed in. This is the direction (-1 or +1).


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