Support for alternative culture info, in this way it can be guaranteed that ',' works always as a decimal point.
This commit is contained in:
parent
39eb2cfd57
commit
32a3282d5d
@ -30,6 +30,8 @@ namespace TBF
|
||||
public const string LocalSettingsFileName = "config.xml";
|
||||
public const string LocalSettingsBackupName = "config.backup.xml";
|
||||
|
||||
public static System.Globalization.CultureInfo AltCulture;
|
||||
|
||||
/// Database related: This object reference is set after a successful user login
|
||||
public static DatabaseSettings CurrentBench;
|
||||
const string SQLiteDbFName = "SQLite.db";
|
||||
@ -143,6 +145,8 @@ namespace TBF
|
||||
new System.Globalization.CultureInfo("en");
|
||||
}
|
||||
|
||||
//AltCulture = null;
|
||||
AltCulture = new System.Globalization.CultureInfo("SK");
|
||||
|
||||
/// This belongs to Application.Run(new MainWnd()) ...
|
||||
/// and should be executed before opening 'loginDlg'
|
||||
|
||||
@ -15,13 +15,16 @@ namespace TBF
|
||||
public static bool TryParseUFloat(string text, out float result)
|
||||
{
|
||||
return float.TryParse(text, NumberStyles.AllowDecimalPoint, CultureInfo.CurrentCulture, out result) ||
|
||||
float.TryParse(text, NumberStyles.AllowDecimalPoint, CultureInfo.InvariantCulture, out result);
|
||||
float.TryParse(text, NumberStyles.AllowDecimalPoint, CultureInfo.InvariantCulture, out result) ||
|
||||
(Program.AltCulture != null && float.TryParse(text, NumberStyles.AllowDecimalPoint, Program.AltCulture, out result));
|
||||
|
||||
}
|
||||
public static float ParseUFloat(string text, float dfltVal)
|
||||
{
|
||||
float result;
|
||||
if (float.TryParse(text, NumberStyles.AllowDecimalPoint, CultureInfo.CurrentCulture, out result)) return result;
|
||||
if (float.TryParse(text, NumberStyles.AllowDecimalPoint, CultureInfo.InvariantCulture, out result)) return result;
|
||||
if (Program.AltCulture != null && float.TryParse(text, NumberStyles.AllowDecimalPoint, Program.AltCulture, out result)) return result;
|
||||
return dfltVal;
|
||||
}
|
||||
public static float ParseUFloat(string text)
|
||||
@ -35,13 +38,15 @@ namespace TBF
|
||||
public static bool TryParseSFloat(string text, out float result)
|
||||
{
|
||||
return float.TryParse(text, NumberStyles.AllowDecimalPoint | NumberStyles.AllowLeadingSign, CultureInfo.CurrentCulture, out result) ||
|
||||
float.TryParse(text, NumberStyles.AllowDecimalPoint | NumberStyles.AllowLeadingSign, CultureInfo.InvariantCulture, out result);
|
||||
float.TryParse(text, NumberStyles.AllowDecimalPoint | NumberStyles.AllowLeadingSign, CultureInfo.InvariantCulture, out result) ||
|
||||
(Program.AltCulture != null && float.TryParse(text, NumberStyles.AllowDecimalPoint | NumberStyles.AllowLeadingSign, Program.AltCulture, out result));
|
||||
}
|
||||
public static float ParseSFloat(string text, float dfltVal)
|
||||
{
|
||||
float result;
|
||||
if (float.TryParse(text, NumberStyles.AllowDecimalPoint | NumberStyles.AllowLeadingSign, CultureInfo.CurrentCulture, out result)) return result;
|
||||
if (float.TryParse(text, NumberStyles.AllowDecimalPoint | NumberStyles.AllowLeadingSign, CultureInfo.InvariantCulture, out result)) return result;
|
||||
if (Program.AltCulture != null && float.TryParse(text, NumberStyles.AllowDecimalPoint | NumberStyles.AllowLeadingSign, Program.AltCulture, out result)) return result;
|
||||
return dfltVal;
|
||||
}
|
||||
public static float ParseSFloat(string text)
|
||||
@ -55,13 +60,15 @@ namespace TBF
|
||||
public static bool TryParseEFloat(string text, out float result)
|
||||
{
|
||||
return float.TryParse(text, NumberStyles.AllowDecimalPoint | NumberStyles.AllowLeadingSign | NumberStyles.AllowExponent, CultureInfo.CurrentCulture, out result) ||
|
||||
float.TryParse(text, NumberStyles.AllowDecimalPoint | NumberStyles.AllowLeadingSign | NumberStyles.AllowExponent, CultureInfo.InvariantCulture, out result);
|
||||
float.TryParse(text, NumberStyles.AllowDecimalPoint | NumberStyles.AllowLeadingSign | NumberStyles.AllowExponent, CultureInfo.InvariantCulture, out result) ||
|
||||
(Program.AltCulture != null && float.TryParse(text, NumberStyles.AllowDecimalPoint | NumberStyles.AllowLeadingSign | NumberStyles.AllowExponent, Program.AltCulture, out result));
|
||||
}
|
||||
public static float ParseEFloat(string text, float dfltVal)
|
||||
{
|
||||
float result;
|
||||
if (float.TryParse(text, NumberStyles.AllowDecimalPoint | NumberStyles.AllowLeadingSign | NumberStyles.AllowExponent, CultureInfo.CurrentCulture, out result)) return result;
|
||||
if (float.TryParse(text, NumberStyles.AllowDecimalPoint | NumberStyles.AllowLeadingSign | NumberStyles.AllowExponent, CultureInfo.InvariantCulture, out result)) return result;
|
||||
if (Program.AltCulture != null && float.TryParse(text, NumberStyles.AllowDecimalPoint | NumberStyles.AllowLeadingSign | NumberStyles.AllowExponent, Program.AltCulture, out result)) return result;
|
||||
return dfltVal;
|
||||
}
|
||||
public static float ParseEFloat(string text)
|
||||
|
||||
Loading…
Reference in New Issue
Block a user