tracktion-engine 3.0-10-g034fdde4aa5
Tracktion Engine — High level data model for audio applications

« « « Anklang Documentation
Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Friends | List of all members
tracktion::engine::Selectable Class Referenceabstract

Base class for things that can be selected, and whose properties can appear in the properties panel. More...

#include "tracktion_Selectable.h"

Inheritance diagram for tracktion::engine::Selectable:
tracktion::engine::AutomatableParameter tracktion::engine::ClipSlot tracktion::engine::ControlSurface tracktion::engine::CurveEditorPoint tracktion::engine::Edit tracktion::engine::InputDevice tracktion::engine::InputDeviceInstance::Destination tracktion::engine::MakeMonoEffect tracktion::engine::Modifier tracktion::engine::NormaliseEffect tracktion::engine::OutputDevice tracktion::engine::Plugin tracktion::engine::Project tracktion::engine::ProjectItem tracktion::engine::RackType tracktion::engine::Scene tracktion::engine::SelectedMidiEvents tracktion::engine::StepClip::Channel tracktion::engine::StepClip::PatternInstance tracktion::engine::StepVolumeEffect tracktion::engine::TempoSequence tracktion::engine::Track tracktion::engine::TrackCompManager::TrackComp tracktion::engine::TrackItem

Classes

class  Listener
 

Public Types

using WeakRef = juce::WeakReference< Selectable >
 

Public Member Functions

virtual juce::String getSelectableDescription ()=0
 Subclasses must return a description of what they are.
 
virtual void selectionStatusChanged (bool isNowSelected)
 Can be overridden to tell this object that it has just been selected or deselected.
 
virtual void changed ()
 This should be called to send a change notification to any SelectableListeners that are registered with this object.
 
virtual void selectableAboutToBeDeleted ()
 Called just before the selectable is about to be deleted so any subclasses should still be valid at this point.
 
void addListener (SelectableListener *)
 
void removeListener (SelectableListener *)
 
void addSelectableListener (SelectableListener *)
 
void removeSelectableListener (SelectableListener *)
 
void cancelAnyPendingUpdates ()
 If changed() has been called, this will cancel any pending async change notificaions.
 
void deselect ()
 
void propertiesChanged ()
 
void notifyListenersOfDeletion ()
 
WeakRef getWeakRef ()
 

Static Public Member Functions

static void initialise ()
 
static bool isSelectableValid (const Selectable *) noexcept
 checks whether this object has been deleted.
 

Public Attributes

WeakRef::Master masterReference
 

Friends

struct SelectableUpdateTimer
 

Detailed Description

Base class for things that can be selected, and whose properties can appear in the properties panel.

Definition at line 37 of file tracktion_Selectable.h.

Member Typedef Documentation

◆ WeakRef

Definition at line 109 of file tracktion_Selectable.h.

Constructor & Destructor Documentation

◆ Selectable()

tracktion::engine::Selectable::Selectable ( )

Definition at line 80 of file tracktion_SelectionManager.cpp.

◆ ~Selectable()

tracktion::engine::Selectable::~Selectable ( )
virtual

Definition at line 86 of file tracktion_SelectionManager.cpp.

Member Function Documentation

◆ addListener()

void tracktion::engine::Selectable::addListener ( SelectableListener l)

Definition at line 122 of file tracktion_SelectionManager.cpp.

◆ addSelectableListener()

void tracktion::engine::Selectable::addSelectableListener ( SelectableListener l)

Definition at line 132 of file tracktion_SelectionManager.cpp.

◆ cancelAnyPendingUpdates()

void tracktion::engine::Selectable::cancelAnyPendingUpdates ( )

If changed() has been called, this will cancel any pending async change notificaions.

Definition at line 112 of file tracktion_SelectionManager.cpp.

◆ changed()

void tracktion::engine::Selectable::changed ( )
virtual

This should be called to send a change notification to any SelectableListeners that are registered with this object.

Reimplemented in tracktion::engine::AudioClipBase, tracktion::engine::Clip, tracktion::engine::EditClip, and tracktion::engine::Plugin.

Definition at line 103 of file tracktion_SelectionManager.cpp.

◆ deselect()

void tracktion::engine::Selectable::deselect ( )

Definition at line 218 of file tracktion_SelectionManager.cpp.

◆ getSelectableDescription()

virtual juce::String tracktion::engine::Selectable::getSelectableDescription ( )
pure virtual

Subclasses must return a description of what they are.

Implemented in tracktion::engine::ControlSurface, tracktion::engine::SelectedMidiEvents, tracktion::engine::BreakpointOscillatorModifier, tracktion::engine::EnvelopeFollowerModifier, tracktion::engine::LFOModifier, tracktion::engine::MIDITrackerModifier, tracktion::engine::RandomModifier, tracktion::engine::StepModifier, tracktion::engine::AutomatableParameter, tracktion::engine::ArrangerClip, tracktion::engine::ChordClip, tracktion::engine::StepVolumeEffect, tracktion::engine::NormaliseEffect, tracktion::engine::MakeMonoEffect, tracktion::engine::CollectionClip, tracktion::engine::ContainerClip, tracktion::engine::EditClip, tracktion::engine::MarkerClip, tracktion::engine::MidiClip, tracktion::engine::StepClip::Channel, tracktion::engine::StepClip::PatternInstance, tracktion::engine::StepClip, tracktion::engine::WaveAudioClip, tracktion::engine::Edit, tracktion::engine::PitchSetting, tracktion::engine::Scene, tracktion::engine::TempoSequence, tracktion::engine::TempoSetting, tracktion::engine::TimeSigSetting, tracktion::engine::ArrangerTrack, tracktion::engine::AudioTrack, tracktion::engine::AutomationTrack, tracktion::engine::ChordTrack, tracktion::engine::ClipSlot, tracktion::engine::FolderTrack, tracktion::engine::MarkerTrack, tracktion::engine::MasterTrack, tracktion::engine::TempoTrack, tracktion::engine::TrackCompManager::TrackComp, tracktion::engine::InputDevice, tracktion::engine::InputDeviceInstance::Destination, tracktion::engine::OutputDevice, tracktion::engine::VirtualMidiInputDevice, tracktion::engine::WaveInputDevice, tracktion::engine::ChorusPlugin, tracktion::engine::CompressorPlugin, tracktion::engine::DelayPlugin, tracktion::engine::EqualiserPlugin, tracktion::engine::FourOscPlugin, tracktion::engine::ImpulseResponsePlugin, tracktion::engine::LatencyPlugin, tracktion::engine::LowPassPlugin, tracktion::engine::MidiModifierPlugin, tracktion::engine::MidiPatchBayPlugin, tracktion::engine::PatchBayPlugin, tracktion::engine::PhaserPlugin, tracktion::engine::PitchShiftPlugin, tracktion::engine::ReverbPlugin, tracktion::engine::SamplerPlugin, tracktion::engine::ToneGeneratorPlugin, tracktion::engine::ExternalPlugin, tracktion::engine::AuxReturnPlugin, tracktion::engine::AuxSendPlugin, tracktion::engine::FreezePointPlugin, tracktion::engine::InsertPlugin, tracktion::engine::LevelMeterPlugin, tracktion::engine::RackInstance, tracktion::engine::RackType, tracktion::engine::TextPlugin, tracktion::engine::VCAPlugin, tracktion::engine::VolumeAndPanPlugin, tracktion::engine::Project, and tracktion::engine::ProjectItem.

◆ getWeakRef()

WeakRef tracktion::engine::Selectable::getWeakRef ( )

Definition at line 111 of file tracktion_Selectable.h.

◆ initialise()

void tracktion::engine::Selectable::initialise ( )
static

Definition at line 73 of file tracktion_SelectionManager.cpp.

◆ isSelectableValid()

bool tracktion::engine::Selectable::isSelectableValid ( const Selectable s)
staticnoexcept

checks whether this object has been deleted.

This is pretty reliable, and can be called with a null pointer, but isn't 100% perfect, as it can provide a false-positive when an object is deleted, and another one later created that happens to have the same memory address.

Definition at line 117 of file tracktion_SelectionManager.cpp.

◆ notifyListenersOfDeletion()

void tracktion::engine::Selectable::notifyListenersOfDeletion ( )

Definition at line 179 of file tracktion_SelectionManager.cpp.

◆ propertiesChanged()

void tracktion::engine::Selectable::propertiesChanged ( )

Definition at line 164 of file tracktion_SelectionManager.cpp.

◆ removeListener()

void tracktion::engine::Selectable::removeListener ( SelectableListener l)

Definition at line 127 of file tracktion_SelectionManager.cpp.

◆ removeSelectableListener()

void tracktion::engine::Selectable::removeSelectableListener ( SelectableListener l)

Definition at line 141 of file tracktion_SelectionManager.cpp.

◆ selectableAboutToBeDeleted()

virtual void tracktion::engine::Selectable::selectableAboutToBeDeleted ( )
virtual

Called just before the selectable is about to be deleted so any subclasses should still be valid at this point.

Reimplemented in tracktion::engine::Modifier, tracktion::engine::ExternalPlugin, and tracktion::engine::Plugin.

Definition at line 64 of file tracktion_Selectable.h.

◆ selectionStatusChanged()

void tracktion::engine::Selectable::selectionStatusChanged ( bool  isNowSelected)
virtual

Can be overridden to tell this object that it has just been selected or deselected.

Reimplemented in tracktion::engine::SelectedMidiEvents, tracktion::engine::ProjectItem, and tracktion::engine::CurveEditorPoint.

Definition at line 99 of file tracktion_SelectionManager.cpp.

Friends And Related Symbol Documentation

◆ SelectableUpdateTimer

friend struct SelectableUpdateTimer
friend

Definition at line 117 of file tracktion_Selectable.h.

Member Data Documentation

◆ masterReference

WeakRef::Master tracktion::engine::Selectable::masterReference

Definition at line 110 of file tracktion_Selectable.h.


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