BF: Fix broken locale conversion in monitor center

Saving and loading monitor configurations in the Monitor Center changed
their values in some locales. The entered values are correctly converted
from strings into floats using locale.atof() but they were incorrectly
converted back into strings by using str() instead of locale.str(). The
former does not use the decimal separator of the current locale and
always adds a fractional part. locale.atof() then just removed the not
valid separator (only) which led to a number having a different value.