hi,

 -- Jan Schenkels solution:
##
local sLineCount, sCurrentLine

on mouseUp
    put 0 into sCurrentLine
    put the number of lines in field 1 into sLineCount
    put the millisec into tStart
    sort field 1 by ReverseOrder()
    put the millisec - tStart
end mouseUp

function ReverseOrder
    add 1 to sCurrentLine
    return sLineCount - sCurrentLine
end ReverseOrder
##

I tried this on field with 10 lines filled with number from 1 to 10, it
works and is fast.

I then tried it with a field filled with 100000 line filled with numbers
00001 to 99999

then it does not work correctly. Since I dont even understand the syntax in
the first place I have no idea why.

on the 100000 lines once the last lines are:

00020
90001
00019
00018
00017
00016
00015
00014
00013
00012
00011
00010
90000
00009
00008
00007
00006
00005
00004
00003
00002
00001

While Mark Schonewilles solution:

on mouseUp pMouseBtnNo
    put the millisec into tStart
    put field 1 into temp
    put reverseList(temp) into temp2
    put temp2 into field 1
    put the millisec - tStart
end mouseUp

function reverseList theListArray
    split theListArray by cr
    --   put the keys of theListArray
    combine theListArray by cr and tab
    sort lines of theListArray numeric descending by item 1 of each
    split theListArray by column
    return theListArray[2]
end reverseList
--

on the same list in the field works for small and large number of lines and
repeatedly and  still is very fast (580 msec) on a MacBook Pro 2.33

I didnt try where the cutoff for correct results in Jans function is.
 I thought just to mention the problem because it might not be so obvious
for lists that are not easily checked for consistency

and thanks for these functions, I always enjoy the discussions on the list

regards

Bernd

-- 
View this message in context: 
http://www.nabble.com/Reversing-a-list-tp16466585p16467477.html
Sent from the Revolution - User mailing list archive at Nabble.com.

_______________________________________________
use-revolution mailing list
use-revolution@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution

Reply via email to