Helpful Links - The Sort Command
GroupSort is a class-based lib to sort (arrange, alphabetize) multiple inter-related lists together using one of them as the base and others as it's properties. It's facilities & params are same as
Sort command. Since there was no other alternative available other than using a hidden Listview which will be very limited in features, I have created this.
GroupSort requires transferring lists separated by some common delimiter in an Object to the function.
So, you feed something like
[ parentlist, proplist1, proplist2, proplist3....] to the class
__New function and it returns you the Sorted lists based on the parent list ( which essentially should have an Index 1 in the Array ) in the below mentioned ways .
To return data in String form, you can use
Fetch method while to return data in Object form, you can use
See comments in the code to know more......
names = ( avi kshitij prasun doctor ) subjects = ( comp phe bio_bad bio_good ) places = ( r nag b sam b rod b nat ) Obj := [names, subjects, places] ;make a object Options := "U D`n" ;Sort / GroupSort options students := new GroupSort(Obj, Options) ;create a GroupSort object msgbox % students.fetch("1,2") "`n`n" students.fetch(3) ;Using fetch() , strings ;1,2 denote the columns retobj := students.Sort() ;Using Sort() , returns sorted thing in object (same like the way in which it was inserted) for k,v in retobj x .= v "`n`n" ;get each value stored in the object msgbox % x #Include GroupSort.ahk
The example is also included in GroupSort examples-based informative script (link below)
- A docu/manual will be released later.
- Find bugs (likely as it is the first version), please report !