Terrible RunRev Bug? - Was Weirdness Passing Messages

David Burgun dburgun at dsl.pipex.com
Mon Mar 27 09:51:36 EST 2006


On 27 Mar 2006, at 14:03, Mark Waddingham wrote:
> Try ensuring that the 'sharedText' property of your target fields  
> are set to true.
> If the sharedText is false, the field stores and retrieves its data  
> from a card-local store, rather than its private store. Since  
> 'sending' a message only changes the default stack and not the  
> current card of that stack, the active card store will be the card  
> you aren't expecting.
> Warmest Regards,
> Mark.

I tried this in a Test Stack and setting the sharedText property does  
indeed make it work. However I am a bit confused as to what the  
sharedText property actually does. In my test script (which I can  
send to you if you like), I have a field that is not in a group. From  
reading about the property in the 2.6.6 dictionary it seems to  
suggest if it is set true that changing the text means that it  
changes in all cards that have the field defined. I can understand  
this if the group is a background group (and would be what I wanted  
anyway), but not if the field is not in a group or if it's in a non- 
background group.

Also I have just changed a load of occurrences of:

put <something>  into me


set the text of me to <something>

to read:

set the text of the long id of me to <something>

and was planning on using the later syntax from now on. However the  
former syntax is way more readable but I really don't want to have to  
go through all this again, so what would you recommend?

Thanks a lot
All the Best

 From the Dictionary:

sharedText property  (field)

Platform support:
Introduced in version 1.0

Specifies whether a grouped field's text is the same on all cards  
with that group.

set the sharedText of field to {true | false}

set the sharedText of field "Section Marker" to true

See also: dontSearch property, sharedHilite property, How do I  
display the same text on multiple cards?

Use the sharedText property to create labels or other fields with  
static text (the same on all cards where the field appears).

The sharedText of a field is true or false.

By default, the sharedText property of newly created fields is set to  

If a field's sharedText property is set to true, the content of that  
field is the same on all cards where the field appears. Changing the  
text on one card changes it on all the cards.

If the field's sharedText is false, it can have different text on  
each card where it appears, and changing the field's text changes it  
only on the current card.

If the field is a card field (not part of a group), its sharedText  
property has no effect.

More information about the Use-livecode mailing list