X-Git-Url: https://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Ftrackcanvas.C;h=3f526fd624200e7f53594847f7e26a4c72acc084;hb=7e96ffcf048e3adb8a63fc1e01957d3300ef888f;hp=52eab8b9e410068235ed347052389d289887e575;hpb=dcdf2f77cc47ca7c543f27ddb03c4814015d974b;p=goodguy%2Fcinelerra.git diff --git a/cinelerra-5.1/cinelerra/trackcanvas.C b/cinelerra-5.1/cinelerra/trackcanvas.C index 52eab8b9..3f526fd6 100644 --- a/cinelerra-5.1/cinelerra/trackcanvas.C +++ b/cinelerra-5.1/cinelerra/trackcanvas.C @@ -1888,6 +1888,8 @@ void TrackCanvas::refresh_plugintoggles() void TrackCanvas::draw_hard_edges() { + if( !mwindow->edl->session->auto_conf->hard_edges ) + return; int64_t x, y, w, h; for(Track *track = mwindow->edl->tracks->first; track; track = track->next) { @@ -3663,16 +3665,20 @@ int TrackCanvas::draw_hairline(Auto *auto_keyframe, int color, int show) set_color(color); draw_line(ax, 0, ax, get_h()); + char text[BCSTRLEN]; if( show ) { - char text[BCSTRLEN]; if( auto_keyframe->is_floatauto() ) { FloatAuto *float_auto = (FloatAuto *)auto_keyframe; sprintf(text, "%0.2f", float_auto->get_value()); } - else { + else if( auto_keyframe->is_intauto() ) { IntAuto *int_auto = (IntAuto *)auto_keyframe; sprintf(text, "%d", int_auto->value); } + else + show = 0; + } + if( show ) { int font = MEDIUMFONT; int tw = get_text_width(font, text) + TOOLTIP_MARGIN * 2; int th = get_text_height(font, text) + TOOLTIP_MARGIN * 2; @@ -3880,7 +3886,6 @@ int TrackCanvas::render_handle_frame(EDL *edl, int64_t pos, int mode) delete video_cache; mwindow->cwindow->gui->lock_window("TrackCanvas::render_handle_frame 0"); Canvas *canvas = mwindow->cwindow->gui->canvas; - canvas->lock_canvas("TrackCanvas::render_handle_frame 1"); int w = canvas->w, h = canvas->h, w2 = w/2, h2 = h/2; int lx = 0, ly = h2/2, rx = w2, ry = h2/2; BC_WindowBase *window = canvas->get_canvas(); @@ -3889,7 +3894,6 @@ int TrackCanvas::render_handle_frame(EDL *edl, int64_t pos, int mode) window->draw_vframe(&vlt, lx,ly, w2,h2, 0,0,vlt.get_w(),vlt.get_h()); window->draw_vframe(&vrt, rx,ry, w2,h2, 0,0,vrt.get_w(),vrt.get_h()); window->flash(1); - canvas->unlock_canvas(); mwindow->cwindow->gui->unlock_window(); break; } case 1: