From b6335e3646843b937e249ef9ee98cafee8585cea Mon Sep 17 00:00:00 2001 From: Alexey 'Cluster' Avdyukhin Date: Fri, 17 Feb 2017 12:15:13 +0300 Subject: RetroArch pack script --- SelectModsForm.cs | 38 +++++++++++++++++++++++++------------- 1 file changed, 25 insertions(+), 13 deletions(-) (limited to 'SelectModsForm.cs') diff --git a/SelectModsForm.cs b/SelectModsForm.cs index af721084..a0beaf7f 100644 --- a/SelectModsForm.cs +++ b/SelectModsForm.cs @@ -9,6 +9,7 @@ using System.Drawing; using System.IO; using System.Linq; using System.Text; +using System.Threading; using System.Windows.Forms; namespace com.clusterrr.hakchi_gui @@ -49,16 +50,21 @@ namespace com.clusterrr.hakchi_gui } private void checkedListBoxMods_SelectedIndexChanged(object sender, EventArgs e) + { + if (checkedListBoxMods.SelectedItem != null) + new Thread(loadReadMe).Start(checkedListBoxMods.SelectedItem.ToString()); + else + { + textBoxReadme.Text = ""; + textBoxReadme.Enabled = false; + } + } + + void loadReadMe(object obj) { try { - if (checkedListBoxMods.SelectedItem == null) - { - textBoxReadme.Text = ""; - textBoxReadme.Enabled = false; - return; - } - var selected = checkedListBoxMods.SelectedItem.ToString(); + var selected = obj as string; var text = ""; var dir = Path.Combine(usermodsDirectory, selected + ".hmod"); if (Directory.Exists(dir)) @@ -99,14 +105,20 @@ namespace com.clusterrr.hakchi_gui } } } - - textBoxReadme.Text = text; - textBoxReadme.Enabled = text.Length > 0; + Invoke(new Action(showReadMe), new object[] { selected, text }); + } + catch + { } - catch (Exception ex) + } + + void showReadMe(string mod, string readme) + { + if (checkedListBoxMods.SelectedItem != null && + checkedListBoxMods.SelectedItem.ToString() == mod) { - Debug.WriteLine(ex.Message + ex.StackTrace); - MessageBox.Show(this, ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error); + textBoxReadme.Text = readme; + textBoxReadme.Enabled = readme.Length > 0; } } } -- cgit v1.2.3