render effect segv, drag chkbox track coords, check mask active,
[goodguy/cinelerra.git] / cinelerra-5.1 / cinelerra / mwindowedit.C
index bf5dc9177388679677bf9b01de192ff7497221d7..9e5b5012003c9150a41eac4d87c27b2a340d8089 100644 (file)
@@ -646,12 +646,6 @@ int MWindow::cut_default_keyframe()
 }
 
 
-void MWindow::delete_track()
-{
-       if( edl->tracks->last )
-               delete_track(edl->tracks->last);
-}
-
 void MWindow::delete_tracks()
 {
        undo_before();
@@ -1325,7 +1319,8 @@ void MWindow::load_assets(ArrayList<Indexable*> *new_assets,
                load_mode = LOADMODE_ASSETSONLY;
 const int debug = 0;
 if( debug ) printf("MWindow::load_assets %d\n", __LINE__);
-       if( position < 0 ) position = edl->local_session->get_selectionstart();
+       if( position < 0 )
+               position = edl->local_session->get_selectionstart();
 
        ArrayList<EDL*> new_edls;
        for( int i=0; i<new_assets->total; ++i ) {
@@ -1549,7 +1544,10 @@ int MWindow::paste_edls(ArrayList<EDL*> *new_edls, int load_mode,
                switch( load_mode ) {
                case LOADMODE_REPLACE:
                        current_position = 0;
+                       break;
                case LOADMODE_NEW_TRACKS:
+                       if( !overwrite )
+                               current_position = 0;
                        break;
 
                case LOADMODE_CONCATENATE:
@@ -1988,8 +1986,8 @@ void MWindow::redo_entry(BC_WindowBase *calling_window_gui)
        gui->update(1, FORCE_REDRAW, 1, 1, 1, 1, 1);
        gui->update_proxy_toggle();
        gui->unlock_window();
-       cwindow->update(1, 1, 1, 1, 1);
        cwindow->gui->unlock_window();
+       cwindow->update(1, 1, 1, 1, 1);
 
        for( int i=0; i < vwindows.size(); ++i ) {
                if( vwindows.get(i)->is_running() ) {
@@ -2263,8 +2261,8 @@ void MWindow::undo_entry(BC_WindowBase *calling_window_gui)
        gui->update(1, FORCE_REDRAW, 1, 1, 1, 1, 1);
        gui->update_proxy_toggle();
        gui->unlock_window();
-       cwindow->update(1, 1, 1, 1, 1);
        cwindow->gui->unlock_window();
+       cwindow->update(1, 1, 1, 1, 1);
 
        for( int i=0; i<vwindows.size(); ++i ) {
                if( vwindows.get(i)->is_running() ) {