On 12/30/10 5:13 AM, David Bovill wrote:
What i did not get is that what is happening
here is such a hack, that is there are two important concepts / behaviors of
backgrounds:

    1. It is shared across many cards and changing a property of one changes
    the property of all ie they are the same object and have the smae id)
    2. The message path is different

These seem however not to be linked, or related directly to the various
built in functions ie  backgroundbehavior / backgroundnames / backgroundids
- so in the examples mentioned in previous posts you can have a background
shared across serveral cards that has it' background behavior turned off and
therefore does not show up in the backgroundnames / backgroundids. This is
problematic in the handlers I am writing now - as I want to know whether to
export the background or not, so I can;t rely on any of the built in
functions.

You can place any group on a card, regardless of its backgroundBehavior. All of the background* functions return only those groups with backgroundBehavior set, whether or not the group is placed on the current card. It is unusual to assign a group backgroundBehavior and then turn it off again, but when you do that I believe the group's position in the message hierarchy will change and it will behave as a card group again. Because the group is placed on several cards, changes to it anywhere will reflect across all cards that contain the group. BackgroundBehavior doesn't affect whether changes populate across cards; if the ID matches, it's the same group.

You don't need to worry about backgroundBehavior when checking groups for export. Just get "the number of groups" or "the groupnames of this card" and export them all. Those that are shared across other cards will still be in the list regardless of their backgroundBehavior setting.

If instead you want to avoid exporting any background groups, then as you repeat through the list, check the group's backgroundBehavior and skip those where it's true.

--
Jacqueline Landman Gay         |     jac...@hyperactivesw.com
HyperActive Software           |     http://www.hyperactivesw.com

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

Reply via email to