Use ARDOUR::PlaylistSet instead of local typedefs
This commit is contained in:
parent
8b59bf47df
commit
dd542b8f4d
@ -1677,7 +1677,7 @@ private:
|
|||||||
|
|
||||||
void fade_range ();
|
void fade_range ();
|
||||||
|
|
||||||
std::set<std::shared_ptr<ARDOUR::Playlist> > motion_frozen_playlists;
|
ARDOUR::PlaylistSet motion_frozen_playlists;
|
||||||
|
|
||||||
bool _dragging_playhead;
|
bool _dragging_playhead;
|
||||||
|
|
||||||
|
@ -2055,7 +2055,7 @@ RegionMoveDrag::finished_no_copy (
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (set<std::shared_ptr<Playlist> >::iterator p = frozen_playlists.begin(); p != frozen_playlists.end(); ++p) {
|
for (PlaylistSet::iterator p = frozen_playlists.begin(); p != frozen_playlists.end(); ++p) {
|
||||||
(*p)->thaw();
|
(*p)->thaw();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2101,7 +2101,7 @@ RegionMoveDrag::remove_region_from_playlist (
|
|||||||
PlaylistSet& modified_playlists
|
PlaylistSet& modified_playlists
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
pair<set<std::shared_ptr<Playlist> >::iterator, bool> r = modified_playlists.insert (playlist);
|
pair<PlaylistSet::iterator, bool> r = modified_playlists.insert (playlist);
|
||||||
|
|
||||||
if (r.second) {
|
if (r.second) {
|
||||||
playlist->clear_changes ();
|
playlist->clear_changes ();
|
||||||
@ -2771,7 +2771,7 @@ TrimDrag::motion (GdkEvent* event, bool first_move)
|
|||||||
{
|
{
|
||||||
RegionView* rv = _primary;
|
RegionView* rv = _primary;
|
||||||
|
|
||||||
pair<set<std::shared_ptr<Playlist> >::iterator,bool> insert_result;
|
pair<PlaylistSet::iterator,bool> insert_result;
|
||||||
timecnt_t delta;
|
timecnt_t delta;
|
||||||
timepos_t adj_time = adjusted_time (_drags->current_pointer_time () + snap_delta (event->button.state), event, true);
|
timepos_t adj_time = adjusted_time (_drags->current_pointer_time () + snap_delta (event->button.state), event, true);
|
||||||
timecnt_t dt = raw_grab_time().distance (adj_time) + _pointer_offset - snap_delta (event->button.state);
|
timecnt_t dt = raw_grab_time().distance (adj_time) + _pointer_offset - snap_delta (event->button.state);
|
||||||
@ -2979,7 +2979,7 @@ TrimDrag::finished (GdkEvent* event, bool movement_occurred)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (set<std::shared_ptr<Playlist> >::iterator p = _editor->motion_frozen_playlists.begin(); p != _editor->motion_frozen_playlists.end(); ++p) {
|
for (PlaylistSet::iterator p = _editor->motion_frozen_playlists.begin(); p != _editor->motion_frozen_playlists.end(); ++p) {
|
||||||
/* Trimming one region may affect others on the playlist, so we need
|
/* Trimming one region may affect others on the playlist, so we need
|
||||||
to get undo Commands from the whole playlist rather than just the
|
to get undo Commands from the whole playlist rather than just the
|
||||||
region. Use motion_frozen_playlists (a set) to make sure we don't
|
region. Use motion_frozen_playlists (a set) to make sure we don't
|
||||||
|
@ -393,8 +393,7 @@ protected:
|
|||||||
friend class DraggingView;
|
friend class DraggingView;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
typedef std::set<std::shared_ptr<ARDOUR::Playlist> > PlaylistSet;
|
void add_stateful_diff_commands_for_playlists (ARDOUR::PlaylistSet const &);
|
||||||
void add_stateful_diff_commands_for_playlists (PlaylistSet const &);
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|
||||||
@ -515,13 +514,13 @@ private:
|
|||||||
RouteTimeAxisView*,
|
RouteTimeAxisView*,
|
||||||
ARDOUR::layer_t,
|
ARDOUR::layer_t,
|
||||||
Temporal::timepos_t const &,
|
Temporal::timepos_t const &,
|
||||||
PlaylistSet&
|
ARDOUR::PlaylistSet&
|
||||||
);
|
);
|
||||||
|
|
||||||
void remove_region_from_playlist (
|
void remove_region_from_playlist (
|
||||||
std::shared_ptr<ARDOUR::Region>,
|
std::shared_ptr<ARDOUR::Region>,
|
||||||
std::shared_ptr<ARDOUR::Playlist>,
|
std::shared_ptr<ARDOUR::Playlist>,
|
||||||
PlaylistSet& modified_playlists
|
ARDOUR::PlaylistSet& modified_playlists
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
|
@ -2957,8 +2957,8 @@ Editor::do_layer_operation (LayerOperation op)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
set<std::shared_ptr<Playlist> > playlists = selection->regions.playlists ();
|
PlaylistSet playlists = selection->regions.playlists ();
|
||||||
for (set<std::shared_ptr<Playlist> >::iterator i = playlists.begin(); i != playlists.end(); ++i) {
|
for (PlaylistSet::iterator i = playlists.begin(); i != playlists.end(); ++i) {
|
||||||
(*i)->clear_owned_changes ();
|
(*i)->clear_owned_changes ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2979,7 +2979,7 @@ Editor::do_layer_operation (LayerOperation op)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (set<std::shared_ptr<Playlist> >::iterator i = playlists.begin(); i != playlists.end(); ++i) {
|
for (PlaylistSet::iterator i = playlists.begin(); i != playlists.end(); ++i) {
|
||||||
vector<Command*> cmds;
|
vector<Command*> cmds;
|
||||||
(*i)->rdiff (cmds);
|
(*i)->rdiff (cmds);
|
||||||
_session->add_commands (cmds);
|
_session->add_commands (cmds);
|
||||||
@ -4900,7 +4900,7 @@ Editor::cut_copy_regions (CutCopyOp op, RegionSelection& rs)
|
|||||||
std::shared_ptr<Playlist> pl = (*x)->region()->playlist();
|
std::shared_ptr<Playlist> pl = (*x)->region()->playlist();
|
||||||
|
|
||||||
if (pl) {
|
if (pl) {
|
||||||
FreezeList::iterator fl;
|
PlaylistSet::iterator fl;
|
||||||
|
|
||||||
// only take state if this is a new playlist.
|
// only take state if this is a new playlist.
|
||||||
for (fl = freezelist.begin(); fl != freezelist.end(); ++fl) {
|
for (fl = freezelist.begin(); fl != freezelist.end(); ++fl) {
|
||||||
@ -5034,7 +5034,7 @@ Editor::cut_copy_regions (CutCopyOp op, RegionSelection& rs)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (FreezeList::iterator pl = freezelist.begin(); pl != freezelist.end(); ++pl) {
|
for (PlaylistSet::iterator pl = freezelist.begin(); pl != freezelist.end(); ++pl) {
|
||||||
(*pl)->thaw ();
|
(*pl)->thaw ();
|
||||||
|
|
||||||
/* We might have removed regions, which alters other regions' layering_index,
|
/* We might have removed regions, which alters other regions' layering_index,
|
||||||
@ -5270,7 +5270,7 @@ Editor::duplicate_some_regions (RegionSelection& regions, float times)
|
|||||||
}
|
}
|
||||||
|
|
||||||
std::shared_ptr<Playlist> playlist;
|
std::shared_ptr<Playlist> playlist;
|
||||||
std::set<std::shared_ptr<Playlist> > playlists; // list of unique playlists affected by duplication
|
PlaylistSet playlists; // list of unique playlists affected by duplication
|
||||||
RegionSelection sel = regions; // clear (below) may clear the argument list if its the current region selection
|
RegionSelection sel = regions; // clear (below) may clear the argument list if its the current region selection
|
||||||
RegionSelection foo;
|
RegionSelection foo;
|
||||||
|
|
||||||
@ -5300,7 +5300,7 @@ Editor::duplicate_some_regions (RegionSelection& regions, float times)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (set<std::shared_ptr<Playlist> >::iterator p = playlists.begin(); p != playlists.end(); ++p) {
|
for (PlaylistSet::iterator p = playlists.begin(); p != playlists.end(); ++p) {
|
||||||
do_ripple ((*p), start_time, span.scale (times), &exclude, false);
|
do_ripple ((*p), start_time, span.scale (times), &exclude, false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -5347,7 +5347,7 @@ Editor::duplicate_some_regions (RegionSelection& regions, float times)
|
|||||||
foo.insert (foo.end(), latest_regionviews.begin(), latest_regionviews.end());
|
foo.insert (foo.end(), latest_regionviews.begin(), latest_regionviews.end());
|
||||||
}
|
}
|
||||||
|
|
||||||
for (set<std::shared_ptr<Playlist> >::iterator p = playlists.begin(); p != playlists.end(); ++p) {
|
for (PlaylistSet::iterator p = playlists.begin(); p != playlists.end(); ++p) {
|
||||||
(*p)->rdiff_and_add_command (_session);
|
(*p)->rdiff_and_add_command (_session);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -5973,7 +5973,7 @@ Editor::fork_regions_from_unselected ()
|
|||||||
sources_list.insert(mrv->midi_region()->midi_source());
|
sources_list.insert(mrv->midi_region()->midi_source());
|
||||||
}
|
}
|
||||||
|
|
||||||
std::set<std::shared_ptr<Playlist> > affected_playlists;
|
PlaylistSet affected_playlists;
|
||||||
for (auto r : rs) {
|
for (auto r : rs) {
|
||||||
const MidiRegionView* const mrv = dynamic_cast<const MidiRegionView*>(r);
|
const MidiRegionView* const mrv = dynamic_cast<const MidiRegionView*>(r);
|
||||||
if (mrv && sources_list.find(mrv->midi_region()->midi_source()) != sources_list.end()) {
|
if (mrv && sources_list.find(mrv->midi_region()->midi_source()) != sources_list.end()) {
|
||||||
@ -8391,7 +8391,7 @@ Editor::insert_time (
|
|||||||
* than 1 track using playlists "from" a given track.
|
* than 1 track using playlists "from" a given track.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
set<std::shared_ptr<Playlist> > pl;
|
PlaylistSet pl;
|
||||||
|
|
||||||
if (all_playlists) {
|
if (all_playlists) {
|
||||||
RouteTimeAxisView* rtav = dynamic_cast<RouteTimeAxisView*> (*x);
|
RouteTimeAxisView* rtav = dynamic_cast<RouteTimeAxisView*> (*x);
|
||||||
@ -8407,7 +8407,7 @@ Editor::insert_time (
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (set<std::shared_ptr<Playlist> >::iterator i = pl.begin(); i != pl.end(); ++i) {
|
for (PlaylistSet::iterator i = pl.begin(); i != pl.end(); ++i) {
|
||||||
|
|
||||||
(*i)->clear_changes ();
|
(*i)->clear_changes ();
|
||||||
(*i)->clear_owned_changes ();
|
(*i)->clear_owned_changes ();
|
||||||
@ -9544,7 +9544,7 @@ Editor::remove_gaps (timecnt_t const & gap_threshold, timecnt_t const & leave_ga
|
|||||||
locations_before = &_session->locations()->get_state();
|
locations_before = &_session->locations()->get_state();
|
||||||
}
|
}
|
||||||
|
|
||||||
set<std::shared_ptr<Playlist> > pl;
|
PlaylistSet pl;
|
||||||
|
|
||||||
/* it will not be possible to infer this from the set<>, so keep track
|
/* it will not be possible to infer this from the set<>, so keep track
|
||||||
* of it explicitly
|
* of it explicitly
|
||||||
@ -9567,7 +9567,7 @@ Editor::remove_gaps (timecnt_t const & gap_threshold, timecnt_t const & leave_ga
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (set<std::shared_ptr<Playlist> >::iterator i = pl.begin(); i != pl.end(); ++i) {
|
for (PlaylistSet::iterator i = pl.begin(); i != pl.end(); ++i) {
|
||||||
|
|
||||||
(*i)->clear_changes ();
|
(*i)->clear_changes ();
|
||||||
(*i)->clear_owned_changes ();
|
(*i)->clear_owned_changes ();
|
||||||
@ -9649,8 +9649,7 @@ Editor::do_ripple (std::shared_ptr<ARDOUR::Playlist> target_playlist, timepos_t
|
|||||||
void
|
void
|
||||||
Editor::do_ripple (std::shared_ptr<Playlist> target_playlist, timepos_t const & at, timecnt_t const & distance, RegionList* exclude, bool add_to_command)
|
Editor::do_ripple (std::shared_ptr<Playlist> target_playlist, timepos_t const & at, timecnt_t const & distance, RegionList* exclude, bool add_to_command)
|
||||||
{
|
{
|
||||||
typedef std::set<std::shared_ptr<Playlist> > UniquePlaylists;
|
PlaylistSet playlists;
|
||||||
UniquePlaylists playlists;
|
|
||||||
|
|
||||||
playlists.insert (target_playlist);
|
playlists.insert (target_playlist);
|
||||||
|
|
||||||
@ -9668,18 +9667,17 @@ Editor::do_ripple (std::shared_ptr<Playlist> target_playlist, timepos_t const &
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (add_to_command) {
|
if (add_to_command) {
|
||||||
for (UniquePlaylists::iterator p = playlists.begin(); p != playlists.end(); ++p) {
|
for (auto const& p : playlists) {
|
||||||
|
p->clear_changes ();
|
||||||
(*p)->clear_changes ();
|
p->clear_owned_changes ();
|
||||||
(*p)->clear_owned_changes ();
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (UniquePlaylists::iterator p = playlists.begin(); p != playlists.end(); ++p) {
|
for (auto const& p : playlists) {
|
||||||
(*p)->freeze ();
|
p->freeze ();
|
||||||
}
|
}
|
||||||
|
|
||||||
for (UniquePlaylists::iterator p = playlists.begin(); p != playlists.end(); ++p) {
|
for (PlaylistSet::iterator p = playlists.begin(); p != playlists.end(); ++p) {
|
||||||
|
|
||||||
/* exclude list is only for the target */
|
/* exclude list is only for the target */
|
||||||
|
|
||||||
@ -9708,7 +9706,7 @@ Editor::do_ripple (std::shared_ptr<Playlist> target_playlist, timepos_t const &
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
for (UniquePlaylists::iterator p = playlists.begin(); p != playlists.end(); ++p) {
|
for (PlaylistSet::iterator p = playlists.begin(); p != playlists.end(); ++p) {
|
||||||
(*p)->thaw ();
|
(*p)->thaw ();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -492,7 +492,7 @@ void
|
|||||||
Editor::mapover_tracks_with_unique_playlists (sigc::slot<void, RouteTimeAxisView&, uint32_t> sl, TimeAxisView* basis, PBD::PropertyID prop) const
|
Editor::mapover_tracks_with_unique_playlists (sigc::slot<void, RouteTimeAxisView&, uint32_t> sl, TimeAxisView* basis, PBD::PropertyID prop) const
|
||||||
{
|
{
|
||||||
RouteTimeAxisView* route_basis = dynamic_cast<RouteTimeAxisView*> (basis);
|
RouteTimeAxisView* route_basis = dynamic_cast<RouteTimeAxisView*> (basis);
|
||||||
set<std::shared_ptr<Playlist> > playlists;
|
PlaylistSet playlists;
|
||||||
|
|
||||||
if (route_basis == 0) {
|
if (route_basis == 0) {
|
||||||
return;
|
return;
|
||||||
@ -540,7 +540,7 @@ Editor::mapover_tracks_with_unique_playlists (sigc::slot<void, RouteTimeAxisView
|
|||||||
void
|
void
|
||||||
Editor::mapover_all_tracks_with_unique_playlists (sigc::slot<void, RouteTimeAxisView&, uint32_t> sl) const
|
Editor::mapover_all_tracks_with_unique_playlists (sigc::slot<void, RouteTimeAxisView&, uint32_t> sl) const
|
||||||
{
|
{
|
||||||
set<std::shared_ptr<Playlist> > playlists;
|
PlaylistSet playlists;
|
||||||
|
|
||||||
set<RouteTimeAxisView*> tracks;
|
set<RouteTimeAxisView*> tracks;
|
||||||
|
|
||||||
|
@ -87,7 +87,7 @@ Editor::time_stretch (RegionSelection& regions, Temporal::ratio_t const & ratio)
|
|||||||
return aret;
|
return aret;
|
||||||
}
|
}
|
||||||
|
|
||||||
set<std::shared_ptr<Playlist> > midi_playlists_affected;
|
PlaylistSet midi_playlists_affected;
|
||||||
|
|
||||||
for (RegionList::iterator i = midi.begin(); i != midi.end(); ++i) {
|
for (RegionList::iterator i = midi.begin(); i != midi.end(); ++i) {
|
||||||
std::shared_ptr<Playlist> playlist = (*i)->playlist();
|
std::shared_ptr<Playlist> playlist = (*i)->playlist();
|
||||||
@ -116,7 +116,7 @@ Editor::time_stretch (RegionSelection& regions, Temporal::ratio_t const & ratio)
|
|||||||
midi_playlists_affected.insert (playlist);
|
midi_playlists_affected.insert (playlist);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (set<std::shared_ptr<Playlist> >::iterator p = midi_playlists_affected.begin(); p != midi_playlists_affected.end(); ++p) {
|
for (PlaylistSet::iterator p = midi_playlists_affected.begin(); p != midi_playlists_affected.end(); ++p) {
|
||||||
PBD::StatefulDiffCommand* cmd = new StatefulDiffCommand (*p);
|
PBD::StatefulDiffCommand* cmd = new StatefulDiffCommand (*p);
|
||||||
_session->add_command (cmd);
|
_session->add_command (cmd);
|
||||||
if (!cmd->empty ()) {
|
if (!cmd->empty ()) {
|
||||||
|
@ -323,10 +323,10 @@ RegionSelection::end_time () const
|
|||||||
}
|
}
|
||||||
|
|
||||||
/** @return the playlists that the regions in the selection are on */
|
/** @return the playlists that the regions in the selection are on */
|
||||||
set<std::shared_ptr<Playlist> >
|
PlaylistSet
|
||||||
RegionSelection::playlists () const
|
RegionSelection::playlists () const
|
||||||
{
|
{
|
||||||
set<std::shared_ptr<Playlist> > pl;
|
PlaylistSet pl;
|
||||||
for (RegionSelection::const_iterator i = begin(); i != end(); ++i) {
|
for (RegionSelection::const_iterator i = begin(); i != end(); ++i) {
|
||||||
pl.insert ((*i)->region()->playlist ());
|
pl.insert ((*i)->region()->playlist ());
|
||||||
}
|
}
|
||||||
|
@ -66,7 +66,7 @@ public:
|
|||||||
|
|
||||||
size_t n_midi_regions() const;
|
size_t n_midi_regions() const;
|
||||||
|
|
||||||
std::set<std::shared_ptr<ARDOUR::Playlist> > playlists () const;
|
ARDOUR::PlaylistSet playlists () const;
|
||||||
std::list<PBD::ID> pending;
|
std::list<PBD::ID> pending;
|
||||||
|
|
||||||
ARDOUR::RegionList regionlist () const;
|
ARDOUR::RegionList regionlist () const;
|
||||||
|
@ -1395,7 +1395,7 @@ TimeAxisView::reset_visual_state ()
|
|||||||
TrackViewList
|
TrackViewList
|
||||||
TrackViewList::filter_to_unique_playlists ()
|
TrackViewList::filter_to_unique_playlists ()
|
||||||
{
|
{
|
||||||
std::set<std::shared_ptr<ARDOUR::Playlist> > playlists;
|
PlaylistSet playlists;
|
||||||
TrackViewList ts;
|
TrackViewList ts;
|
||||||
|
|
||||||
for (iterator i = begin(); i != end(); ++i) {
|
for (iterator i = begin(); i != end(); ++i) {
|
||||||
|
@ -297,14 +297,14 @@ TimeInfoBox::selection_changed ()
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
/* this is more efficient than tracking changes per region in large selections */
|
/* this is more efficient than tracking changes per region in large selections */
|
||||||
std::set<std::shared_ptr<ARDOUR::Playlist> > playlists;
|
PlaylistSet playlists;
|
||||||
for (RegionSelection::iterator s = selection.regions.begin(); s != selection.regions.end(); ++s) {
|
for (RegionSelection::iterator s = selection.regions.begin(); s != selection.regions.end(); ++s) {
|
||||||
std::shared_ptr<Playlist> pl = (*s)->region()->playlist();
|
std::shared_ptr<Playlist> pl = (*s)->region()->playlist();
|
||||||
if (pl) {
|
if (pl) {
|
||||||
playlists.insert (pl);
|
playlists.insert (pl);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
for (std::set<std::shared_ptr<ARDOUR::Playlist> >::iterator ps = playlists.begin(); ps != playlists.end(); ++ps) {
|
for (PlaylistSet::iterator ps = playlists.begin(); ps != playlists.end(); ++ps) {
|
||||||
(*ps)->ContentsChanged.connect (region_property_connections, invalidator (*this),
|
(*ps)->ContentsChanged.connect (region_property_connections, invalidator (*this),
|
||||||
boost::bind (&TimeInfoBox::region_selection_changed, this), gui_context());
|
boost::bind (&TimeInfoBox::region_selection_changed, this), gui_context());
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user