X-Git-Url: https://git.cinelerra-gg.org/git/?p=goodguy%2Fcinelerra.git;a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fpreferencesthread.C;h=58b659c43a94153ca78dde74fe10b8b1e983a391;hp=74ee37e696484e2a01b7dd56e00c922e0c7122ff;hb=da1e39d85e138b0d552e932d875c05e8dc743244;hpb=debf38f78ae5ce154f54183b1638278bf8a24736 diff --git a/cinelerra-5.1/cinelerra/preferencesthread.C b/cinelerra-5.1/cinelerra/preferencesthread.C index 74ee37e6..58b659c4 100644 --- a/cinelerra-5.1/cinelerra/preferencesthread.C +++ b/cinelerra-5.1/cinelerra/preferencesthread.C @@ -174,10 +174,10 @@ int PreferencesThread::update_framerate() { if(thread_running) { - lock_gui("PreferencesThread::update_framerate"); + lock_dialog("PreferencesThread::update_framerate"); PreferencesWindow *window = (PreferencesWindow*)get_gui(); if(window) window->update_framerate(); - unlock_gui(); + unlock_dialog(); } return 0; } @@ -187,10 +187,10 @@ void PreferencesThread::update_rates() { if(thread_running) { - lock_gui("PreferencesThread::update_framerate"); + lock_dialog("PreferencesThread::update_framerate"); PreferencesWindow *window = (PreferencesWindow*)get_gui(); if(window) window->update_rates(); - unlock_gui(); + unlock_dialog(); } } @@ -212,6 +212,9 @@ int PreferencesThread::apply_settings() (*this_aconfig != *aconfig) || (*this_vconfig != *vconfig) || !preferences->brender_asset->equivalent(*mwindow->preferences->brender_asset, 0, 1, edl); + if( preferences->autocolor_assets != mwindow->preferences->autocolor_assets ) + redraw_indexes = 1; + if( preferences->yuv_color_space != mwindow->preferences->yuv_color_space || preferences->yuv_color_range != mwindow->preferences->yuv_color_range ) { YUV::yuv.yuv_set_colors( @@ -231,12 +234,12 @@ int PreferencesThread::apply_settings() mwindow->stop_brender(); if( window ) window->lock_window("PreferencesThread::apply_settings 5"); - if( strcmp(preferences->theme, mwindow->preferences->theme) != 0 ) - mwindow->restart_status = -1; // reload, need new bcresources - if( strcmp(preferences->plugin_icons, mwindow->preferences->plugin_icons) != 0 ) - mwindow->restart_status = -1; - if( preferences->awindow_picon_h != mwindow->preferences->awindow_picon_h ) - mwindow->restart_status = -1; + if( strcmp(preferences->theme, mwindow->preferences->theme) || + strcmp(preferences->plugin_icons, mwindow->preferences->plugin_icons) || + preferences->awindow_picon_h != mwindow->preferences->awindow_picon_h || + preferences->vicon_size != mwindow->preferences->vicon_size || + preferences->vicon_color_mode != mwindow->preferences->vicon_color_mode ) + mwindow->restart_status = -1; // reconstruct/restart program if( strcmp(preferences->lv2_path, mwindow->preferences->lv2_path) != 0 ) reload_plugins = 1; if( reload_plugins ) { @@ -329,7 +332,7 @@ int PreferencesThread::apply_settings() if(redraw_times) { mwindow->gui->lock_window("PreferencesThread::apply_settings 3"); - mwindow->gui->update(0, 0, 1, 0, 0, 1, 0); + mwindow->gui->update(0, NO_DRAW, 1, 0, 0, 1, 0); mwindow->gui->redraw_time_dependancies(); mwindow->gui->unlock_window(); } @@ -343,9 +346,16 @@ int PreferencesThread::apply_settings() //printf("PreferencesThread::apply_settings 10\n"); } - if(redraw_times || redraw_overlays) + if(redraw_indexes) { mwindow->gui->lock_window("PreferencesThread::apply_settings 4"); + mwindow->gui->draw_trackmovement(); + mwindow->gui->unlock_window(); + } + + if(redraw_times || redraw_overlays || redraw_indexes) + { + mwindow->gui->lock_window("PreferencesThread::apply_settings 5"); mwindow->gui->flush(); mwindow->gui->unlock_window(); }