Skip to content

Commit

Permalink
Change: Add BIG5 and Windows-1252 to auto-detected charsets
Browse files Browse the repository at this point in the history
  • Loading branch information
leezer3 committed May 12, 2017
1 parent c8db9a6 commit 52a17d5
Show file tree
Hide file tree
Showing 4 changed files with 48 additions and 0 deletions.
6 changes: 6 additions & 0 deletions source/OpenBVE/OldCode/ObjectManager.cs
Original file line number Diff line number Diff line change
Expand Up @@ -1196,6 +1196,12 @@ internal enum ObjectLoadMode { Normal, DontAllowUnloadOfTextures }
case TextEncoding.Encoding.Shift_JIS:
Encoding = System.Text.Encoding.GetEncoding(932);
break;
case TextEncoding.Encoding.Windows1252:
Encoding = System.Text.Encoding.GetEncoding(1252);
break;
case TextEncoding.Encoding.Big5:
Encoding = System.Text.Encoding.GetEncoding(950);
break;
}
}
switch (System.IO.Path.GetExtension(FileName).ToLowerInvariant()) {
Expand Down
8 changes: 8 additions & 0 deletions source/OpenBVE/System/Functions/TextEncoding.cs
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,10 @@ internal enum Encoding
Utf32Be = 6,
/// <summary>SHIFT_JIS</summary>
Shift_JIS = 7,
/// <summary>Windows-1252 (Legacy Microsoft)</summary>
Windows1252,
/// <summary>BIG5</summary>
Big5
}

/// <summary>Gets the character endcoding of a file</summary>
Expand Down Expand Up @@ -95,6 +99,10 @@ internal static Encoding GetEncodingFromFile(string File)
return Encoding.Utf8;
case "UTF-7":
return Encoding.Utf7;
case "WINDOWS-1252":
return Encoding.Windows1252;
case "BIG5":
return Encoding.Big5;
}
Det.Reset();
return Encoding.Unknown;
Expand Down
12 changes: 12 additions & 0 deletions source/OpenBVE/System/Program/CommandLine.cs
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,12 @@ internal static void ParseArguments(string[] Arguments, ref formMain.MainDialogR
case TextEncoding.Encoding.Shift_JIS:
Result.RouteEncoding = System.Text.Encoding.GetEncoding(932);
break;
case TextEncoding.Encoding.Windows1252:
Result.RouteEncoding = System.Text.Encoding.GetEncoding(1252);
break;
case TextEncoding.Encoding.Big5:
Result.RouteEncoding = System.Text.Encoding.GetEncoding(950);
break;
default:
Result.RouteEncoding = Encoding.Default;
break;
Expand Down Expand Up @@ -76,6 +82,12 @@ internal static void ParseArguments(string[] Arguments, ref formMain.MainDialogR
case TextEncoding.Encoding.Shift_JIS:
Result.TrainEncoding = System.Text.Encoding.GetEncoding(932);
break;
case TextEncoding.Encoding.Windows1252:
Result.TrainEncoding = System.Text.Encoding.GetEncoding(1252);
break;
case TextEncoding.Encoding.Big5:
Result.TrainEncoding = System.Text.Encoding.GetEncoding(950);
break;
default:
Result.TrainEncoding = Encoding.Default;
break;
Expand Down
22 changes: 22 additions & 0 deletions source/OpenBVE/UserInterface/formMain.Start.cs
Original file line number Diff line number Diff line change
Expand Up @@ -908,6 +908,18 @@ private void routeWorkerThread_completed(object sender, RunWorkerCompletedEventA
comboboxRouteEncoding.Items[0] = "(SHIFT_JIS)";
Result.RouteEncoding = System.Text.Encoding.GetEncoding(932);
break;
case TextEncoding.Encoding.Windows1252:
panelRouteEncoding.Enabled = false;
comboboxRouteEncoding.SelectedIndex = 0;
comboboxRouteEncoding.Items[0] = "Western European (Windows) 1252";
Result.RouteEncoding = System.Text.Encoding.GetEncoding(1252);
break;
case TextEncoding.Encoding.Big5:
panelRouteEncoding.Enabled = false;
comboboxRouteEncoding.SelectedIndex = 0;
comboboxRouteEncoding.Items[0] = "Chinese Traditional (Big5) 950";
Result.RouteEncoding = System.Text.Encoding.GetEncoding(950);
break;
}
panelRouteEncoding.Enabled = true;
comboboxRouteEncoding.Tag = new object();
Expand Down Expand Up @@ -980,6 +992,16 @@ private void routeWorkerThread_completed(object sender, RunWorkerCompletedEventA
comboboxTrainEncoding.Items[0] = "(SHIFT_JIS)";
Result.TrainEncoding = System.Text.Encoding.GetEncoding(932);
break;
case TextEncoding.Encoding.Windows1252:
comboboxTrainEncoding.SelectedIndex = 0;
comboboxTrainEncoding.Items[0] = "Western European (Windows) 1252";
Result.TrainEncoding = System.Text.Encoding.GetEncoding(1252);
break;
case TextEncoding.Encoding.Big5:
comboboxTrainEncoding.SelectedIndex = 0;
comboboxTrainEncoding.Items[0] = "Chinese Traditional (Big5) 950";
Result.TrainEncoding = System.Text.Encoding.GetEncoding(950);
break;
}
int i;
for (i = 0; i < Interface.CurrentOptions.TrainEncodings.Length; i++) {
Expand Down

0 comments on commit 52a17d5

Please sign in to comment.