- void replace_region (boost::shared_ptr<Region> old, boost::shared_ptr<Region> newr, nframes_t pos);
- void split_region (boost::shared_ptr<Region>, nframes_t position);
- void partition (nframes_t start, nframes_t end, bool just_top_level);
- void duplicate (boost::shared_ptr<Region>, nframes_t position, float times);
- void nudge_after (nframes_t start, nframes_t distance, bool forwards);
-
- boost::shared_ptr<Playlist> cut (list<AudioRange>&, bool result_is_hidden = true);
- boost::shared_ptr<Playlist> copy (list<AudioRange>&, bool result_is_hidden = true);
- int paste (boost::shared_ptr<Playlist>, nframes_t position, float times);
-
- RegionList* regions_at (nframes_t frame);
- RegionList* regions_touched (nframes_t start, nframes_t end);
+ void replace_region (boost::shared_ptr<Region> old, boost::shared_ptr<Region> newr, framepos_t pos);
+ void split_region (boost::shared_ptr<Region>, framepos_t position);
+ void split (framepos_t at);
+ void shift (framepos_t at, frameoffset_t distance, bool move_intersected, bool ignore_music_glue);
+ void partition (framepos_t start, framepos_t end, bool cut = false);
+ void duplicate (boost::shared_ptr<Region>, framepos_t position, float times);
+ void nudge_after (framepos_t start, framecnt_t distance, bool forwards);
+ void shuffle (boost::shared_ptr<Region>, int dir);
+ void update_after_tempo_map_change ();
+
+ boost::shared_ptr<Playlist> cut (std::list<AudioRange>&, bool result_is_hidden = true);
+ boost::shared_ptr<Playlist> copy (std::list<AudioRange>&, bool result_is_hidden = true);
+ int paste (boost::shared_ptr<Playlist>, framepos_t position, float times);
+
+ const RegionListProperty& region_list () const { return regions; }
+
+ RegionList* regions_at (framepos_t frame);
+ RegionList* regions_touched (framepos_t start, framepos_t end);
+ RegionList* regions_to_read (framepos_t start, framepos_t end);