Merge with 2.0-ongoing R2653.

git-svn-id: svn://localhost/ardour2/trunk@2837 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
David Robillard 2008-01-07 21:12:29 +00:00
parent c4110b37f0
commit 73dd9d37e7
7 changed files with 138 additions and 36 deletions

View file

@ -2306,6 +2306,8 @@ Editor::separate_regions_using_location (Location& loc)
void
Editor::crop_region_to_selection ()
{
ensure_entered_selected ();
if (!selection->time.empty()) {
crop_region_to (selection->time.start(), selection->time.end_frame());
@ -2329,6 +2331,8 @@ Editor::crop_region_to (nframes_t start, nframes_t end)
boost::shared_ptr<Playlist> playlist;
TrackSelection* ts;
ensure_entered_selected ();
if (selection->tracks.empty()) {
ts = &track_views;
} else {
@ -2567,6 +2571,8 @@ Editor::naturalize ()
void
Editor::align (RegionPoint what)
{
ensure_entered_selected ();
nframes64_t where = get_preferred_edit_position();
if (!selection->regions.empty()) {
@ -2731,6 +2737,8 @@ Editor::trim_region_to_punch ()
void
Editor::trim_region_to_location (const Location& loc, const char* str)
{
ensure_entered_selected ();
RegionSelection& rs (get_regions_for_action ());
begin_reversible_command (str);
@ -3907,6 +3915,8 @@ Editor::toggle_region_opaque ()
void
Editor::set_fade_length (bool in)
{
ensure_entered_selected ();
/* we need a region to measure the offset from the start */
RegionView* rv;
@ -4131,6 +4141,8 @@ Editor::set_playhead_cursor ()
void
Editor::split ()
{
ensure_entered_selected ();
nframes64_t where = get_preferred_edit_position();
if (!selection->regions.empty()) {
@ -4144,3 +4156,13 @@ Editor::split ()
split_regions_at (where, rs);
}
}
void
Editor::ensure_entered_selected ()
{
if (entered_regionview) {
if (find (selection->regions.begin(), selection->regions.end(), entered_regionview) == selection->regions.end()) {
selection->set (entered_regionview);
}
}
}