X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-studio%2Fsrc%2Fgui%2Fapp.cpp;h=0f8d3bdd87953eca8b01c95975cdc574400759f6;hb=477fd4ea9c6133e098572554a9eadbf503e27fab;hp=207fcc5f294f1c31c8df1145165e6f09b2bbc02c;hpb=6054e41d9bd09ab2addaef1eeb45798a99e77d70;p=synfig.git diff --git a/synfig-studio/src/gui/app.cpp b/synfig-studio/src/gui/app.cpp index 207fcc5..0f8d3bd 100644 --- a/synfig-studio/src/gui/app.cpp +++ b/synfig-studio/src/gui/app.cpp @@ -498,202 +498,216 @@ class Preferences : public synfigapp::Settings public: virtual bool get_value(const synfig::String& key, synfig::String& value)const { - if(key=="gamma") + try { - value=strprintf("%f %f %f %f", - App::gamma.get_gamma_r(), - App::gamma.get_gamma_g(), - App::gamma.get_gamma_b(), - App::gamma.get_black_level() - ); - return true; - } - if(key=="time_format") - { - value=strprintf("%i",App::get_time_format()); - return true; - } - if(key=="file_history.size") - { - value=strprintf("%i",App::get_max_recent_files()); - return true; - } - if(key=="use_colorspace_gamma") - { - value=strprintf("%i",(int)App::use_colorspace_gamma); - return true; - } - if(key=="distance_system") - { - value=strprintf("%s",Distance::system_name(App::distance_system).c_str()); - return true; - } + synfig::ChangeLocale change_locale(LC_NUMERIC, "C"); + if(key=="gamma") + { + value=strprintf("%f %f %f %f", + App::gamma.get_gamma_r(), + App::gamma.get_gamma_g(), + App::gamma.get_gamma_b(), + App::gamma.get_black_level() + ); + return true; + } + if(key=="time_format") + { + value=strprintf("%i",App::get_time_format()); + return true; + } + if(key=="file_history.size") + { + value=strprintf("%i",App::get_max_recent_files()); + return true; + } + if(key=="use_colorspace_gamma") + { + value=strprintf("%i",(int)App::use_colorspace_gamma); + return true; + } + if(key=="distance_system") + { + value=strprintf("%s",Distance::system_name(App::distance_system).c_str()); + return true; + } #ifdef SINGLE_THREADED - if(key=="single_threaded") - { - value=strprintf("%i",(int)App::single_threaded); - return true; - } + if(key=="single_threaded") + { + value=strprintf("%i",(int)App::single_threaded); + return true; + } #endif - if(key=="auto_recover_backup_interval") - { - value=strprintf("%i",App::auto_recover->get_timeout()); - return true; - } - if(key=="restrict_radius_ducks") - { - value=strprintf("%i",(int)App::restrict_radius_ducks); - return true; - } - if(key=="resize_imported_images") - { - value=strprintf("%i",(int)App::resize_imported_images); - return true; - } - if(key=="browser_command") - { - value=App::browser_command; - return true; - } - if(key=="custom_filename_prefix") - { - value=App::custom_filename_prefix; - return true; - } - if(key=="preferred_x_size") - { - value=strprintf("%i",App::preferred_x_size); - return true; - } - if(key=="preferred_y_size") - { - value=strprintf("%i",App::preferred_y_size); - return true; - } - if(key=="predefined_size") - { - value=strprintf("%s",App::predefined_size.c_str()); - return true; - } - if(key=="preferred_fps") - { - value=strprintf("%f",App::preferred_fps); - return true; + if(key=="auto_recover_backup_interval") + { + value=strprintf("%i",App::auto_recover->get_timeout()); + return true; + } + if(key=="restrict_radius_ducks") + { + value=strprintf("%i",(int)App::restrict_radius_ducks); + return true; + } + if(key=="resize_imported_images") + { + value=strprintf("%i",(int)App::resize_imported_images); + return true; + } + if(key=="browser_command") + { + value=App::browser_command; + return true; + } + if(key=="custom_filename_prefix") + { + value=App::custom_filename_prefix; + return true; + } + if(key=="preferred_x_size") + { + value=strprintf("%i",App::preferred_x_size); + return true; + } + if(key=="preferred_y_size") + { + value=strprintf("%i",App::preferred_y_size); + return true; + } + if(key=="predefined_size") + { + value=strprintf("%s",App::predefined_size.c_str()); + return true; + } + if(key=="preferred_fps") + { + value=strprintf("%f",App::preferred_fps); + return true; + } + if(key=="predefined_fps") + { + value=strprintf("%s",App::predefined_fps.c_str()); + return true; + } } - if(key=="predefined_fps") + catch(...) { - value=strprintf("%s",App::predefined_fps.c_str()); - return true; + synfig::warning("Preferences: Caught exception when attempting to get value."); } - return synfigapp::Settings::get_value(key,value); } virtual bool set_value(const synfig::String& key,const synfig::String& value) { - if(key=="gamma") + try { - float r,g,b,blk; + synfig::ChangeLocale change_locale(LC_NUMERIC, "C"); + if(key=="gamma") + { + float r,g,b,blk; - strscanf(value,"%f %f %f %f", - &r, - &g, - &b, - &blk - ); + strscanf(value,"%f %f %f %f", + &r, + &g, + &b, + &blk + ); - App::gamma.set_all(r,g,b,blk); + App::gamma.set_all(r,g,b,blk); - return true; - } - if(key=="time_format") - { - int i(atoi(value.c_str())); - App::set_time_format(static_cast(i)); - return true; - } - if(key=="auto_recover_backup_interval") - { - int i(atoi(value.c_str())); - App::auto_recover->set_timeout(i); - return true; - } - if(key=="file_history.size") - { - int i(atoi(value.c_str())); - App::set_max_recent_files(i); - return true; - } - if(key=="use_colorspace_gamma") - { - int i(atoi(value.c_str())); - App::use_colorspace_gamma=i; - return true; - } - if(key=="distance_system") - { - App::distance_system=Distance::ident_system(value);; - return true; - } + return true; + } + if(key=="time_format") + { + int i(atoi(value.c_str())); + App::set_time_format(static_cast(i)); + return true; + } + if(key=="auto_recover_backup_interval") + { + int i(atoi(value.c_str())); + App::auto_recover->set_timeout(i); + return true; + } + if(key=="file_history.size") + { + int i(atoi(value.c_str())); + App::set_max_recent_files(i); + return true; + } + if(key=="use_colorspace_gamma") + { + int i(atoi(value.c_str())); + App::use_colorspace_gamma=i; + return true; + } + if(key=="distance_system") + { + App::distance_system=Distance::ident_system(value);; + return true; + } #ifdef SINGLE_THREADED - if(key=="single_threaded") - { - int i(atoi(value.c_str())); - App::single_threaded=i; - return true; - } + if(key=="single_threaded") + { + int i(atoi(value.c_str())); + App::single_threaded=i; + return true; + } #endif - if(key=="restrict_radius_ducks") - { - int i(atoi(value.c_str())); - App::restrict_radius_ducks=i; - return true; - } - if(key=="resize_imported_images") - { - int i(atoi(value.c_str())); - App::resize_imported_images=i; - return true; - } - if(key=="browser_command") - { - App::browser_command=value; - return true; - } - if(key=="custom_filename_prefix") - { - App::custom_filename_prefix=value; - return true; - } - if(key=="preferred_x_size") - { - int i(atoi(value.c_str())); - App::preferred_x_size=i; - return true; - } - if(key=="preferred_y_size") - { - int i(atoi(value.c_str())); - App::preferred_y_size=i; - return true; - } - if(key=="predefined_size") - { - App::predefined_size=value; - return true; - } - if(key=="preferred_fps") - { - float i(atof(value.c_str())); - App::preferred_fps=i; - return true; + if(key=="restrict_radius_ducks") + { + int i(atoi(value.c_str())); + App::restrict_radius_ducks=i; + return true; + } + if(key=="resize_imported_images") + { + int i(atoi(value.c_str())); + App::resize_imported_images=i; + return true; + } + if(key=="browser_command") + { + App::browser_command=value; + return true; + } + if(key=="custom_filename_prefix") + { + App::custom_filename_prefix=value; + return true; + } + if(key=="preferred_x_size") + { + int i(atoi(value.c_str())); + App::preferred_x_size=i; + return true; + } + if(key=="preferred_y_size") + { + int i(atoi(value.c_str())); + App::preferred_y_size=i; + return true; + } + if(key=="predefined_size") + { + App::predefined_size=value; + return true; + } + if(key=="preferred_fps") + { + float i(atof(value.c_str())); + App::preferred_fps=i; + return true; + } + if(key=="predefined_fps") + { + App::predefined_fps=value; + return true; + } } - if(key=="predefined_fps") + catch(...) { - App::predefined_fps=value; - return true; + synfig::warning("Preferences: Caught exception when attempting to set value."); } - return synfigapp::Settings::set_value(key,value); } @@ -1600,11 +1614,9 @@ App::set_time_format(synfig::Time::Format x) void App::save_settings() { - char * old_locale; try { - old_locale=strdup(setlocale(LC_NUMERIC, NULL)); - setlocale(LC_NUMERIC, "C"); + synfig::ChangeLocale change_locale(LC_NUMERIC, "C"); { std::string filename=get_config_file("accelrc"); Gtk::AccelMap::save(filename); @@ -1644,7 +1656,7 @@ App::save_settings() }while(0); std::string filename=get_config_file("settings"); synfigapp::Main::settings().save_to_file(filename); - setlocale(LC_NUMERIC,old_locale); + } catch(...) { @@ -1655,11 +1667,9 @@ App::save_settings() void App::load_settings() { - char * old_locale; try { - old_locale=strdup(setlocale(LC_NUMERIC, NULL)); - setlocale(LC_NUMERIC, "C"); + synfig::ChangeLocale change_locale(LC_NUMERIC, "C"); { std::string filename=get_config_file("accelrc"); Gtk::AccelMap::load(filename); @@ -1715,7 +1725,7 @@ App::load_settings() reset_initial_window_configuration(); } } - setlocale(LC_NUMERIC,old_locale); + } catch(...) { @@ -2087,12 +2097,13 @@ App::dialog_save_file(const std::string &title, std::string &filename, std::stri { file_type_enum = manage(new Widget_Enum()); file_type_enum->set_param_desc(ParamDesc().set_hint("enum") - .add_enum_value(synfig::RELEASE_VERSION_0_62_01, "0.62.01", strprintf("0.62.01 (%s)", _("current"))) - .add_enum_value(synfig::RELEASE_VERSION_0_62_00, "0.62.00", "0.61.00") - .add_enum_value(synfig::RELEASE_VERSION_0_61_09, "0.61.09", "0.61.09") - .add_enum_value(synfig::RELEASE_VERSION_0_61_08, "0.61.08", "0.61.08") - .add_enum_value(synfig::RELEASE_VERSION_0_61_07, "0.61.07", "0.61.07") - .add_enum_value(synfig::RELEASE_VERSION_0_61_06, "0.61.06", strprintf("0.61.06 %s", _("and older")))); + .add_enum_value(synfig::RELEASE_VERSION_0_62_02, "0.62.02", strprintf("0.62.02 (%s)", _("current"))) + .add_enum_value(synfig::RELEASE_VERSION_0_62_01, "0.62.01", "0.62.01") + .add_enum_value(synfig::RELEASE_VERSION_0_62_00, "0.62.00", "0.61.00") + .add_enum_value(synfig::RELEASE_VERSION_0_61_09, "0.61.09", "0.61.09") + .add_enum_value(synfig::RELEASE_VERSION_0_61_08, "0.61.08", "0.61.08") + .add_enum_value(synfig::RELEASE_VERSION_0_61_07, "0.61.07", "0.61.07") + .add_enum_value(synfig::RELEASE_VERSION_0_61_06, "0.61.06", strprintf("0.61.06 %s", _("and older")))); file_type_enum->set_value(RELEASE_VERSION_END-1); // default to the most recent version Gtk::HBox *hbox = manage(new Gtk::HBox);