fix for vframe get_temp blunder, vicon zoom tweak
[goodguy/cinelerra.git] / cinelerra-5.1 / guicast / vicon.C
index 89b8eb244eab558c659d1c2f3bf0b27a51caf607..f27791f94c06767bd12f0fc318093e2842319685 100644 (file)
@@ -213,23 +213,13 @@ ViewPopup *VIconThread::new_view_window()
        int vx = viewing->get_vx(), rx = 0;
        int vy = viewing->get_vy(), ry = 0;
        wdw->get_root_coordinates(vx, vy, &rx, &ry);
-       rx += (rx >= cx ? -view_w : viewing->w);
-       ry += (ry >= cy ? -view_h : viewing->h);
+       rx += (rx >= cx ? -view_w+viewing->w/4 : viewing->w-viewing->w/4);
+       ry += (ry >= cy ? -view_h+viewing->h/4 : viewing->h-viewing->h/4);
        ViewPopup *vwin = new ViewPopup(this, rx, ry, view_w, view_h);
        wdw->set_active_subwindow(vwin);
        return vwin;
 }
 
-int ViewPopup::zoom_scale(int dir)
-{
-       int view_h = vt->view_h + dir*vt->view_h/10 + dir;
-       bclamp(view_h, 16,512);
-       vt->view_h = view_h;
-       vt->view_w = view_h * vt->vw/vt->vh;
-       vt->stop_viewing();
-       return 1;
-}
-
 
 void VIconThread::
 reset_images()
@@ -289,6 +279,17 @@ update_view()
        return 1;
 }
 
+int VIconThread::zoom_scale(int dir)
+{
+       int view_h = this->view_h;
+       view_h += dir*view_h/10 + dir;
+       bclamp(view_h, 16,512);
+       this->view_h = view_h;
+       this->view_w = view_h * vw/vh;
+       stop_viewing();
+       return 1;
+}
+
 
 void VIconThread::
 draw_images()