Pulp 1.88.0
Cross-platform audio plugin framework
Loading...
Searching...
No Matches
track_edit_intent.hpp File Reference

Pointer-neutral track-arrangement intents and their lowering to transactions. More...

#include <pulp/timeline_editor/edit_intent.hpp>
#include <optional>
#include <variant>

Go to the source code of this file.

Classes

struct  pulp::timeline_editor::TrackEditIntent
 One track-arrangement step expressed without reference to the device that produced it. More...
struct  pulp::timeline_editor::TrackCreateIntent
 One complete track insertion expressed without device coordinates. More...

Namespaces

namespace  pulp
namespace  pulp::timeline_editor
 ScriptedUiHost is a SequencerUiHost whose playhead is written by the caller instead of an engine, and which keeps what a view emitted so a test can read it back.

Typedefs

using pulp::timeline_editor::TrackArrangementIntent = std::variant<TrackEditIntent, TrackCreateIntent>
 Reorder or create vocabulary for controls that offer both operations.
using pulp::timeline_editor::TrackEditIntentHost = SequencerUiHostT<TrackEditIntent>
 The host an arranger submits track intents to.
using pulp::timeline_editor::TrackArrangementIntentHost = SequencerUiHostT<TrackArrangementIntent>
 The host an arranger offering reorder and creation submits intents to.

Enumerations

enum class  pulp::timeline_editor::TrackEditIntentKind : std::uint8_t { pulp::timeline_editor::TrackEditIntentKind::Reorder }
 What a track-arrangement gesture does to the document. More...

Functions

runtime::Result< timeline::Transaction, timeline::ModelError > pulp::timeline_editor::lower_track_edit_intent (const TrackEditIntent &intent, const EditIntentIdentity &identity)
 Lowers one track intent to the ordinary transaction that performs it.
runtime::Result< timeline::Transaction, timeline::ModelError > pulp::timeline_editor::lower_track_create_intent (const TrackCreateIntent &intent, const EditIntentIdentity &identity)
 Lowers one complete track-creation intent to InsertTrack.
runtime::Result< timeline::Transaction, timeline::ModelError > pulp::timeline_editor::lower_track_arrangement_intent (const TrackArrangementIntent &intent, const EditIntentIdentity &identity)
 Lowers either complete track-arrangement alternative.

Detailed Description

Pointer-neutral track-arrangement intents and their lowering to transactions.