diff options
author | Nick Mainsbridge <beatroute@iprimus.com.au> | 2008-09-29 20:35:44 +0000 |
---|---|---|
committer | Nick Mainsbridge <beatroute@iprimus.com.au> | 2008-09-29 20:35:44 +0000 |
commit | 80608f7594a2eafb19e7c2fc8d29a58605b820b0 (patch) | |
tree | 543335bcebde5722d5a78386738d961e5e8bcd4c /gtk2_ardour/editor_markers.cc | |
parent | ef9beb3f60b5499d4db48b771627b6facfe872d3 (diff) |
Relayer punch/loop range rects, fix display of punch-in with no punch-out, ensure range selection rect is hidden after single click.
git-svn-id: svn://localhost/ardour2/branches/3.0@3836 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'gtk2_ardour/editor_markers.cc')
-rw-r--r-- | gtk2_ardour/editor_markers.cc | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/gtk2_ardour/editor_markers.cc b/gtk2_ardour/editor_markers.cc index 508d73a01a..2d1b34575a 100644 --- a/gtk2_ardour/editor_markers.cc +++ b/gtk2_ardour/editor_markers.cc @@ -1149,17 +1149,15 @@ Editor::update_punch_range_view (bool visibility) if ((Config->get_punch_in() || Config->get_punch_out()) && ((tpl = transport_punch_location()) != 0)) { - double x1 = frame_to_pixel (tpl->start()); - double x2 = frame_to_pixel (tpl->end()); - guint track_canvas_width,track_canvas_height; track_canvas->get_size(track_canvas_width,track_canvas_height); - - transport_punch_range_rect->property_x1() = x1; - transport_punch_range_rect->property_x2() = x2; - - transport_punch_range_rect->property_x1() = (Config->get_punch_in() ? x1 : 0); - transport_punch_range_rect->property_x2() = (Config->get_punch_out() ? x2 : track_canvas_width); + if (Config->get_punch_in()) { + transport_punch_range_rect->property_x1() = frame_to_pixel (tpl->start()); + transport_punch_range_rect->property_x2() = (Config->get_punch_out() ? frame_to_pixel (tpl->end()) : frame_to_pixel (JACK_MAX_FRAMES)); + } else { + transport_punch_range_rect->property_x1() = 0; + transport_punch_range_rect->property_x2() = (Config->get_punch_out() ? frame_to_pixel (tpl->end()) : track_canvas_width); + } if (visibility) { transport_punch_range_rect->show(); |