| 
| bool  | opened () override | 
| bool  | getGreyoutColsAndRows (uint32_t *cols, uint32_t *rows) override | 
| void  | selectEncoderAction (int8_t offset) override | 
| ActionResult  | padAction (int32_t x, int32_t y, int32_t velocity) override | 
| ActionResult  | buttonAction (deluge::hid::Button b, bool on, bool inCardRoutine) override | 
| ActionResult  | verticalEncoderAction (int32_t offset, bool inCardRoutine) override | 
| ActionResult  | horizontalEncoderAction (int32_t offset) override | 
| void  | graphicsRoutine () override | 
| ActionResult  | timerCallback () override | 
| bool  | renderMainPads (uint32_t whichRows, RGB image[][kDisplayWidth+kSideBarWidth]=nullptr, uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth]=nullptr, bool drawUndefinedArea=true) override | 
| bool  | renderSidebar (uint32_t whichRows, RGB image[][kDisplayWidth+kSideBarWidth]=nullptr, uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth]=nullptr) override | 
| void  | renderOLED (deluge::hid::display::oled_canvas::Canvas &canvas) override | 
| 
void  | displayText () | 
| 
void  | loopUnlock () | 
|   | Unlock the loop, allowing the ends to be moved independently. 
  | 
| 
void  | loopLock () | 
|   | Lock the loop so the start and end are always the same number of samples apart. 
  | 
| UIType  | getUIType () override | 
|   | What type of UI is this? e.g. UIType::ARRANGER.  
  | 
| bool  | exitUI () override | 
|   | returns whether a UI exited  
  | 
| 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  | focusRegained () | 
| 
virtual void  | displayOrLanguageChanged () | 
| 
virtual bool  | canSeeViewUnderneath () | 
| virtual ClipMinder *  | toClipMinder () | 
| virtual TimelineView *  | toTimelineView () | 
|   | Convert this view to a TimelineView.  
  | 
| 
virtual void  | scrollFinished () | 
| 
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) | 
| 
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.  
  | 
| 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.  
  | 
 | 
| 
void  | writeValue (uint32_t value, MarkerType markerTypeNow=MarkerType::NOT_AVAILABLE) | 
| 
int32_t  | getStartColOnScreen (int32_t unscrolledPos) | 
| 
int32_t  | getEndColOnScreen (int32_t unscrolledPos) | 
| 
int32_t  | getStartPosFromCol (int32_t col) | 
| 
int32_t  | getEndPosFromCol (int32_t col) | 
| 
void  | getColsOnScreen (MarkerColumn *cols) | 
| 
void  | recordScrollAndZoom () | 
| 
bool  | shouldAllowExtraScrollRight () | 
| void  | renderColumn (int32_t xDisplay, RGB image[kDisplayHeight][kDisplayWidth+kSideBarWidth], MarkerColumn cols[kNumMarkerTypes], int32_t supressMask) | 
| 
void  | renderMarkerInCol (int32_t xDisplay, RGB thisImage[kDisplayHeight][kDisplayWidth+kSideBarWidth], MarkerType type, int32_t yStart, int32_t yEnd, bool dimmly) | 
|   | Draw a single marker. 
  | 
| 
MarkerType  | reverseRemap (MarkerType type) const | 
|   | Swap a marker to its inverse, if the sample is currently reversed. 
  |