Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/ClusterM/hakchi2.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexey 'Cluster' Avdyukhin <clusterrr@clusterrr.com>2017-02-16 19:01:56 +0300
committerAlexey 'Cluster' Avdyukhin <clusterrr@clusterrr.com>2017-02-16 19:01:56 +0300
commit737370fc4c9c8aa51092dc82f3ac8f8bab7e5743 (patch)
tree146dff23b377321121f6dbbebf0236d39e509725 /SelectModsForm.cs
parenta860691692d64302185a03e9b913174a32e16931 (diff)
Minor fixes
Diffstat (limited to 'SelectModsForm.cs')
-rw-r--r--SelectModsForm.cs84
1 files changed, 47 insertions, 37 deletions
diff --git a/SelectModsForm.cs b/SelectModsForm.cs
index 358ad4ac..af721084 100644
--- a/SelectModsForm.cs
+++ b/SelectModsForm.cs
@@ -1,8 +1,10 @@
-using SevenZip;
+using com.clusterrr.hakchi_gui.Properties;
+using SevenZip;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
+using System.Diagnostics;
using System.Drawing;
using System.IO;
using System.Linq;
@@ -48,56 +50,64 @@ namespace com.clusterrr.hakchi_gui
private void checkedListBoxMods_SelectedIndexChanged(object sender, EventArgs e)
{
- if (checkedListBoxMods.SelectedItem == null)
+ try
{
- textBoxReadme.Text = "";
- textBoxReadme.Enabled = false;
- return;
- }
- var selected = checkedListBoxMods.SelectedItem.ToString();
- var text = "";
- var dir = Path.Combine(usermodsDirectory, selected + ".hmod");
- if (Directory.Exists(dir))
- {
- foreach (var f in readmeFiles)
+ if (checkedListBoxMods.SelectedItem == null)
+ {
+ textBoxReadme.Text = "";
+ textBoxReadme.Enabled = false;
+ return;
+ }
+ var selected = checkedListBoxMods.SelectedItem.ToString();
+ var text = "";
+ var dir = Path.Combine(usermodsDirectory, selected + ".hmod");
+ if (Directory.Exists(dir))
{
- var fn = Path.Combine(dir, f);
- if (File.Exists(fn))
+ foreach (var f in readmeFiles)
{
- text = File.ReadAllText(fn);
- break;
+ var fn = Path.Combine(dir, f);
+ if (File.Exists(fn))
+ {
+ text = File.ReadAllText(fn);
+ break;
+ }
}
}
- }
- else if (File.Exists(dir))
- {
- SevenZipExtractor.SetLibraryPath(Path.Combine(baseDirectory, IntPtr.Size == 8 ? @"tools\7z64.dll" : @"tools\7z.dll"));
- using (var szExtractor = new SevenZipExtractor(dir))
+ else if (File.Exists(dir))
{
- var tar = new MemoryStream();
- szExtractor.ExtractFile(0, tar);
- tar.Seek(0, SeekOrigin.Begin);
- using (var szExtractorTar = new SevenZipExtractor(tar))
+ SevenZipExtractor.SetLibraryPath(Path.Combine(baseDirectory, IntPtr.Size == 8 ? @"tools\7z64.dll" : @"tools\7z.dll"));
+ using (var szExtractor = new SevenZipExtractor(dir))
{
- foreach (var f in readmeFiles)
+ var tar = new MemoryStream();
+ szExtractor.ExtractFile(0, tar);
+ tar.Seek(0, SeekOrigin.Begin);
+ using (var szExtractorTar = new SevenZipExtractor(tar))
{
- if (szExtractorTar.ArchiveFileNames.Contains(f))
+ foreach (var f in readmeFiles)
{
- var o = new MemoryStream();
- szExtractorTar.ExtractFile(f, o);
- var rawData = new byte[o.Length];
- o.Seek(0, SeekOrigin.Begin);
- o.Read(rawData, 0, (int)o.Length);
- text = Encoding.UTF8.GetString(rawData);
- break;
+ if (szExtractorTar.ArchiveFileNames.Contains(f))
+ {
+ var o = new MemoryStream();
+ szExtractorTar.ExtractFile(f, o);
+ var rawData = new byte[o.Length];
+ o.Seek(0, SeekOrigin.Begin);
+ o.Read(rawData, 0, (int)o.Length);
+ text = Encoding.UTF8.GetString(rawData);
+ break;
+ }
}
}
}
}
- }
- textBoxReadme.Text = text;
- textBoxReadme.Enabled = text.Length > 0;
+ textBoxReadme.Text = text;
+ textBoxReadme.Enabled = text.Length > 0;
+ }
+ catch (Exception ex)
+ {
+ Debug.WriteLine(ex.Message + ex.StackTrace);
+ MessageBox.Show(this, ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
+ }
}
}
}