Grouping with lists in a script
Wilhelm Sanke
sanke at hrz.uni-kassel.de
Sun Mar 9 05:21:00 EST 2003
On Sat, 08 Mar 2003 Chipp Walters wrote:
> Hi William,
>
> You can either create the objectList by selecting the objects you wish to
> group, then issuing the single command "group" as in..
>
> on mouseUp
> select control 1 and control 2
> group
> end mouseUp
>
> or if you don't want to select, you can use the 'and' concatenator as in..
>
> on mouseUp
> group control 1 and control 2 and control 3
> end mouseUp
>
> -Chipp
>
Hi Chipp,
Thanks very much for the response, but what you suggest is exactly what
I tried to *avoid* because of the great number of controls.
I had the understanding that the "list"-option of the group command was
an option to automate the tedious process to concatenate manually a
huge number of crontols in the script editor.
This is what the Metatalk Reference says:
"Syntax: "group <c>"
where "<c> stands for a list, explained by an if-statement:
"If a list of controls is supplied, those controls will be added to
the new group."
If "list" here would just mean the concatenated sequence of controls
names or numbers in a script - explicitly written down one after the
other -, this extra option would be meaningless.
I tried to put the contatenated sequence of control names into a
variable "fieldlist" by means of a repeat loop.
Then, "group fieldlist" - both with an "and"-sequence as you suggested
and a vertical order of controls as lines - only produced errors.
What finally worked, as I already indicated, was to put "group" as the
first word into the repeat-loop generated variable "fieldlist" and then
put the "do"-command before the variable with the script:
"put "group"&&the name of fld 1 into Fieldlist
repeat with i = 2 to 100
put Space&"and"&&the name of fld i after last word of Fieldlist
end repeat
do Fieldlist" .-
The question remains, is there a special structure for the "list"-option
or is the information of the MetaTalk Reference merely tautological,
i.e. repeating in a fuzzy way what already had been stated?
If the latter is the case then the sentence:
"If a list of controls is supplied, those controls will be added to
the new group."
would indeed be superfluous and misleading.
Thanks and regards,
Wilhelm
group <c>
>
> Description:
>
> The group comand makes a set of selected controls into a
> group/background.
> If a list of controls is supplied, those controls will be added to
> the new group."
==================================
Although there is a workaround (see the quotation below), I am still
curious to know how to produce a "list" as in
"group <c>" of the Metatalk Reference, where <c> stands for a list of
controls.
The Revolution Transcript Dictionary, which sometimes gives more
detailed information about matters of usage, does not mention the option
to use "group" with a list.
Well, anybody out there that has an idea?
Thanks in advance,
Wilhelm Sanke
On Tuesday, March 4th, I wrote:
> Subject: Grouping with lists in a script
>
> I needed to make a greater number of controls into a group by script.
>
> MetaTalk Reference (182) provides this information:
>
> "Syntax:
>
> group <c>
>
> Description:
>
> The group comand makes a set of selected controls into a
> group/background.
> If a list of controls is supplied, those controls will be added to
> the new group."
>
>
> I tried various forms of "lists" and put them into a variable
> "fieldlist", but then
>
> "group fieldlist" failed each time.
>
> Two forms of lists I tried - generated in a repeat-loop - were
>
> "fld 1
> fld 2
> fld 3
> ...."
>
> and
>
> "fld 1 and fld 2 and fld 3......".
>
> What finally worked after some experimenting was using the "do"
> command, like in
>
> "put "group"&&the name of fld 1 into Fieldlist
> repeat with i = 2 to 100
> put Space&"and"&&the name of fld i after last word of Fieldlist
> end repeat
> do Fieldlist"
>
> What am I missing in setting up the list structure for using the
> information about grouping in the MetaTalk Reference?
>
>
> Regards,
>
> Wilhelm Sanke
>
>
More information about the metacard
mailing list