An EditInsertPoint is like a "paste location".
More...
#include <tracktion_EditInsertPoint.h>
|
| EditInsertPoint (Edit &) |
| Creates an EditInsertPoint for a given Edit.
|
|
virtual | ~EditInsertPoint ()=default |
| Destructor.
|
|
bool | setNextInsertPoint (ClipOwner *, std::optional< TimePosition >) |
| Sets the next insertion point to a given ClipOwner and Time (if provided).
|
|
void | setNextInsertPoint (TimePosition, const juce::ReferenceCountedObjectPtr< Track > &) |
| Sets the next insertion point to a given time and track.
|
|
void | setNextInsertPoint (TimePosition) |
| Updates the time but not the track.
|
|
void | setNextInsertPointAfterSelected () |
| Sets a flag to signify chooseInsertPoint should use the selected track as the insertion point.
|
|
void | lockInsertPoint (bool lock) noexcept |
| Locks the insert point so calls to setNextInsertPoint won't have any effect.
|
|
virtual void | chooseInsertPoint (juce::ReferenceCountedObjectPtr< Track > &, TimePosition &start, bool pasteAfterSelection, SelectionManager *) |
| Returns the track and time position content should be pasted at.
|
|
void | chooseInsertPoint (juce::ReferenceCountedObjectPtr< Track > &, TimePosition &start, bool pasteAfterSelection, SelectionManager *, std::function< bool(Track &)> allowedTrackPredicate) |
| This is the same as the other overload except you can supply a predicate to determine if tracks are allowed to be considered or not.
|
|
virtual Placement | chooseInsertPoint (bool pasteAfterSelection, SelectionManager *, std::function< bool(Track &)> allowedTrackPredicate) |
| Returns a Placement representing where content should be pasted at.
|
|
An EditInsertPoint is like a "paste location".
It can be updated as user iteraction warrents e.g. by selecting tracks/plugins/clips etc. and calling setNextInsertPoint. Then when new content is added, it can use the insert point to find the track and time position where content should be placed
- See also
- chooseInsertPoint This is used by some other classes such as the Clipboard.
◆ EditInsertPoint()
tracktion::engine::EditInsertPoint::EditInsertPoint |
( |
Edit & |
| ) |
|
◆ ~EditInsertPoint()
virtual tracktion::engine::EditInsertPoint::~EditInsertPoint |
( |
| ) |
|
|
virtualdefault |
◆ setNextInsertPoint() [1/3]
bool tracktion::engine::EditInsertPoint::setNextInsertPoint |
( |
ClipOwner * |
, |
|
|
std::optional< TimePosition > |
|
|
) |
| |
Sets the next insertion point to a given ClipOwner and Time (if provided).
N.B. This will only be updated of the ClipOwner provides a valid EditItemID.
- Parameters
-
ClipOwner | The ClipOwner to insert in to |
std::optional<TimePosition> | An optional time position to insert at |
- Returns
- If the insert point has been changed, this will return true, false otherwise.
◆ setNextInsertPoint() [2/3]
void tracktion::engine::EditInsertPoint::setNextInsertPoint |
( |
TimePosition |
, |
|
|
const juce::ReferenceCountedObjectPtr< Track > & |
|
|
) |
| |
Sets the next insertion point to a given time and track.
◆ setNextInsertPoint() [3/3]
void tracktion::engine::EditInsertPoint::setNextInsertPoint |
( |
TimePosition |
| ) |
|
Updates the time but not the track.
◆ setNextInsertPointAfterSelected()
void tracktion::engine::EditInsertPoint::setNextInsertPointAfterSelected |
( |
| ) |
|
Sets a flag to signify chooseInsertPoint should use the selected track as the insertion point.
◆ lockInsertPoint()
void tracktion::engine::EditInsertPoint::lockInsertPoint |
( |
bool |
lock | ) |
|
|
noexcept |
Locks the insert point so calls to setNextInsertPoint won't have any effect.
◆ chooseInsertPoint() [1/3]
virtual void tracktion::engine::EditInsertPoint::chooseInsertPoint |
( |
juce::ReferenceCountedObjectPtr< Track > & |
, |
|
|
TimePosition & |
start, |
|
|
bool |
pasteAfterSelection, |
|
|
SelectionManager * |
|
|
) |
| |
|
virtual |
Returns the track and time position content should be pasted at.
- Returns
- Track The track to insert in to
-
start The time at which to insert at
- Parameters
-
◆ chooseInsertPoint() [2/3]
void tracktion::engine::EditInsertPoint::chooseInsertPoint |
( |
juce::ReferenceCountedObjectPtr< Track > & |
, |
|
|
TimePosition & |
start, |
|
|
bool |
pasteAfterSelection, |
|
|
SelectionManager * |
, |
|
|
std::function< bool(Track &)> |
allowedTrackPredicate |
|
) |
| |
This is the same as the other overload except you can supply a predicate to determine if tracks are allowed to be considered or not.
Useful for when they are hidden etc.
- Parameters
-
allowedTrackPredicate | A predicate to determine if the track can be pasted in to |
◆ chooseInsertPoint() [3/3]
virtual Placement tracktion::engine::EditInsertPoint::chooseInsertPoint |
( |
bool |
pasteAfterSelection, |
|
|
SelectionManager * |
, |
|
|
std::function< bool(Track &)> |
allowedTrackPredicate |
|
) |
| |
|
virtual |
Returns a Placement representing where content should be pasted at.
- Parameters
-
- Returns
- Placement Where to insert content
◆ edit
Edit& tracktion::engine::EditInsertPoint::edit |
|
protected |
◆ nextInsertPointTime
TimePosition tracktion::engine::EditInsertPoint::nextInsertPointTime |
|
protected |
◆ nextInsertPointTrack
EditItemID tracktion::engine::EditInsertPoint::nextInsertPointTrack |
|
protected |
◆ nextInsertPointClipOwner
EditItemID tracktion::engine::EditInsertPoint::nextInsertPointClipOwner |
|
protected |
◆ lockInsertPointCount
int tracktion::engine::EditInsertPoint::lockInsertPointCount = 0 |
|
protected |
◆ nextInsertIsAfterSelected
bool tracktion::engine::EditInsertPoint::nextInsertIsAfterSelected = false |
|
protected |
The documentation for this class was generated from the following file: