X-Git-Url: https://git.pterodactylus.net/?p=synfig.git;a=blobdiff_plain;f=synfig-studio%2Fsrc%2Fgui%2Fstates%2Fstate_bline.cpp;h=9d0a10ced567bb381e179282370c092e033f3fb1;hp=d0203749f6b734b435fde74eccea345dce9a0710;hb=87cee9053c40cf19f3b1473beed8af05a512ba95;hpb=961d8b11ca07964cb96baf5a32870cef5d8f62fe diff --git a/synfig-studio/src/gui/states/state_bline.cpp b/synfig-studio/src/gui/states/state_bline.cpp index d020374..9d0a10c 100644 --- a/synfig-studio/src/gui/states/state_bline.cpp +++ b/synfig-studio/src/gui/states/state_bline.cpp @@ -236,64 +236,82 @@ StateBLine::~StateBLine() void StateBLine_Context::load_settings() { - String value; + try + { + SETTINGS_LOCALE_SAFE_AND_BACKUP + String value; - if(settings.get_value("bline.layer_region",value) && value=="0") - set_layer_region_flag(false); - else - set_layer_region_flag(true); + if(settings.get_value("bline.layer_region",value) && value=="0") + set_layer_region_flag(false); + else + set_layer_region_flag(true); - if(settings.get_value("bline.layer_outline",value) && value=="0") - set_layer_outline_flag(false); - else - set_layer_outline_flag(true); + if(settings.get_value("bline.layer_outline",value) && value=="0") + set_layer_outline_flag(false); + else + set_layer_outline_flag(true); - if(settings.get_value("bline.layer_curve_gradient",value) && value=="1") - set_layer_curve_gradient_flag(true); - else - set_layer_curve_gradient_flag(false); + if(settings.get_value("bline.layer_curve_gradient",value) && value=="1") + set_layer_curve_gradient_flag(true); + else + set_layer_curve_gradient_flag(false); - if(settings.get_value("bline.layer_plant",value) && value=="1") - set_layer_plant_flag(true); - else - set_layer_plant_flag(false); + if(settings.get_value("bline.layer_plant",value) && value=="1") + set_layer_plant_flag(true); + else + set_layer_plant_flag(false); - if(settings.get_value("bline.layer_link_origins",value) && value=="0") - set_layer_link_origins_flag(false); - else - set_layer_link_origins_flag(true); + if(settings.get_value("bline.layer_link_origins",value) && value=="0") + set_layer_link_origins_flag(false); + else + set_layer_link_origins_flag(true); - if(settings.get_value("bline.auto_export",value) && value=="1") - set_auto_export_flag(true); - else - set_auto_export_flag(false); + if(settings.get_value("bline.auto_export",value) && value=="1") + set_auto_export_flag(true); + else + set_auto_export_flag(false); - if(settings.get_value("bline.id",value)) - set_id(value); - else - set_id("NewBLine"); + if(settings.get_value("bline.id",value)) + set_id(value); + else + set_id("NewBLine"); - if(settings.get_value("bline.feather",value)) + if(settings.get_value("bline.feather",value)) + { + Real n = atof(value.c_str()); + set_feather(n); + } + + sanity_check(); + SETTINGS_LOCALE_RESTORE + } + catch(...) { - Real n = atof(value.c_str()); - set_feather(n); + synfig::warning("State BLine: Caught exception when attempting to load settings."); } - - sanity_check(); } void StateBLine_Context::save_settings() { - sanity_check(); - settings.set_value("bline.layer_outline",get_layer_outline_flag()?"1":"0"); - settings.set_value("bline.layer_region",get_layer_region_flag()?"1":"0"); - settings.set_value("bline.layer_curve_gradient",get_layer_curve_gradient_flag()?"1":"0"); - settings.set_value("bline.layer_plant",get_layer_plant_flag()?"1":"0"); - settings.set_value("bline.layer_link_origins",get_layer_link_origins_flag()?"1":"0"); - settings.set_value("bline.auto_export",get_auto_export_flag()?"1":"0"); - settings.set_value("bline.id",get_id().c_str()); - settings.set_value("bline.feather",strprintf("%f",get_feather())); + try + { + SETTINGS_LOCALE_SAFE_AND_BACKUP + sanity_check(); + settings.set_value("bline.layer_outline",get_layer_outline_flag()?"1":"0"); + settings.set_value("bline.layer_region",get_layer_region_flag()?"1":"0"); + settings.set_value("bline.layer_curve_gradient",get_layer_curve_gradient_flag()?"1":"0"); + settings.set_value("bline.layer_plant",get_layer_plant_flag()?"1":"0"); + settings.set_value("bline.layer_link_origins",get_layer_link_origins_flag()?"1":"0"); + settings.set_value("bline.auto_export",get_auto_export_flag()?"1":"0"); + settings.set_value("bline.id",get_id().c_str()); + settings.set_value("bline.feather",strprintf("%f",get_feather())); + SETTINGS_LOCALE_RESTORE + } + catch(...) + { + synfig::warning("State BLine : Caught exception when attempting to save settings."); + } } void