X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.0%2Fcinelerra%2Fpreferencesthread.C;h=e59a099d7ad1e5d0576f4c9617e428e7b4f1558c;hb=af9d0b80674da7166da6faabe7cb43b4244c212c;hp=e8d96bbcf5ebabf7163a83f53a2e0cccd34443cd;hpb=8bbd1679c5811ba26608d5fc9ed60cedeb2bc103;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.0/cinelerra/preferencesthread.C b/cinelerra-5.0/cinelerra/preferencesthread.C index e8d96bbc..e59a099d 100644 --- a/cinelerra-5.0/cinelerra/preferencesthread.C +++ b/cinelerra-5.0/cinelerra/preferencesthread.C @@ -49,6 +49,7 @@ #include "playbackprefs.h" #include "preferences.h" #include "recordprefs.h" +#include "shbtnprefs.h" #include "theme.h" #include "trackcanvas.h" #include "transportque.h" @@ -64,7 +65,7 @@ PreferencesMenuitem::PreferencesMenuitem(MWindow *mwindow) - : BC_MenuItem(_("Preferences..."), "Shift+P", 'P') + : BC_MenuItem(_("Preferences..."), _("Shift+P"), 'P') { this->mwindow = mwindow; @@ -99,6 +100,7 @@ PreferencesThread::PreferencesThread(MWindow *mwindow) PreferencesThread::~PreferencesThread() { + close_window(); } BC_Window* PreferencesThread::new_gui() @@ -151,6 +153,8 @@ void PreferencesThread::handle_close_event(int result) edl = 0; mwindow->defaults->update("DEFAULTPREF", current_dialog); + if( mwindow->restart() ) + mwindow->gui->set_done(0); } @@ -197,10 +201,9 @@ int PreferencesThread::apply_settings() (*this_aconfig != *aconfig) || (*this_vconfig != *vconfig) || !preferences->brender_asset->equivalent(*mwindow->preferences->brender_asset, 0, 1); - if( preferences->file_forking != mwindow->preferences->file_forking ) { - MainError::show_error( - _("Reseting file forking requires restarting cinelerra")); - } + if( strcmp(preferences->theme, mwindow->preferences->theme) != 0 ) + mwindow->restart_status = -1; // reload, need new bcresources + mwindow->edl->copy_session(edl, 1); mwindow->preferences->copy_from(preferences); mwindow->init_brender(); @@ -209,7 +212,8 @@ int PreferencesThread::apply_settings() BC_Signals::set_catch_intr(mwindow->preferences->trap_sigintr); mwindow->reset_android_remote(); - mwindow->gui->mbuttons->ffmpeg_toggle->update(mwindow->preferences->ffmpeg_early_probe); + mwindow->gui->ffmpeg_toggle->update(mwindow->preferences->ffmpeg_early_probe); + mwindow->gui->mainshbtns->load(mwindow->preferences); //edl->session->recording_format->dump(); //mwindow->edl->session->recording_format->dump(); @@ -349,7 +353,7 @@ PreferencesWindow::PreferencesWindow(MWindow *mwindow, PreferencesThread *thread, int x, int y) - : BC_Window(PROGRAM_NAME ": Preferences", + : BC_Window(_(PROGRAM_NAME ": Preferences"), x, y, WIDTH,