X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-studio%2Fsrc%2Fgui%2Fstates%2Fstate_gradient.cpp;h=c8dd5cd8685e0bd32a6edcfc89e137f4edafad13;hb=477fd4ea9c6133e098572554a9eadbf503e27fab;hp=1e3d10487ddbb9f33bf15ef5a69797ae2deb0b4f;hpb=5fe12ee93aaca62d4d1e4007a5e94b97c1135d2c;p=synfig.git diff --git a/synfig-studio/src/gui/states/state_gradient.cpp b/synfig-studio/src/gui/states/state_gradient.cpp index 1e3d104..c8dd5cd 100644 --- a/synfig-studio/src/gui/states/state_gradient.cpp +++ b/synfig-studio/src/gui/states/state_gradient.cpp @@ -174,34 +174,50 @@ StateGradient::~StateGradient() void StateGradient_Context::load_settings() { - String value; + try + { + synfig::ChangeLocale change_locale(LC_NUMERIC, "C"); + String value; - if(settings.get_value("gradient.id",value)) - set_id(value); - else - set_id("Gradient"); + if(settings.get_value("gradient.id",value)) + set_id(value); + else + set_id("Gradient"); - if(settings.get_value("gradient.type",value)) - set_type(atoi(value.c_str())); - else - set_type(GRADIENT_INTERPOLATION_LINEAR); + if(settings.get_value("gradient.type",value)) + set_type(atoi(value.c_str())); + else + set_type(GRADIENT_INTERPOLATION_LINEAR); #ifdef BLEND_METHOD_IN_TOOL_OPTIONS - if(settings.get_value("gradient.blend",value)) - set_blend(atoi(value.c_str())); - else - set_blend(Color::BLEND_COMPOSITE); + if(settings.get_value("gradient.blend",value)) + set_blend(atoi(value.c_str())); + else + set_blend(Color::BLEND_COMPOSITE); #endif // BLEND_METHOD_IN_TOOL_OPTIONS + } + catch(...) + { + synfig::warning("State Gradient: Caught exception when attempting to load settings."); + } } void StateGradient_Context::save_settings() { - settings.set_value("gradient.id",get_id().c_str()); - settings.set_value("gradient.type",strprintf("%d",get_type())); + try + { + synfig::ChangeLocale change_locale(LC_NUMERIC, "C"); + settings.set_value("gradient.id",get_id().c_str()); + settings.set_value("gradient.type",strprintf("%d",get_type())); #ifdef BLEND_METHOD_IN_TOOL_OPTIONS - settings.set_value("gradient.blend",strprintf("%d",get_blend())); + settings.set_value("gradient.blend",strprintf("%d",get_blend())); #endif // BLEND_METHOD_IN_TOOL_OPTIONS + } + catch(...) + { + synfig::warning("State Gradient: Caught exception when attempting to save settings."); + } } void