I haven’t been following this thread closely but the goal is to get the id and/or name of the card on which a controls sits, yes? If so, wouldn’t the following 2 functions work?
# pObj is a long id control reference function cardOwnerID pObj set the wholeMatches to true return char offset("card id",pObj) to -1 of pObj end cardOwnerID function cardOwnerName pObj return short name of cardOwnerID(pObj) end cardOwnerName Admittedly, the cardOwnerID function could fail if a control was located within a nested group that was explicitly named “card id” but. . . Regards, Scott Rossi Creative Director Tactile Media, UX/UI Design On Dec 8, 2014, at 10:54 AM, Geoff Canyon <gcan...@gmail.com> wrote: > On Sun, Dec 7, 2014 at 7:47 AM, Geoff Canyon <gcan...@gmail.com> wrote: > >> If the object in question is inside a group, you'd have to recurse your >> way out, or you could use: >> >> put word -5 to -1 of the long id of btn 1 >> >> or if you prefer: >> >> put word -5 to -1 of the long name of btn 1 >> >> (the second would use the name of the card) for just the stack use: >> >> put word -2 to -1 of the long id of btn 1 >> > > I wasn't thinking about substacks (durhh). I also didn't account for the > different number of words in a card name if the card has a name vs. just an > id. So if you want a reference to the containing stack (meaning the > substack if there is one) then you'd need: > > function owningStack pID > if word -5 of pID is "stack" then return word -5 to -1 of pID else return > word -2 to -1 of pID > end owningStack > > For the card id: > > function owningCardID pID > if word -5 of pID is "stack" then return word -9 to -1 of pID else return > word -6 to -1 of pID > end owningCardID > > And for the card name: > > function owningCardName pID > if word -5 of pID is "stack" then put -8 into S else put -5 into S > if word S of pID is "id" then return word S-1 to -1 of pID else return > word S to -1 of pID > end owningCardName > _______________________________________________ > 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 _______________________________________________ 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