mirror of
https://github.com/ShareX/ShareX.git
synced 2024-10-01 09:47:22 +13:00
Added MinBy extension
This commit is contained in:
parent
c0bc66f293
commit
83586c6440
2 changed files with 36 additions and 2 deletions
|
@ -811,5 +811,40 @@ public static void ChangeFontStyle(this Control control, FontStyle fontStyle)
|
|||
{
|
||||
control.Font = new Font(control.Font, fontStyle);
|
||||
}
|
||||
|
||||
public static T MinBy<T>(this IEnumerable<T> source, Func<T, IComparable> selector)
|
||||
{
|
||||
if (source == null)
|
||||
{
|
||||
throw new ArgumentNullException(nameof(source));
|
||||
}
|
||||
|
||||
if (selector == null)
|
||||
{
|
||||
throw new ArgumentNullException(nameof(selector));
|
||||
}
|
||||
|
||||
return source.Aggregate((min, cur) =>
|
||||
{
|
||||
if (min == null)
|
||||
{
|
||||
return cur;
|
||||
}
|
||||
|
||||
IComparable minComparer = selector(min);
|
||||
if (minComparer == null)
|
||||
{
|
||||
return cur;
|
||||
}
|
||||
|
||||
IComparable curComparer = selector(cur);
|
||||
if (curComparer == null)
|
||||
{
|
||||
return min;
|
||||
}
|
||||
|
||||
return minComparer.CompareTo(curComparer) > 0 ? cur : min;
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
|
@ -23,7 +23,6 @@ You should have received a copy of the GNU General Public License
|
|||
|
||||
#endregion License Information (GPL v3)
|
||||
|
||||
using Microsoft.Win32;
|
||||
using ShareX.HelpersLib;
|
||||
using ShareX.Properties;
|
||||
using ShareX.UploadersLib;
|
||||
|
@ -66,7 +65,7 @@ public static string VersionText
|
|||
StringBuilder sbVersionText = new StringBuilder();
|
||||
Version version = Version.Parse(Application.ProductVersion);
|
||||
sbVersionText.Append(version.Major + "." + version.Minor);
|
||||
if (version.Build > 0) sbVersionText.Append("." + version.Build);
|
||||
if (version.Build > 0 || version.Revision > 0) sbVersionText.Append("." + version.Build);
|
||||
if (version.Revision > 0) sbVersionText.Append("." + version.Revision);
|
||||
if (Dev) sbVersionText.Append(" Dev");
|
||||
if (Portable) sbVersionText.Append(" Portable");
|
||||
|
|
Loading…
Reference in a new issue