2020-03-05 12:59:43 +00:00
|
|
|
|
///
|
2021-11-13 04:34:17 +00:00
|
|
|
|
/// Copyright (c) 2019-2021 Sensus Slovensko a.s.
|
2020-03-05 12:59:43 +00:00
|
|
|
|
///
|
|
|
|
|
|
using System;
|
|
|
|
|
|
using System.Collections;
|
|
|
|
|
|
using System.Windows.Forms;
|
|
|
|
|
|
|
2022-01-06 18:25:56 +00:00
|
|
|
|
namespace Common.Forms
|
2020-03-05 12:59:43 +00:00
|
|
|
|
{
|
|
|
|
|
|
public class LviDateTimeColumnComparer : IComparer
|
|
|
|
|
|
{
|
|
|
|
|
|
int column;
|
2021-11-13 04:34:17 +00:00
|
|
|
|
MySortOrder order;
|
2020-03-05 12:59:43 +00:00
|
|
|
|
|
|
|
|
|
|
public LviDateTimeColumnComparer()
|
|
|
|
|
|
{
|
|
|
|
|
|
column = 0;
|
2021-11-13 04:34:17 +00:00
|
|
|
|
order = MySortOrder.Ascending;
|
2020-03-05 12:59:43 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
2021-11-13 04:34:17 +00:00
|
|
|
|
public LviDateTimeColumnComparer(int column, MySortOrder order)
|
2020-03-05 12:59:43 +00:00
|
|
|
|
{
|
|
|
|
|
|
this.column = column;
|
|
|
|
|
|
this.order = order;
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
public int Compare(object x, object y)
|
|
|
|
|
|
{
|
|
|
|
|
|
DateTime valX = DateTime.Parse(((ListViewItem)x).SubItems[column].Text);
|
|
|
|
|
|
DateTime valY = DateTime.Parse(((ListViewItem)y).SubItems[column].Text);
|
|
|
|
|
|
|
|
|
|
|
|
if (valX == valY)
|
|
|
|
|
|
{
|
|
|
|
|
|
return 0;
|
|
|
|
|
|
}
|
2021-11-13 04:34:17 +00:00
|
|
|
|
else if ((order == MySortOrder.Descending || order == MySortOrder.Descending2))
|
2020-03-05 12:59:43 +00:00
|
|
|
|
{
|
2021-11-13 04:34:17 +00:00
|
|
|
|
return (valY > valX) ? 1 : -1;
|
2020-03-05 12:59:43 +00:00
|
|
|
|
}
|
|
|
|
|
|
else
|
|
|
|
|
|
{
|
2021-11-13 04:34:17 +00:00
|
|
|
|
return (valX > valY) ? 1 : -1;
|
2020-03-05 12:59:43 +00:00
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
}
|