X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fmwindowedit.C;h=24763f75af6fc12d1b82917086f38620c97d496b;hb=c279e21fc2394a7908bbd1ba8c79b116fe9fb14a;hp=e2f552042cf5b6f2a97645de05da41f25765dd9b;hpb=502b6f3b6fd04f6b01c6d70dcb81aa304dd0db1c;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/cinelerra/mwindowedit.C b/cinelerra-5.1/cinelerra/mwindowedit.C index e2f55204..24763f75 100644 --- a/cinelerra-5.1/cinelerra/mwindowedit.C +++ b/cinelerra-5.1/cinelerra/mwindowedit.C @@ -1894,9 +1894,6 @@ void MWindow::redo_entry(BC_WindowBase *calling_window_gui) } } - if( calling_window_gui != gui ) - gui->unlock_window(); - awindow->gui->async_update_assets(); cwindow->refresh_frame(CHANGE_ALL); @@ -2077,6 +2074,7 @@ void MWindow::save_clip(EDL *new_edl, const char *txt) "clip_%02d%02d%02d-%02d%02d%02d.png", dtm.tm_year+1900, dtm.tm_mon+1, dtm.tm_mday, dtm.tm_hour, dtm.tm_min, dtm.tm_sec); + new_edl->awindow_folder = AW_CLIP_FOLDER; edl->update_assets(new_edl); int cur_x, cur_y; gui->get_abs_cursor(cur_x, cur_y, 0); @@ -2223,9 +2221,6 @@ void MWindow::undo_entry(BC_WindowBase *calling_window_gui) } } - if( calling_window_gui != gui ) - gui->unlock_window(); - awindow->gui->async_update_assets(); cwindow->refresh_frame(CHANGE_ALL); @@ -2233,21 +2228,33 @@ void MWindow::undo_entry(BC_WindowBase *calling_window_gui) } -void MWindow::new_folder(const char *new_folder) +void MWindow::new_folder(const char *new_folder, int is_clips) { undo->update_undo_before(); - edl->new_folder(new_folder); + if( edl->new_folder(new_folder, is_clips) ) { + MainError::show_error(_("create new folder failed")); + } undo->update_undo_after(_("new folder"), LOAD_ALL); awindow->gui->async_update_assets(); } void MWindow::delete_folder(char *folder) { -// undo->update_undo_after(_("delete folder"), LOAD_ALL); + undo->update_undo_before(); + if( edl->delete_folder(folder) < 0 ) { + MainError::show_error(_("delete folder failed")); + } + undo->update_undo_after(_("del folder"), LOAD_ALL); + awindow->gui->async_update_assets(); } void MWindow::select_point(double position) { + gui->unlock_window(); + gui->stop_drawing(); + cwindow->stop_playback(0); + gui->lock_window("MWindow::select_point"); + edl->local_session->set_selectionstart(position); edl->local_session->set_selectionend(position);