memory leaks and tweaks, sams histeq icon
[goodguy/history.git] / cinelerra-5.1 / cinelerra / cwindowtool.C
index f326635636e1240070d28c29711e564457e41a85..329b09ecc8bacacd120cf6ed7f965ebf5df5392a 100644 (file)
@@ -546,7 +546,7 @@ void CWindowEyedropGUI::update()
        rgb_hex->update(rgb_text);
        
        float y, u, v;
-       YUV::rgb_to_yuv_f(r, g, b, y, u, v);
+       YUV::yuv.rgb_to_yuv_f(r, g, b, y, u, v);
        this->y->update(y);
        this->u->update(u);  u += 0.5;
        this->v->update(v);  v += 0.5;
@@ -794,8 +794,7 @@ void CWindowCameraGUI::update_preview()
        mwindow->gui->draw_overlays(1);
        mwindow->sync_parameters(CHANGE_PARAMS);
        mwindow->gui->unlock_window();
-       mwindow->cwindow->playback_engine->que->send_command(CURRENT_FRAME,
-                       CHANGE_NONE, mwindow->edl, 1);
+       mwindow->cwindow->refresh_frame(CHANGE_NONE);
        mwindow->cwindow->gui->lock_window("CWindowCameraGUI::update_preview");
        mwindow->cwindow->gui->canvas->draw_refresh();
        mwindow->cwindow->gui->unlock_window();
@@ -1239,8 +1238,7 @@ void CWindowProjectorGUI::update_preview()
        mwindow->sync_parameters(CHANGE_PARAMS);
        mwindow->gui->draw_overlays(1);
        mwindow->gui->unlock_window();
-       mwindow->cwindow->playback_engine->que->send_command(CURRENT_FRAME,
-                       CHANGE_NONE, mwindow->edl, 1);
+       mwindow->cwindow->refresh_frame(CHANGE_NONE);
        mwindow->cwindow->gui->lock_window("CWindowProjectorGUI::update_preview");
        mwindow->cwindow->gui->canvas->draw_refresh();
        mwindow->cwindow->gui->unlock_window();
@@ -1664,6 +1662,9 @@ int CWindowMaskDelete::handle_event()
                temp_keyframe.copy_data(keyframe);
 // Update parameter
                SubMask *submask = temp_keyframe.get_submask(mwindow->edl->session->cwindow_mask);
+               if( shift_down() )
+                       submask->points.remove_all_objects();
+
                for(int i = mwindow->cwindow->gui->affected_point;
                        i < submask->points.total - 1;
                        i++)
@@ -1685,6 +1686,8 @@ int CWindowMaskDelete::handle_event()
                        current; )
                {
                        SubMask *submask = current->get_submask(mwindow->edl->session->cwindow_mask);
+                       if( shift_down() )
+                               submask->points.remove_all_objects();
 
                        for(int i = mwindow->cwindow->gui->affected_point;
                                i < submask->points.total - 1;
@@ -2263,8 +2266,7 @@ void CWindowMaskGUI::update_preview()
        mwindow->sync_parameters(CHANGE_PARAMS);
        mwindow->gui->draw_overlays(1);
        mwindow->gui->unlock_window();
-       mwindow->cwindow->playback_engine->que->send_command(CURRENT_FRAME,
-                       CHANGE_NONE, mwindow->edl, 1);
+       mwindow->cwindow->refresh_frame(CHANGE_NONE);
        mwindow->cwindow->gui->lock_window("CWindowMaskGUI::update_preview");
        mwindow->cwindow->gui->canvas->draw_refresh();
        mwindow->cwindow->gui->unlock_window();