diff options
author | David Robillard <d@drobilla.net> | 2008-02-16 22:43:18 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2008-02-16 22:43:18 +0000 |
commit | 8aa9508c82f32efcf9c7c00e2c9e76268d4dddce (patch) | |
tree | 1fb1a5e7eef6684c0a5bb49be492612c71796fc4 /gtk2_ardour/editor_markers.cc | |
parent | 1b657585572298d1a69a7b43e611f59b7e185df3 (diff) |
Merge with 2.0-ongoing R3071.
git-svn-id: svn://localhost/ardour2/branches/3.0@3073 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/editor_markers.cc')
-rw-r--r-- | gtk2_ardour/editor_markers.cc | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/gtk2_ardour/editor_markers.cc b/gtk2_ardour/editor_markers.cc index 13e8f49d61..084f75124d 100644 --- a/gtk2_ardour/editor_markers.cc +++ b/gtk2_ardour/editor_markers.cc @@ -388,13 +388,20 @@ Editor::LocationMarkers::set_color_rgba (uint32_t rgba) } void -Editor::mouse_add_new_marker (nframes_t where, bool is_cd) +Editor::mouse_add_new_marker (nframes_t where, bool is_cd, bool is_xrun) { - string markername; + string markername, markerprefix; int flags = (is_cd ? Location::IsCDMarker|Location::IsMark : Location::IsMark); - + + if (is_xrun) { + markerprefix = "xrun"; + flags = Location::IsMark; + } else { + markerprefix = "mark"; + } + if (session) { - session->locations()->next_available_name(markername,"mark"); + session->locations()->next_available_name(markername, markerprefix); Location *location = new Location (where, where, markername, (Location::Flags) flags); session->begin_reversible_command (_("add marker")); XMLNode &before = session->locations()->get_state(); @@ -1151,6 +1158,10 @@ Editor::update_punch_range_view (bool visibility) void Editor::marker_selection_changed () { + if (session && session->deletion_in_progress()) { + return; + } + for (LocationMarkerMap::iterator i = location_markers.begin(); i != location_markers.end(); ++i) { LocationMarkers* lam = i->second; |