Thank you. Classroot worked, just what I needed. 

Gary T. Schultz
IT Administrator
Wisconsin Dept. of Commerce
608-266-1283
[EMAIL PROTECTED]


-----Original Message-----
From: John Sundman [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, January 03, 2007 7:11 AM
To: P T Withington
Cc: Schultz, Gary - COMM; '[email protected]'
Subject: Re: [Laszlo-user] Need to pass variables to animator in
animatorgroup

Classroot is explained here:

http://www.openlaszlo.org/lps/docs/guide/class-inheritance.html#d0e17365

Thanks,

jrs

On Jan 2, 2007, at 11:23 PM, P T Withington wrote:

> I think you want to learn about `classroot`, but I can't find it in 
> the doc just now.
>
> On 2007-01-02, at 16:19 EST, Schultz, Gary - COMM wrote:
>
>> I have a class that extends window and uses two states to maximize 
>> and minimize windows using animatorgroups. I need to pass variables 
>> to both an x animator and y animator in the minimize animatorgroup. 
>> Nothing has worked, and this also affects the maximize animatorgroup. 
>> I have tried the following without success:
>>
>> parent.variable
>> parent.parent.variable
>> classinstance.variable
>> classinstance.method()
>>
>> The code follows. Any ideas are greatly appreciated.
>>
>> Gary T. Schultz
>> Wisconsin Department of Commerce
>>
>> ================= Code =================
>>
>> <?xml version="1.0" encoding="UTF-8" ?> <library>
>>
>>  <tabslider width="${canvas.width*.22}" x="10" y="20" height="200"
>>   spacing="2" slideduration="300">
>>   <tabelement name="one" text="Tabelement One" />
>>   <tabelement name="two" text="Tabelement Two" />
>>   <tabelement name="three" text="Tabelement Three">
>>    <text text="${gts[1].myX}" />
>>   </tabelement>
>>  </tabslider>
>>
>>  <class extends="window" name="myClass" width="${(canvas.width*.25)}"
>>   height="${size}" allowdrag="false" showhandcursor="false"
>>   haswindowfocus="true">
>>   <attribute name="myX" value=".25" />
>>   <attribute name="size" value="${(canvas.height*.30)}" />
>>
>>   <state name="max" apply="false">
>>    <animatorgroup duration="2000" process="simultaneous">
>>
>>     <animator attribute="width" to="${(canvas.width*.35)}" />
>>     <animator attribute="height"
>>      to="${(canvas.height*.40)}" />
>>     <animator attribute="x" to="${canvas.width*.5}" />
>>     <animator attribute="y" to="${canvas.height*.5}" />
>>
>>    </animatorgroup>
>>    <text align="center" y="20%">M a x i m i z e d</text>
>>    <button placement="title_area" align="right" height="16">
>>     <attribute name="isMax" value="true" />
>>     <handler name="onclick">
>>      if (this.isMax) { parent.max.remove();
>>      parent.min.apply(); } else { parent.max.apply();
>>      parent.min.remove(); } this.isMax = !this.isMax;
>>     </handler>
>>     <attribute name="text" value="Minimize Window" />
>>    </button>
>>   </state>
>>   <state name="min" apply="true">
>>
>>    <animatorgroup duration="2000" process="simultaneous">
>>     <animator attribute="width" to="${(canvas.width*.25)}" />
>>     <animator attribute="height"
>>      to="${(canvas.height*.30)}" />
>>
>>     <!-- ************* NEED TO PASS VARIABLES HERE. SO FAR NOTHING 
>> WORKS
>> ************* -->
>>     <animator attribute="x" to="${canvas.width*myClass.myX}" />
>>     <animator attribute="y" to="${(canvas.height*myClass.myY)+18}" />
>>
>>    </animatorgroup>
>>
>>    <!-- ************* PASSING VARIABLES HERE WORKED ************* -->
>>    <text align="center" valign="middle"
>>     text="${parent.myX+' '+parent.myY}">
>>    </text>
>>
>>    <button placement="title_area" align="right" height="16">
>>     <attribute name="isMax" value="false" />
>>     <handler name="onclick">
>>      if (this.isMax) { parent.max.remove();
>>      parent.min.apply(); } else { parent.max.apply();
>>      parent.min.remove(); } this.isMax = !this.isMax;
>>     </handler>
>>     <attribute name="text" value="Maximize Window" />
>>    </button>
>>
>>   </state>
>>
>>
>>
>>  </class>
>>
>>  <myClass myY="0" title="Window">
>>   <method name="myX">return .25;</method>
>>   <text>Window 1</text>
>>  </myClass>
>>  <myClass myX=".50" myY="0">
>>   <text>Window 2</text>
>>  </myClass>
>>  <myClass myX=".75" myY="0">
>>   <text>Window 3</text>
>>  </myClass>
>>
>>  <myClass myX=".25" myY=".30">
>>   <text>Window 4</text>
>>  </myClass>
>>  <myClass myX=".50" myY=".30">
>>   <text>Window 5</text>
>>  </myClass>
>>  <myClass myX=".75" myY=".30">
>>   <text>Window 6</text>
>>  </myClass>
>>
>>  <myClass myX=".25" myY=".60">
>>   <text>Window 4</text>
>>  </myClass>
>>  <myClass myX=".50" myY=".60">
>>   <text>Window 5</text>
>>  </myClass>
>>  <myClass myX=".75" myY=".60">
>>   <text>Window 6</text>
>>  </myClass>
>>
>> </library>
>>
>>
>>
>>
>

Reply via email to