Hello all !!
I've got a problem with the following code :
procedure TfMain.lvPackageListColumnClick(Sender: TObject; Column:
TListColumn);
begin
if Column.Index = FLastSortedColumn then
FAscending := not FAscending
else
FLastSortedColumn := Column.Index;
lvPackageList.SortColumn := Column.Index;
end;
procedure TfMain.lvPackageListCompare(Sender: TObject; Item1, Item2:
TListItem;
Data: Integer; var Compare: Integer);
begin
case Data of
0: Compare := AnsiCompareText(Item1.Caption, Item2.Caption); //pkgname
1: Compare := CompareVersion(Item1.SubItems[0], Item2.SubItems[0]);
//installed version
2: Compare := CompareVersion(Item1.SubItems[1], Item2.SubItems[1]); //last
version
3: Compare := CompareInstSize(Item1.Caption, Item2.Caption); //installed
size
4: Compare := CompareDefSize(Item1.Caption, Item2.Caption); //pkgsize
5: Compare := AnsiCompareText(Item1.SubItems[4], Item2.SubItems[4]);
//description
end;
if not FAscending then
Compare := -Compare;
end;Whatever the column I'm clicking on it's always sorting the first column. I do really not understand what's wrong. All the functions I've made giving Compare its value returns correctly 1 if Itme1 > Item2, 0 if equal and -1 if Item1 < Item2.
Thanks for any help.
