X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;ds=sidebyside;f=cinelerra-5.1%2Fcinelerra%2Ftrackcanvas.C;h=87e6f0747606343d7fca48030254797ee135ca45;hb=5a1b2bb96f2bd6b7ef4f8031763683726c02219d;hp=2e21511e31aad2d68ac5bf6d1908607259c78b21;hpb=2ba7e9962ea989863e152373e96a09b00a0b4eb8;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/cinelerra/trackcanvas.C b/cinelerra-5.1/cinelerra/trackcanvas.C index 2e21511e..87e6f074 100644 --- a/cinelerra-5.1/cinelerra/trackcanvas.C +++ b/cinelerra-5.1/cinelerra/trackcanvas.C @@ -1852,19 +1852,28 @@ void TrackCanvas::draw_loop_points() //printf("TrackCanvas::draw_loop_points 7\n"); } -void TrackCanvas::draw_brender_start() +void TrackCanvas::draw_brender_range() { if(mwindow->preferences->use_brender) { - int64_t x = Units::round(mwindow->edl->session->brender_start * + int64_t x1 = Units::round(mwindow->edl->session->brender_start * mwindow->edl->session->sample_rate / - mwindow->edl->local_session->zoom_sample - + mwindow->edl->local_session->zoom_sample - + mwindow->edl->local_session->view_start[pane->number]); + if(MWindowGUI::visible(x1, x1 + 1, 0, get_w())) + { + set_color(RED); + draw_line(x1, 0, x1, get_h()); + } + int64_t x2 = Units::round(mwindow->edl->session->brender_end * + mwindow->edl->session->sample_rate / + mwindow->edl->local_session->zoom_sample - mwindow->edl->local_session->view_start[pane->number]); - if(MWindowGUI::visible(x, x + 1, 0, get_w())) + if(MWindowGUI::visible(x2, x2 + 1, 0, get_w())) { set_color(RED); - draw_line(x, 0, x, get_h()); + draw_line(x2, 0, x2, get_h()); } } } @@ -2618,7 +2627,10 @@ int TrackCanvas::test_floatline(int center_pixel, { Auto *current; mwindow->undo->update_undo_before(); - current = mwindow->session->drag_auto = autos->insert_auto(position1); + double position = autos->track->from_units(position1); + position = mwindow->edl->align_to_frame(position, 0); + int64_t new_position = autos->track->to_units(position,0); + current = mwindow->session->drag_auto = autos->insert_auto(new_position); ((FloatAuto*)current)->set_value(value); mwindow->session->drag_start_percentage = value_to_percentage(value, autogrouptype); mwindow->session->drag_start_position = current->position; @@ -3407,7 +3419,7 @@ void TrackCanvas::draw_overlays() // Loop points draw_loop_points(); - draw_brender_start(); + draw_brender_range(); // Highlighted areas draw_highlighting();