Added max item count setting back, show filtered item count on window title

This commit is contained in:
Jaex 2018-08-01 15:23:32 +03:00
parent 63274f6482
commit 2e77647feb
2 changed files with 29 additions and 18 deletions

View file

@ -43,6 +43,7 @@ public partial class ImageHistoryForm : Form
private HistoryManager history;
private HistoryItemManager him;
private string defaultTitle;
public ImageHistoryForm(string historyPath, ImageHistorySettings settings, Action<string> uploadFile = null, Action<string> editImage = null)
{
@ -59,9 +60,16 @@ public ImageHistoryForm(string historyPath, ImageHistorySettings settings, Actio
him = new HistoryItemManager(uploadFile, editImage);
him.GetHistoryItems += him_GetHistoryItems;
defaultTitle = Text;
Settings.WindowState.AutoHandleFormState(this);
}
private void UpdateTitle(int total, int filtered)
{
Text = $"{defaultTitle} (Total: {total.ToString("N0")} - Filtered: {filtered.ToString("N0")})";
}
private void RefreshHistoryItems()
{
SearchText = tstbSearch.Text;
@ -79,13 +87,30 @@ private void RefreshHistoryItems()
private IEnumerable<HistoryItem> GetHistoryItems()
{
List<HistoryItem> historyItems = history.GetHistoryItems();
IEnumerable<HistoryItem> filteredHistoryItems = historyItems.Where(hi => !string.IsNullOrEmpty(hi.Filepath) && Helpers.IsImageFile(hi.Filepath)).Reverse();
List<HistoryItem> filteredHistoryItems = new List<HistoryItem>();
if (!string.IsNullOrEmpty(SearchText))
int itemCount = 0;
for (int i = historyItems.Count - 1; i >= 0; i--)
{
filteredHistoryItems = filteredHistoryItems.Where(hi => Helpers.GetFilenameSafe(hi.Filepath).Contains(SearchText, StringComparison.InvariantCultureIgnoreCase));
HistoryItem hi = historyItems[i];
if (!string.IsNullOrEmpty(hi.Filepath) && Helpers.IsImageFile(hi.Filepath) &&
(string.IsNullOrEmpty(SearchText) || Helpers.GetFilenameSafe(hi.Filepath).Contains(SearchText, StringComparison.InvariantCultureIgnoreCase)))
{
filteredHistoryItems.Add(hi);
itemCount++;
if (Settings.MaxItemCount > 0 && itemCount >= Settings.MaxItemCount)
{
break;
}
}
}
UpdateTitle(historyItems.Count, itemCount);
return filteredHistoryItems;
}
@ -155,6 +180,7 @@ private void tsbSettings_Click(object sender, EventArgs e)
ilvImages.View = (View)Settings.ViewMode;
ilvImages.ThumbnailSize = Settings.ThumbnailSize;
RefreshHistoryItems();
}
private void ilvImages_KeyDown(object sender, KeyEventArgs e)

View file

@ -234,21 +234,6 @@
<data name="tss1.Size" type="System.Drawing.Size, System.Drawing">
<value>6, 25</value>
</data>
<data name="tsbSettings.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAIDSURBVDhPpZLrS5NhGMb3j4SWh0oRQVExD4gonkDpg4hG
YKxG6WBogkMZKgPNCEVJFBGdGETEvgwyO9DJE5syZw3PIlPEE9pgBCLZ5XvdMB8Ew8gXbl54nuf63dd9
0OGSnwCahxbPRNPAPMw9Xpg6ZmF46kZZ0xSKzJPIrhpDWsVnpBhGkKx3nAX8Pv7z1zg8OoY/cITdn4fw
bf/C0kYAN3Ma/w3gWfZL5kzTKBxjWyK2DftwI9tyMYCZKXbNHaD91bLYJrDXsYbrWfUKwJrPE9M2M1Oc
VzOOpHI7Jr376Hi9ogHqFIANO0/MmmmbmSmm9a8ze+I4MrNWAdjtoJgWcx+PSzg166yZZ8xM8XvXDix9
c4jIqFYAjoriBV9AhEPv1mH/sonogha0afbZMMZz+yreTGyhpusHwtNNCsA5U1zS4BLxzJIfg299qO32
Ir7UJtZfftyATqeT+8o2D8JSjQrAJblrncYL7ZJ2+bfaFnC/1S1NjL3diRat7qrO7wLRP3HjWsojBeCo
mDEo5mNjuweFGvjWg2EBhCbpkW78htSHHwRyNdmgAFzPEee2iFkzayy2OLXzT4gr6UdUnlXrullsxxQ+
kx0g8BTA3aZlButjSTyjODq/WcQcW/B/Je4OQhLvKQDnzN1mp0nnkvAhR8VuMzNrpm1mpjgkoVwB/v8D
TgDQASA1MVpwzwAAAABJRU5ErkJggg==
</value>
</data>
<data name="tsbSettings.ImageTransparentColor" type="System.Drawing.Color, System.Drawing">
<value>Magenta</value>
</data>