Put data in lines
Camm29
Camm29 at tesco.net
Sun May 6 14:43:08 EDT 2007
Hi .
Had it working , sort of !
When data for a given line stops changing , the old original value appears ?
Then I found i'd missed "put it into currDataArr"
Now with "put it into currDataArr" the old unchanging data lines vanish
with only the new changing data lines displayed !
Trying to do the following ,
The first data received is always 999 lines with data , from then only lines
with changing data is received.
I always need to display the 999 lines of received data , with updating data
for given lines received.
Also when receiving data , It's not possible to move the Scrollbar ?
Thanks in advance !!
Regards
Camm
----- Original Message -----
From: "Jim Ault" <JimAultWins at yahoo.com>
To: "How to use Revolution" <use-revolution at lists.runrev.com>
Sent: Saturday, May 05, 2007 7:18 PM
Subject: Re: Put data in lines
Pretty simple if you use an array.
Lookup Union in the docs and it is a one-liner
Use the 'union' command to combine two arrays, eliminating duplicate
elements.
you may have to play with the union command to get it just right (not
checked)
script goes something like this...
----------
local currDataArr
put incomingStr into incmgArr
split incmgArr by ":" and "=" --it is now an array
get currDataArr
union it with incmgArr
combine it by cr and space -- (or tab, if you prefer)
put it into currDataArr --local var that will keep this value
--the local var is faster than reading the field into a var
sort it by word 1 numeric of each
put it into fld display
--------------------------
Jim Ault
Las Vegas
On 5/5/07 10:58 AM, "Camm29" <Camm29 at tesco.net> wrote:
> Thanks ,
> Jim , Björnke and Mark for your comments and solution.
>
> It's work great and fast !
>
> One issue is that the next data string received may be longer or shorter ,
> but it still must appear in the correct line !
> (the system only sends changed data for a given line)
>
> So , first 999 lines could be sent , then only 2 lines.
> 999 lines of data need to stay displayed then only 2 lines data to change
!
>
> the line number is before the =
> the data is after the =
>
> Regards
> Camm
>
> ----- Original Message -----
> From: "Jim Ault" <JimAultWins at yahoo.com>
> To: "How to use Revolution" <use-revolution at lists.runrev.com>
> Sent: Saturday, May 05, 2007 5:56 PM
> Subject: Re: Put data in lines
>
>
>> A problems with using arrays like that is that i will shuffle the lines
>> around somewhat randomly. Also note that my approach is about 7 times
>> faster (not sure if it's the itemDelimiter stuff, or the array handling
>> itself that is slower).
>
> I find that the array method as shown by Mark will work a bit faster than
> the replace delimeters method, but you have to use a data list of about
> 10,000 to see the difference. At 50000 lines of data, the replace takes
> 9-10 ticks, and the array method takes 6-7 ticks. At 4000 lines, both
will
> show 0 ticks elapsed, which means less than half a tick. Tick is about
> 1/60th of a second.
>
> Mac G5 Duo, Rev 2.7.2 build 261
>
> Jim Ault
> Las Vegas
>
>
> On 5/5/07 9:28 AM, "Björnke von Gierke" <bvg at mac.com> wrote:
>
>> I always found arrays to be confusing, that's why I prefer this method :
>>
>> on mouseUp
>> put "Arb.rec:0=234:1=456789:2=657483:3=4:4=3456473:5=1:6=0: " & CRLF
>> into x
>> replace ":" with return in x
>> replace "=" with space in x
>> put line 2 to -2 of x
>> end mouseUp
>>
>> A problems with using arrays like that is that i will shuffle the lines
>> around somewhat randomly. Also note that my approach is about 7 times
>> faster (not sure if it's the itemDelimiter stuff, or the array handling
>> itself that is slower).
>>
>> have fun
>> Björnke
>>
>> On 05 May 2007, at 16:46, Mark Smith wrote:
>>
>>> This works for the given string, and should be quick even with 999
>>> values:
>>>
>>> on mouseUp
>>> put "Arb.rec:0=234:1=456789:2=657483:3=4:4=3456473:5=1:6=0: " & CRLF
>>> into tRec
>>> set the itemDelimiter to ":"
>>> delete item 1 of tRec
>>> delete item -1 of tRec
>>>
>>> split tRec by ":" and "="
>>> combine tRec by cr and space -- (or tab, if you prefer)
>>> put tRec
>>> end mouseUp
>>>
>>> Best,
>>>
>>> Mark
>>>
>>> On 5 May 2007, at 11:18, Camm29 wrote:
>>>
>>>> Hi ,
>>>>
>>>> I'm using read from socket
>>>>
>>>> example reply , can be max 999 values.
>>>>
>>>>
>>>> Arb.rec:0=234:1=456789:2=657483:3=4:4=3456473:5=1:6=0: CRLF
>>>>
>>>> I wish to display in a updating field with the values shown as ,
>>>>
>>>> 0 234
>>>> 1 456789
>>>> 2 657483
>>>> 3 4
>>>> 4 3456473
>>>> 5 1
>>>> 6 0
>>>>
>>>> I must be missing something , i used a repeat but its very slow on
>>>> updating ?
>>>>
>>>> Thanks in advance
>>>> Camm
>
>
> _______________________________________________
> use-revolution mailing list
> use-revolution at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
subscription
> preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution
>
>
> --
> No virus found in this incoming message.
> Checked by AVG Free Edition.
> Version: 7.5.446 / Virus Database: 269.6.2/785 - Release Date: 02/05/2007
> 14:16
>
>
>
> _______________________________________________
> use-revolution mailing list
> use-revolution at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
subscription
> preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution
_______________________________________________
use-revolution mailing list
use-revolution at lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution
--
No virus found in this incoming message.
Checked by AVG Free Edition.
Version: 7.5.446 / Virus Database: 269.6.2/785 - Release Date: 02/05/2007
14:16
More information about the use-livecode
mailing list