Dick,

I admire in cleverness of all this, but the code is even worse to comprehend than assembly language. Seems to me we're going backwards. Can't we just keep things simple; like with put and get and meaningful names?

Seems to me we're defeating the whole purpose of Rev.

Just MHO,

Joe Wilkins

On May 26, 2007, at 11:37 AM, Dick Kriesel wrote:

On 5/26/07 3:51 AM, "David Bovill" <[EMAIL PROTECTED]> wrote:

I like the idea of being able to copy a template
into a stack and still refer to the object by its altID - so everything keeps working. The aim is not to have to rename anything in a script as this
gets messy in a general case.

But if I copy 10 versions to the same stack it won't work with altIDs
because they would all have the same id and as (unlike the case with normal ids) - you cant use a syntax like "group id 65535 of card 1" there is no way
to distinguish them without renaming them.

If you make ten copies of a template, you need to distinguish each of the ten somehow. Since you'd rather not rename them "copy1" through "copy10"
you can identify each copy in a custom property set of the object that
contains them.

<script>
function copyTemplate pTemplateName,pLibraryName,pTarget
  put the uTemplateCopies of pTarget into tTemplateCopies
  put the keys of tTemplateCopies into tKeys
  filter tKeys with pTemplateName,pLibraryName,"*"
  put number of lines in tKeys + 1 into tCopyNumber
  copy group pTemplateName of stack pLibraryName to pTarget
  set the uTemplate of it to pTemplateName,pLibraryName
  set the uCopies of group pTemplateName of stack pLibraryName to \
    the long id of it
  set the uTemplateCopies of pTarget to tTemplateCopies \
    & pTemplateName,pLibraryName,tCopyNumber & cr
  return tCopyNumber
end copyTemplate
</script>

Then each template knows its copies, each copy knows its template, and each target knows which copies of which templates it contains. Your code can refer to a control in any of the copies using an "of group id" clause to
disambiguate the altIDs.

<script>
  put the text of control id tAltID of group id \
the uTemplateCopies[tTemplateName,tLibraryName,tCopyNumber] of tTarget
</script>

Please note that the above code is a suggestion typed into an email, rather than tested code copied from a working app. Does the suggestion work for
you?  If you improve the code somehow, please share your results.

-- Dick


_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution

_______________________________________________
use-revolution mailing list
[email protected]
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-revolution

Reply via email to