Skip to content

Commit 65f6a81

Browse files
author
Tudi20
committed
Bug Fix on Load
1 parent 742b6b5 commit 65f6a81

File tree

2 files changed

+52
-41
lines changed

2 files changed

+52
-41
lines changed

Universal THCRAP Launcher/MainForm.cs

Lines changed: 51 additions & 40 deletions
Original file line numberDiff line numberDiff line change
@@ -154,33 +154,7 @@ private void Form1_Load(object sender, EventArgs e) {
154154
string rawFile = File.ReadAllText("games.js");
155155
_gamesDictionary = JsonConvert.DeserializeObject<Dictionary<string, string>>(rawFile);
156156

157-
PopulatePatchList();
158-
PopulateGames();
159-
160-
#endregion
161-
162-
#region Create constants for resizing
163-
164-
_resizeConstants = new int[6];
165-
_resizeConstants[0] = Size.Width - startButton.Width;
166-
_resizeConstants[1] = Size.Width - splitContainer1.Width;
167-
_resizeConstants[2] = Size.Height - splitContainer1.Height;
168-
_resizeConstants[3] = splitContainer1.Location.Y - btn_sortAZ1.Location.Y;
169-
_resizeConstants[4] = btn_sortAZ2.Location.X - patchListBox.Size.Width;
170-
_resizeConstants[5] = btn_filterFav1.Location.X - btn_sortAZ1.Location.X;
171-
172157
#endregion
173-
174-
#region Display
175-
176-
SetDefaultSettings();
177-
178-
//Change Form settings
179-
SetDesktopLocation(Configuration1.Window.Location[0], Configuration1.Window.Location[1]);
180-
Size = new Size(Configuration1.Window.Size[0], Configuration1.Window.Size[1]);
181-
182-
#endregion
183-
184158
if (menuStrip1 == null) return;
185159
menuStrip1.Items.OfType<ToolStripMenuItem>().ToList().ForEach(x =>
186160
x.MouseHover +=
@@ -198,14 +172,23 @@ private void Form1_Load(object sender, EventArgs e) {
198172
Trace.WriteLine($"[{DateTime.Now.ToShortTimeString()}] Couldn't connect to GitHub for language update.\nReason: {ex}");
199173
}
200174

201-
UpdateLanguage();
175+
GetPatchList();
176+
SetDefaultSettings();
202177

203-
Trace.WriteLine($"[{DateTime.Now.ToLongTimeString()}] MainForm Loaded with the following Configuration:");
204-
Trace.WriteLine($"\tExitAfterStartup: {Configuration1.ExitAfterStartup}\n\tLastConfig: {Configuration1.LastConfig}\n\tLastGame: {Configuration1.LastGame}\n\tFilterExeType: {Configuration1.FilterExeType}\n\tHidePatchExtension: {Configuration1.HidePatchExtension}\n\tLang: {Configuration.Lang}");
205-
Trace.WriteLine($"\tIsDescending: {Configuration1.IsDescending[0]} | {Configuration1.IsDescending[1]}\n\tOnlyFavorites: {Configuration1.OnlyFavorites[0]} | {Configuration1.OnlyFavorites[1]}\n\tWindow:\n\t\tLocation: {Configuration1.Window.Location[0]}, {Configuration1.Window.Location[1]}\n\t\tSize: {Configuration1.Window.Size[0]}, {Configuration1.Window.Size[1]}");
178+
UpdateLanguage();
179+
Debug.WriteLine($"[{DateTime.Now.ToLongTimeString()}] MainForm Loaded with the following Configuration:");
180+
Trace.WriteLine($"\tLastConfig: {Configuration1.LastConfig}");
181+
Trace.WriteLine($"\tLastGame: {Configuration1.LastGame}");
182+
Trace.WriteLine($"\tFilterExeType: {Configuration1.FilterExeType}");
183+
Trace.WriteLine($"\tHidePatchExtension: {Configuration1.HidePatchExtension}");
184+
Trace.WriteLine($"\tLang: {Configuration.Lang}");
185+
Trace.WriteLine($"\tExitAfterStartup: {Configuration1.ExitAfterStartup}");
186+
Trace.WriteLine($"\tIsDescending: {Configuration1.IsDescending[0]} | {Configuration1.IsDescending[1]}");
187+
Trace.WriteLine($"\tOnlyFavorites: {Configuration1.OnlyFavorites[0]} | {Configuration1.OnlyFavorites[1]}");
188+
Trace.WriteLine($"\tWindow:\n\t\tLocation: {Configuration1.Window.Location[0]}, {Configuration1.Window.Location[1]}");
189+
Trace.WriteLine($"\t\tSize: {Configuration1.Window.Size[0]}, {Configuration1.Window.Size[1]}");
206190
}
207191

208-
209192
private void MainForm_KeyUp(object sender, KeyEventArgs e) {
210193
if (ModifierKeys != Keys.None) {
211194
patchListBox.SelectedItem = Configuration1.LastConfig;
@@ -280,12 +263,31 @@ private void MainForm_Closing(object sender, FormClosingEventArgs e) {
280263
}
281264

282265
private void Form1_Shown(object sender, EventArgs e) {
283-
ReadConfig();
266+
#region Create constants for resizing
284267

285-
//Set default selection index
286-
if (patchListBox.SelectedIndex == -1 && patchListBox.Items.Count > 0) patchListBox.SelectedIndex = 0;
268+
_resizeConstants = new int[6];
269+
_resizeConstants[0] = Size.Width - startButton.Width;
270+
_resizeConstants[1] = Size.Width - splitContainer1.Width;
271+
_resizeConstants[2] = Size.Height - splitContainer1.Height;
272+
_resizeConstants[3] = splitContainer1.Location.Y - btn_sortAZ1.Location.Y;
273+
_resizeConstants[4] = btn_sortAZ2.Location.X - patchListBox.Size.Width;
274+
_resizeConstants[5] = btn_filterFav1.Location.X - btn_sortAZ1.Location.X;
287275

288-
if (gameListBox.SelectedIndex == -1 && gameListBox.Items.Count > 0) gameListBox.SelectedIndex = 0;
276+
#endregion
277+
278+
279+
#region Display
280+
281+
//Change Form settings
282+
SetDesktopLocation(Configuration1.Window.Location[0], Configuration1.Window.Location[1]);
283+
Size = new Size(Configuration1.Window.Size[0], Configuration1.Window.Size[1]);
284+
285+
#endregion
286+
287+
ReadConfig();
288+
289+
PopulatePatchList();
290+
PopulateGames();
289291

290292
UpdateConfigFile();
291293
}
@@ -498,13 +500,15 @@ private void settingsTS_Click(object sender, EventArgs e) {
498500
private void SetDefaultSettings() {
499501
//Default Configuration setting
500502
try {
503+
if (Configuration1 == null) Configuration1 = new Configuration();
504+
501505
if (Configuration.Lang == null) {
502506
Configuration.Lang = "en.json";
503507
Trace.WriteLine($"[{DateTime.Now.ToShortTimeString()}] Configuration.Lang has been set to {Configuration.Lang}");
504508
}
505509

506510
if (Configuration1.LastGame == null) {
507-
Configuration1.LastGame = _displayNameToThxxDictionary.Keys.ElementAt(0);
511+
Configuration1.LastGame = _displayNameToThxxDictionary.Count != 0 ? _displayNameToThxxDictionary.Keys.ElementAt(0) : _gamesDictionary.Keys.ElementAt(0);
508512
Trace.WriteLine(
509513
$"[{DateTime.Now.ToShortTimeString()}] Configuration1.LastGame has been set to {Configuration1.LastGame}");
510514
}
@@ -601,6 +605,9 @@ private void SetDefaultSettings() {
601605
Trace.WriteLine($"[{DateTime.Now.ToShortTimeString()}] Configuration1.FilterExeType");
602606
filterByType_button_Click("DefaultSettings", new EventArgs());
603607
}
608+
609+
if (Favourites1.Games == null) Favourites1.Games = new List<string>();
610+
if (Favourites1.Patches == null) Favourites1.Patches = new List<string>();
604611
}
605612
catch (Exception e) {
606613
MessageBox.Show($@"1. If you're a developer: Don't forget to set the working directory to thcrap's directory. Your current working directory is: {Environment.CurrentDirectory}
@@ -751,13 +758,13 @@ public void PopulateGames() {
751758
if (gameListBox.SelectedIndex == -1 && gameListBox.Items.Count > 0) gameListBox.SelectedIndex = 0;
752759
}
753760

754-
public void PopulatePatchList() {
761+
private void GetPatchList() {
755762
_jsFiles.Clear();
756763
_thcrapFiles.Clear();
757764
patchListBox.Items.Clear();
758765

759766
//Load patch stacks
760-
_jsFiles = Directory.GetFiles(Directory.GetCurrentDirectory(), "*.js").ToList();
767+
_jsFiles = Directory.GetFiles(Directory.GetCurrentDirectory(), "*.js").ToList();
761768
_thcrapFiles = Directory.GetFiles(Directory.GetCurrentDirectory(), "*.thcrap").ToList();
762769

763770
//Give error if there are no patch configurations
@@ -780,6 +787,10 @@ public void PopulatePatchList() {
780787

781788
}
782789
#endregion
790+
}
791+
792+
public void PopulatePatchList() {
793+
GetPatchList();
783794

784795
//Display patch stacks
785796
if (Configuration1.ShowVanilla) patchListBox.Items.Add($"[{I18N.LangResource.mainForm.vanilla}]");
@@ -1214,8 +1225,8 @@ public Favourites(List<string> patches, List<string> games) {
12141225
Games = games;
12151226
}
12161227

1217-
public List<string> Patches { get; }
1218-
public List<string> Games { get; }
1228+
public List<string> Patches { get; set; }
1229+
public List<string> Games { get; set; }
12191230
}
12201231

12211232
public sealed class JumpListElement : ToolStripMenuItem {
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
2019. 06. 04. 3:05:06,92
1+
2019. 06. 04. 22:36:36,99
22
Central Europe Standard Time

0 commit comments

Comments
 (0)