11namespace tracktion {
inline namespace engine
24 virtual Edit* getCurrentlyFocusedEdit() {
return {}; }
25 virtual Edit* getLastFocusedEdit() {
return {}; }
27 virtual bool isEditVisibleOnScreen (
const Edit&) {
return true; }
28 virtual bool closeAllEditsBelongingToProject (
Project&) {
return false; }
29 virtual void editNamesMayHaveChanged() {}
31 virtual SelectionManager* getCurrentlyFocusedSelectionManager() {
return {}; }
35 virtual Project::Ptr getCurrentlyFocusedProject() {
return {}; }
36 virtual void selectProjectInFocusedWindow (
Project::Ptr) {}
37 virtual void updateAllProjectItemLists() {}
68 formatManagerToUse, cacheToUse);
106 virtual bool getBigInputMetersMode() {
return false; }
107 virtual void setBigInputMetersMode (
bool) {}
109 virtual bool shouldGenerateLiveWaveformsWhenRecording() {
return true; }
111 virtual void showSafeRecordDialog (TransportControl&) {}
112 virtual void hideSafeRecordDialog (TransportControl&) {}
114 virtual void showProjectScreen() {}
115 virtual void showSettingsScreen() {}
116 virtual void showEditScreen() {}
118 virtual void showHideVideo() {}
119 virtual void showHideInputs() {}
120 virtual void showHideOutputs() {}
121 virtual void showHideMixer ([[maybe_unused]]
bool fullscreen) {}
122 virtual void showHideMidiEditor ([[maybe_unused]]
bool fullscreen) {}
123 virtual void showHideTrackEditor ([[maybe_unused]]
bool zoom) {}
124 virtual void showHideBrowser() {}
125 virtual void showHideActions() {}
126 virtual void showHideAllPanes() {}
127 virtual void toggleScroll() {}
128 virtual bool isScrolling() {
return false; }
130 virtual void performUserAction (
int) {}
132 virtual void scrollTracksUp() {}
133 virtual void scrollTracksDown() {}
134 virtual void scrollTracksLeft() {}
135 virtual void scrollTracksRight() {}
137 virtual void nudgeSelectedClips (TimecodeSnapType,
const juce::String& commandDesc,
139 virtual void nudgeSelected (TimecodeSnapType,
const juce::String& commandDesc,
bool automationLocked);
140 virtual void nudgeSelected (
const juce::String& commandDesc);
142 virtual void stopPreviewPlayback() {}
143 virtual void resetOverloads() {}
144 virtual void resetPeaks() {}
146 virtual void zoomHorizontal (
float ) {}
147 virtual void zoomVertical (
float ) {}
148 virtual void zoomToSelection() {}
149 virtual void zoomToFitHorizontally() {}
150 virtual void zoomToFitVertically() {}
The Tracktion Edit class!
Manages a list of items that are currently selected.
Base class for tracks which contain clips and plugins and can be added to Edit[s].
Create a subclass of UIBehaviour to custom UI elements created by the engine.
virtual bool showOkCancelAlertBox(const juce::String &title, const juce::String &message, const juce::String &ok={}, const juce::String &cancel={})
Should display a dismissable alert window.
virtual void recreatePluginWindowContentAsync(Plugin &)
Should trigger an asynchronous refresh of any editor components showing for this plugin.
virtual std::unique_ptr< juce::Component > createPluginWindow(PluginWindowState &)
Must create a suitable Component plugin window for the given PluginWindowState.
virtual void showInfoMessage(const juce::String &message)
Should display a temporary information message, usually in the same place.
virtual void runTaskWithProgressBar(ThreadPoolJobWithProgress &)
Should run this task in the current window, with a progress bar, blocking until the task is done.
virtual void newTrackCreated(Track &)
Called when a new track is created from some kind of user action i.e.
virtual SelectableList getAssociatedClipsToEdit(const SelectableList &items)
If your UI has the concept of edit groups, you should return an expanded list of selected items that ...
virtual TimeRange getEditingRange(Edit &)
Should return the range which used be used for edit operations such as coping or deleting.
virtual void showWarningAlert(const juce::String &title, const juce::String &message)
Should display a dismissable alert window.
virtual int showYesNoCancelAlertBox(const juce::String &title, const juce::String &message, const juce::String &yes={}, const juce::String &no={}, const juce::String &cancel={})
Should display a dismissable alert window.
virtual Plugin::Ptr showMenuAndCreatePlugin(Plugin::Type, Edit &)
Should show the new plugin window and creates the Plugin the user selects.
virtual void showWarningMessage(const juce::String &message)
Should display a temporary warning message.
virtual void showQuantisationLevel()
Should show the current quantisation level for a short period of time.
virtual TimePosition getEditingPosition(Edit &)
Should return the position which used be used for edit operations such as splitting.
virtual juce::Array< Track * > getEditingTracks(Edit &)
Can return a range of tracks which used be used for edit operations such as coping or deleting.
virtual std::unique_ptr< juce::AudioThumbnailBase > createAudioThumbnail(int sourceSamplesPerThumbnailSample, juce::AudioFormatManager &formatManagerToUse, juce::AudioThumbnailCache &cacheToUse)
Must create an AudioThumnail for displaying, usually in a SmartThumbnail.
RangeType< TimePosition > TimeRange
A RangeType based on real time (i.e.
A list of Selectables, similar to a juce::Array but contains a cached list of the SelectableClasses f...