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