@@ -715,23 +715,31 @@ public override void SortDescriptorsChanged(NSTableView tableView, NSSortDescrip
715
715
case "titleName" :
716
716
return string . Compare ( x . titleName , y . titleName ) * ( sortDescriptor . Ascending ? 1 : - 1 ) ;
717
717
case "displayVersion" :
718
- return string . Compare ( x . displayVersion , y . displayVersion ) * ( sortDescriptor . Ascending ? 1 : - 1 ) ;
718
+ if ( ! Version . TryParse ( x . displayVersion , out Version verx ) )
719
+ {
720
+ verx = new Version ( ) ;
721
+ }
722
+ if ( ! Version . TryParse ( y . displayVersion , out Version very ) )
723
+ {
724
+ very = new Version ( ) ;
725
+ }
726
+ return verx . CompareTo ( very ) * ( sortDescriptor . Ascending ? 1 : - 1 ) ;
719
727
case "version" :
720
- return ( int ) ( ( x . version - y . version ) * ( sortDescriptor . Ascending ? 1 : - 1 ) ) ;
728
+ return x . version . CompareTo ( y . version ) * ( sortDescriptor . Ascending ? 1 : - 1 ) ;
721
729
case "latestVersion" :
722
- return ( int ) ( ( x . latestVersion - y . latestVersion ) * ( sortDescriptor . Ascending ? 1 : - 1 ) ) ;
730
+ return x . latestVersion . CompareTo ( y . latestVersion ) * ( sortDescriptor . Ascending ? 1 : - 1 ) ;
723
731
case "systemUpdate" :
724
- return ( int ) ( ( x . systemUpdate - y . systemUpdate ) * ( sortDescriptor . Ascending ? 1 : - 1 ) ) ;
732
+ return x . systemUpdate . CompareTo ( y . systemUpdate ) * ( sortDescriptor . Ascending ? 1 : - 1 ) ;
725
733
case "systemVersion" :
726
- return ( int ) ( ( x . systemVersion - y . systemVersion ) * ( sortDescriptor . Ascending ? 1 : - 1 ) ) ;
734
+ return x . systemVersion . CompareTo ( y . systemVersion ) * ( sortDescriptor . Ascending ? 1 : - 1 ) ;
727
735
case "applicationVersion" :
728
- return ( int ) ( ( x . applicationVersion - y . applicationVersion ) * ( sortDescriptor . Ascending ? 1 : - 1 ) ) ;
729
- case "masterkeyString " :
730
- return string . Compare ( x . masterkeyString , y . masterkeyString ) * ( sortDescriptor . Ascending ? 1 : - 1 ) ;
736
+ return x . applicationVersion . CompareTo ( y . applicationVersion ) * ( sortDescriptor . Ascending ? 1 : - 1 ) ;
737
+ case "masterkey " :
738
+ return x . masterkey . CompareTo ( y . masterkey ) * ( sortDescriptor . Ascending ? 1 : - 1 ) ;
731
739
case "filename" :
732
740
return string . Compare ( x . filename , y . filename ) * ( sortDescriptor . Ascending ? 1 : - 1 ) ;
733
741
case "filesize" :
734
- return ( int ) ( ( x . filesize - y . filesize ) * ( sortDescriptor . Ascending ? 1 : - 1 ) ) ;
742
+ return x . filesize . CompareTo ( y . filesize ) * ( sortDescriptor . Ascending ? 1 : - 1 ) ;
735
743
case "typeString" :
736
744
return string . Compare ( x . typeString , y . typeString ) * ( sortDescriptor . Ascending ? 1 : - 1 ) ;
737
745
case "distribution" :
0 commit comments