X-Git-Url: https://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fcpanel.C;h=5f8dd4d7c048ba179266cc81b2f30bc950219284;hb=22c6251d37911a11e322bf7518e6a992ea0bb6c7;hp=87e753cd04e390b79c3f13ce9d37a6515d1b777c;hpb=7fd85fb66168f6b518c5f2d73e04036e87faa0e1;p=goodguy%2Fcinelerra.git diff --git a/cinelerra-5.1/cinelerra/cpanel.C b/cinelerra-5.1/cinelerra/cpanel.C index 87e753cd..5f8dd4d7 100644 --- a/cinelerra-5.1/cinelerra/cpanel.C +++ b/cinelerra-5.1/cinelerra/cpanel.C @@ -79,8 +79,8 @@ void CPanel::create_objects() y += operation[CWINDOW_TOOL_WINDOW]->get_h(); subwindow->add_subwindow(operation[CWINDOW_TITLESAFE] = new CPanelTitleSafe(mwindow, this, x, y)); y += operation[CWINDOW_TITLESAFE]->get_h(); - x += (w - BC_Slider::get_span(1)) / 2; y += 15; - subwindow->add_subwindow(cpanel_zoom = new CPanelZoom(mwindow, this, x, y, h-y-20)); + x += (w - BC_Slider::get_span(1)) / 2; y += yS(15); + subwindow->add_subwindow(cpanel_zoom = new CPanelZoom(mwindow, this, x, y, h-y-yS(20))); } void CPanel::reposition_buttons(int x, int y, int h) @@ -95,9 +95,9 @@ void CPanel::reposition_buttons(int x, int y, int h) y += operation[i]->get_h(); } x += (w - BC_Slider::get_span(1)) / 2; - y += 15; + y += yS(15); h = this->h - this->y; - cpanel_zoom->reposition_window(x, y, w, h-y-20); + cpanel_zoom->reposition_window(x, y, w, h-y-yS(20)); cpanel_zoom->set_pointer_motion_range(h); } @@ -132,6 +132,7 @@ void CPanel::set_operation(int value) operation[CWINDOW_CAMERA]->get_value() || operation[CWINDOW_PROJECTOR]->get_value() ) { cpanel_zoom->set_shown(1); + subwindow->update_canvas(0); } else cpanel_zoom->set_shown(0); @@ -364,8 +365,7 @@ CPanelTitleSafe::~CPanelTitleSafe() int CPanelTitleSafe::handle_event() { mwindow->edl->session->safe_regions = get_value(); - gui->subwindow->canvas->draw_refresh(); - return 1; + return gui->subwindow->canvas->refresh(1); } CPanelZoom::CPanelZoom(MWindow *mwindow, CPanel *gui, int x, int y, int h) @@ -388,7 +388,8 @@ int CPanelZoom::handle_event() double zoom = pow(10.,value); switch( mwindow->edl->session->cwindow_operation ) { case CWINDOW_ZOOM: - gui->subwindow->zoom_canvas(zoom, 1); + gui->subwindow->canvas->set_zoom(mwindow->edl, zoom); + gui->subwindow->update_canvas(); break; case CWINDOW_CAMERA: aidx = AUTOMATION_CAMERA_Z; @@ -404,11 +405,7 @@ int CPanelZoom::handle_event() track->automation->autos[aidx], 1); if( !z_auto ) return 1; z_auto->set_value(zoom); - gui->subwindow->update_tool(); - mwindow->gui->lock_window("CPanelZoom::handle_event 1"); - mwindow->gui->draw_overlays(1); - mwindow->gui->unlock_window(); - mwindow->sync_parameters(CHANGE_PARAMS); + gui->subwindow->sync_parameters(CHANGE_PARAMS, 1, 1); return 1; }