the inverse of the "owner" property; anomaly in dictionary entry

Dick Kriesel dick.kriesel at mail.com
Wed Oct 12 03:04:02 EDT 2005


On 10/10/05 8:24 PM, "Dick Kriesel" <dick.kriesel at mail.com> wrote:

> The property works for me, but does anyone see trouble with it?

Well, not that it's a hot topic, but yes, I do.  The function ignores the
backgrounds that a stack owns after they're removed from cards.

A revised version follows below.  But first: an anomaly in the Transcript
dictionary.  The entry for property "the backgroundNames" states:

The backgroundNames is the list of all backgrounds in the stack whose
backgroundBehavior property is set to true, whether they appear on the
current card or not.

While trying to see where removed groups go, I tried this:
1. create a new stack
2. create a group
3. check the group's properties to make sure its backgroundBehavior is off
4. remove the group from the card
5. check the backgroundNames of the stack to see that the group is there,
   contrary to what the dictionary says

Incidentally, placing the group back onto the card to check its
backgroundBehavior again shows it's off.

So a BugZilla entry seems appropriate.  Any comment, anyone?

-- Dick


postscript: (pun intended)

getProp ownees
  if first word of the target is "stack" then
    repeat for each line tSubstack in the substacks of the target
      put the name of stack tSubstack & return after tOwnees
    end repeat
    repeat for each line tGroup in the backgroundNames of the target
      if first word of the owner of bg tGroup is "stack" then
        put the name of bg tGroup & return after tOwnees
      end if
    end repeat
    put the cardNames of the target after tOwnees
  else
    put abbr id of the target into tOwner
    repeat with i = 1 to number of controls in tOwner
      if abbr id of the owner of control i of tOwner is tOwner then
        put name of control i of tOwner & return after tOwnees
      end if
    end repeat
    delete last char of tOwnees
  end if
  return tOwnees
end ownees







More information about the use-livecode mailing list