AdvancedLogParser.ListViewItemComparer.Compare C# (CSharp) Method

Compare() public method

public Compare ( object x, object y ) : int
x object
y object
return int
        public int Compare(object x, object y)
        {
            int xInt;
            int yInt;
            float xFloat;
            float yFloat;
            if (Int32.TryParse(((ListViewItem)x).SubItems[col].Text, out xInt))
            {
                int.TryParse(((ListViewItem)y).SubItems[col].Text, out yInt);
                return (rev) ? xInt.CompareTo(yInt) : xInt.CompareTo(yInt) * -1;
            }
            else if (float.TryParse(((ListViewItem)x).SubItems[col].Text, out xFloat))
            {
                float.TryParse(((ListViewItem)y).SubItems[col].Text, out yFloat);
                return (rev) ? xFloat.CompareTo(yFloat) : xFloat.CompareTo(yFloat) * -1;
            }
            else
            {
                if (!rev)
                    return String.Compare(((ListViewItem)x).SubItems[col].Text, ((ListViewItem)y).SubItems[col].Text);
                else
                    return String.Compare(((ListViewItem)y).SubItems[col].Text, ((ListViewItem)x).SubItems[col].Text);
            }
        }
    }