port 7.2 mods: align_edits foreground plugin refresh_frame tweak, rework soundlevel...
[goodguy/cinelerra.git] / cinelerra-5.1 / cinelerra / cpanel.C
index da3fd827b3e8734c69ad70b7ef92842a2b33dc9d..5f8dd4d7c048ba179266cc81b2f30bc950219284 100644 (file)
@@ -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;