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:
-rw-r--r--FoldersManagerForm.cs1
-rw-r--r--Properties/Resources.resx15
-rw-r--r--SaveStateManager.Designer.cs1
-rw-r--r--SaveStateManager.cs50
4 files changed, 50 insertions, 17 deletions
diff --git a/FoldersManagerForm.cs b/FoldersManagerForm.cs
index 68b852d4..c49b6be3 100644
--- a/FoldersManagerForm.cs
+++ b/FoldersManagerForm.cs
@@ -63,6 +63,7 @@ namespace com.clusterrr.hakchi_gui
}
else DrawTree();
splitContainer.Panel2MinSize = 485;
+ comboBoxPosition.Left = labelPosition.Left + labelPosition.Width;
treeView.TreeViewNodeSorter = new NodeSorter();
listViewContent.ListViewItemSorter = new NodeSorter();
}
diff --git a/Properties/Resources.resx b/Properties/Resources.resx
index 85304b50..b05fbfde 100644
--- a/Properties/Resources.resx
+++ b/Properties/Resources.resx
@@ -144,9 +144,6 @@
<data name="Done" xml:space="preserve">
<value>Done!</value>
</data>
- <data name="DoneUploaded" xml:space="preserve">
- <value>Done! Wait until the power LED goes out and restart your NES Mini.</value>
- </data>
<data name="DoneYouCanUpload" xml:space="preserve">
<value>Done! You can upload games to your NES Mini now.</value>
</data>
@@ -168,9 +165,6 @@
<data name="ExecutingCommand" xml:space="preserve">
<value>Executing command:</value>
</data>
- <data name="ExecutingFes1" xml:space="preserve">
- <value>Executing fes1...</value>
- </data>
<data name="FlasingCustom" xml:space="preserve">
<value>Flashing custom kernel...</value>
</data>
@@ -315,12 +309,6 @@
<data name="NotFound" xml:space="preserve">
<value>Not found:</value>
</data>
- <data name="ParticallyBody" xml:space="preserve">
- <value>Don't worry! Everything is fine. There are just too many ROMs to transfer at once. Please wait until power LED goes out, press OK and follow the instructions to continue.</value>
- </data>
- <data name="ParticallyTitle" xml:space="preserve">
- <value>Too many ROMs</value>
- </data>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="gamepad" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\images\gamepad.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
@@ -532,9 +520,6 @@
<data name="blank_n64" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\images\blank_n64.png;System.Drawing.Bitmap, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
- <data name="GameTooBig" xml:space="preserve">
- <value>Sorry, game "{0}" is too big.</value>
- </data>
<data name="MemoryFull" xml:space="preserve">
<value>Sorry, there are {0}MBytes of games, it's too much.</value>
</data>
diff --git a/SaveStateManager.Designer.cs b/SaveStateManager.Designer.cs
index 8eff560e..ee3c1689 100644
--- a/SaveStateManager.Designer.cs
+++ b/SaveStateManager.Designer.cs
@@ -141,6 +141,7 @@
this.listViewSaves.Name = "listViewSaves";
this.listViewSaves.UseCompatibleStateImageBehavior = false;
this.listViewSaves.View = System.Windows.Forms.View.Details;
+ this.listViewSaves.ColumnClick += new System.Windows.Forms.ColumnClickEventHandler(this.listViewSaves_ColumnClick);
this.listViewSaves.ItemMouseHover += new System.Windows.Forms.ListViewItemMouseHoverEventHandler(this.listViewSaves_ItemMouseHover);
this.listViewSaves.ItemSelectionChanged += new System.Windows.Forms.ListViewItemSelectionChangedEventHandler(this.listViewSaves_ItemSelectionChanged);
this.listViewSaves.KeyDown += new System.Windows.Forms.KeyEventHandler(this.listViewSaves_KeyDown);
diff --git a/SaveStateManager.cs b/SaveStateManager.cs
index 1f65f395..aa6b5521 100644
--- a/SaveStateManager.cs
+++ b/SaveStateManager.cs
@@ -1,6 +1,7 @@
using com.clusterrr.hakchi_gui.Properties;
using SevenZip;
using System;
+using System.Collections;
using System.Collections.Generic;
using System.Diagnostics;
using System.Drawing;
@@ -33,7 +34,6 @@ namespace com.clusterrr.hakchi_gui
MessageBox.Show(this, ex.Message, Resources.Error, MessageBoxButtons.OK, MessageBoxIcon.Error);
Close();
}
-
}
void LoadSaveStatesList()
@@ -109,7 +109,7 @@ namespace com.clusterrr.hakchi_gui
new ListViewItem.ListViewSubItem() { Name = "colSize", Text = size},
new ListViewItem.ListViewSubItem() { Name = "colFlags", Text = flags}
}, 0));
- listViewSaves.Sorting = SortOrder.Ascending;
+ listViewSaves.ListViewItemSorter = new SavesSorter(0, false);
listViewSaves.Sort();
}
listViewSaves.Visible = true;
@@ -395,5 +395,51 @@ namespace com.clusterrr.hakchi_gui
buttonDelete_Click(null, null);
}
}
+
+ private void listViewSaves_ColumnClick(object sender, ColumnClickEventArgs e)
+ {
+ listViewSaves.ListViewItemSorter = new SavesSorter(e.Column,
+ ((listViewSaves.ListViewItemSorter as SavesSorter).Column == e.Column &&
+ !(listViewSaves.ListViewItemSorter as SavesSorter).Reverse));
+ listViewSaves.Sort();
+ }
+
+ private class SavesSorter : IComparer
+ {
+ public readonly int Column;
+ public readonly bool Reverse;
+
+ public SavesSorter(int column, bool reverse)
+ {
+ Column = column;
+ Reverse = reverse;
+ }
+
+ public int Compare(object o1, object o2)
+ {
+ var l1 = o1 as ListViewItem;
+ var l2 = o2 as ListViewItem;
+ int r = Reverse ? -1 : 1;
+ try
+ {
+ switch (Column)
+ {
+ case 0:
+ default:
+ return l1.SubItems["colName"].Text.CompareTo(l2.SubItems["colName"].Text) * r;
+ case 1:
+ return l1.SubItems["colCode"].Text.CompareTo(l2.SubItems["colCode"].Text) * r;
+ case 2:
+ return (int.Parse(l1.SubItems["colSize"].Text.Replace("KB", "")) - int.Parse(l2.SubItems["colSize"].Text.Replace("KB", ""))) * r;
+ case 3:
+ return (l1.SubItems["colFlags"].Text.Length - l2.SubItems["colFlags"].Text.Length) * r;
+ }
+ }
+ catch
+ {
+ return 0;
+ }
+ }
+ }
}
}