diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2007-05-02 13:09:03 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2007-05-02 13:09:03 +0000 |
commit | a612857eb6024f75f11094d09def4ccbe621b7b4 (patch) | |
tree | f5110f8cb0d5a8083cf7b8919247cbf39c6a5800 | |
parent | 0c7b7216efc71e9b3851f1b43f2191a99619ff25 (diff) |
make session restore work by using explicit data types when creating new playlists ... poses question - how did this ever compile before?
git-svn-id: svn://localhost/ardour2/branches/midi@1774 d708f5d6-7413-0410-9779-e7cbd77b26cf
-rw-r--r-- | gtk2_ardour/editor_ops.cc | 16 | ||||
-rw-r--r-- | gtk2_ardour/gain_meter.cc | 3 | ||||
-rw-r--r-- | libs/ardour/audio_diskstream.cc | 4 | ||||
-rw-r--r-- | libs/ardour/audio_track.cc | 2 | ||||
-rw-r--r-- | libs/ardour/midi_diskstream.cc | 2 |
5 files changed, 12 insertions, 15 deletions
diff --git a/gtk2_ardour/editor_ops.cc b/gtk2_ardour/editor_ops.cc index 917f93243e..95e0b5d255 100644 --- a/gtk2_ardour/editor_ops.cc +++ b/gtk2_ardour/editor_ops.cc @@ -2823,21 +2823,19 @@ Editor::cut_copy_regions (CutCopyOp op) boost::shared_ptr<Region> r = (*x)->region(); boost::shared_ptr<Region> _xx; - + + assert (r != 0); + switch (op) { case Cut: - if (!r) break; - - _xx = RegionFactory::create ((*x)->region()); - npl->add_region (_xx, (*x)->region()->position() - first_position); - pl->remove_region (((*x)->region())); + _xx = RegionFactory::create (r); + npl->add_region (_xx, r->position() - first_position); + pl->remove_region (r); break; case Copy: - if (!r) break; - /* copy region before adding, so we're not putting same object into two different playlists */ - npl->add_region (RegionFactory::create ((*x)->region()), (*x)->region()->position() - first_position); + npl->add_region (RegionFactory::create (r, r->position() - first_position); break; case Clear: diff --git a/gtk2_ardour/gain_meter.cc b/gtk2_ardour/gain_meter.cc index fa13234c46..303bbcb1a9 100644 --- a/gtk2_ardour/gain_meter.cc +++ b/gtk2_ardour/gain_meter.cc @@ -454,8 +454,7 @@ GainMeter::setup_meters () int GainMeter::get_gm_width () { - Gtk::Requisition sz; - hbox.size_request (sz); + Gtk::Requisition sz = hbox.size_request (); return sz.width; } diff --git a/libs/ardour/audio_diskstream.cc b/libs/ardour/audio_diskstream.cc index 4a4a4fa5c9..3b66d2a187 100644 --- a/libs/ardour/audio_diskstream.cc +++ b/libs/ardour/audio_diskstream.cc @@ -243,7 +243,7 @@ AudioDiskstream::find_and_use_playlist (const string& name) boost::shared_ptr<AudioPlaylist> playlist; if ((playlist = boost::dynamic_pointer_cast<AudioPlaylist> (_session.playlist_by_name (name))) == 0) { - playlist = boost::dynamic_pointer_cast<AudioPlaylist> (PlaylistFactory::create (_session, name)); + playlist = boost::dynamic_pointer_cast<AudioPlaylist> (PlaylistFactory::create (DataType::AUDIO, _session, name)); } if (!playlist) { @@ -280,7 +280,7 @@ AudioDiskstream::use_new_playlist () newname = Playlist::bump_name (_name, _session); } - if ((playlist = boost::dynamic_pointer_cast<AudioPlaylist> (PlaylistFactory::create (_session, newname, hidden()))) != 0) { + if ((playlist = boost::dynamic_pointer_cast<AudioPlaylist> (PlaylistFactory::create (DataType::AUDIO, _session, newname, hidden()))) != 0) { playlist->set_orig_diskstream_id (id()); return use_playlist (playlist); diff --git a/libs/ardour/audio_track.cc b/libs/ardour/audio_track.cc index 111bd9f4a9..45ea853df4 100644 --- a/libs/ardour/audio_track.cc +++ b/libs/ardour/audio_track.cc @@ -818,7 +818,7 @@ AudioTrack::freeze (InterThreadInfo& itt) } } - new_playlist = PlaylistFactory::create (_session, new_playlist_name, false); + new_playlist = PlaylistFactory::create (DataType::AUDIO, _session, new_playlist_name, false); region_name = new_playlist_name; /* create a new region from all filesources, keep it private */ diff --git a/libs/ardour/midi_diskstream.cc b/libs/ardour/midi_diskstream.cc index 06b75211f7..af4b18e3f7 100644 --- a/libs/ardour/midi_diskstream.cc +++ b/libs/ardour/midi_diskstream.cc @@ -222,7 +222,7 @@ MidiDiskstream::find_and_use_playlist (const string& name) boost::shared_ptr<MidiPlaylist> playlist; if ((playlist = boost::dynamic_pointer_cast<MidiPlaylist> (_session.playlist_by_name (name))) == 0) { - playlist = boost::dynamic_pointer_cast<MidiPlaylist> (PlaylistFactory::create (_session, name)); + playlist = boost::dynamic_pointer_cast<MidiPlaylist> (PlaylistFactory::create (DataType::MIDI, _session, name)); } if (!playlist) { |