Adam Wolff | 2 Jan 2007 18:00

Re: When a view's opacity is 0, tests for visible and clickable should assert false?

Currently, the clickable attribute doesn't necessary reflect whether or
not the user can click a view. For instance, if the view or one of its
parents is not visible, the user can't click it, but its clickable
attribute is still true. We'd have to introduce a new variable to
represent this, like currentlyClickable. The test below would fail if you
wrote visible="false" instead of opacity="0".

By and large, that attribute hasn't proven necessary. The issue here is
really around the implementation of opacity. Right now, when opacity goes
to zero, the view sets its visible to false unless it has been explicitly
set by the user. This is often desirable behavior: it disables the view's
click region and also removes the view from processing by most layouts. It
also accounts for a flash player bug (which may or may not have been fixed
by now) that made it so that opacity 0 elements were still rendered
faintly.

However these behaviors can sometimes be confusing. Some have argued that
even if the runtime hides the Flash element when its opacity goes to zero,
the LFC "visible" property shouldn't change. I'm open to this, though I
haven't seen a lot of complaints about it recently. You can also
explicitly prevent the LFC from messing with the visible attribute by
setting to true or false, rather than it's default which is null.

http://www.openlaszlo.org/lps-latest/docs/reference/view.html#attr-visible

A

On Dec 30, P T Withington wrote:

> This sounds like a question for our chief architect, but I would say that if
(Continue reading)

fkc_email | 2 Jan 2007 19:25
Picon
Favicon

dataset information getting truncated?

HI All:

    I'm new to openlazlo (2nd day working with it), and I wasn't able to find the answer to this via google.

    It
seems to me that my dataset values are getting truncated.  With the
following lzx file, running on lps3.3.3 on SLED 10, the 1st two values
print out fine, and the last gets truncated at the "n" in
truncated.  With my original application data, it looks like all the
text components got printed out with the same size.  Am I missing
something?

  Thanks

  Forrest

-----------------
<canvas>
    <dataset name="truncated">
        <values>
            <value>this prints fine</value>
            <value>so does this</value>
            <value>but this value gets truncated and I need to have values this long</value>
        </values>
    </dataset>
    <text datapath="truncated:/values[1]/value/text()" />
    <simplelayout />

</canvas>

(Continue reading)

P T Withington | 2 Jan 2007 19:39
Favicon

Re: dataset information getting truncated?

You want to read about the resize property of view.

http://www.openlaszlo.org/lps/docs/guide/views.html#d0e12192

it needs to be `true`.

On 2007-01-02, at 13:25 EST, fkc_email-openlaszlo@... wrote:

> HI All:
>
>     I'm new to openlazlo (2nd day working with it), and I wasn't  
> able to find the answer to this via google.
>
>     It
> seems to me that my dataset values are getting truncated.  With the
> following lzx file, running on lps3.3.3 on SLED 10, the 1st two values
> print out fine, and the last gets truncated at the "n" in
> truncated.  With my original application data, it looks like all the
> text components got printed out with the same size.  Am I missing
> something?
>
>   Thanks
>
>   Forrest
>
> -----------------
> <canvas>
>     <dataset name="truncated">
>         <values>
>             <value>this prints fine</value>
(Continue reading)

Schultz, Gary - COMM | 2 Jan 2007 22:19
Picon
Picon

Need to pass variables to animator in animatorgroup

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>
 
 
 
 
Stefan | 3 Jan 2007 00:09
Picon

New article in german 'Linux Magazin' journal

It is in the the issue 02/2007. The journals main web:

	http://www.linux-magazin.de/

P T Withington | 3 Jan 2007 05:23
Favicon

Re: Need to pass variables to animator in animatorgroup

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>
>
>
>
>

John Sundman | 3 Jan 2007 14:10

Re: 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>
>>
>>
>>
>>
>

Schultz, Gary - COMM | 3 Jan 2007 14:55
Picon
Picon

Re: Need to pass variables to animator in animatorg roup

 Thank you. Classroot worked, just what I needed. 

Gary T. Schultz
IT Administrator
Wisconsin Dept. of Commerce
608-266-1283
gschultz@...

-----Original Message-----
From: John Sundman [mailto:jsundman@...] 
Sent: Wednesday, January 03, 2007 7:11 AM
To: P T Withington
Cc: Schultz, Gary - COMM; 'laszlo-user@...'
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>
>>
>>
>>
>>
>

Max Carlson | 3 Jan 2007 21:09
Favicon

Re: dataset information getting truncated?

You need to set your text field to resize="true".  I hope to have this 
default to true in 4.0 beta 2.

-- 
Regards,
Max Carlson
OpenLaszlo.org

fkc_email-openlaszlo@... wrote:
> HI All:
> 
>     I'm new to openlazlo (2nd day working with it), and I wasn't able to find the answer to this via google.
> 
>     It
> seems to me that my dataset values are getting truncated.  With the
> following lzx file, running on lps3.3.3 on SLED 10, the 1st two values
> print out fine, and the last gets truncated at the "n" in
> truncated.  With my original application data, it looks like all the
> text components got printed out with the same size.  Am I missing
> something?
> 
>   Thanks
> 
>   Forrest
> 
> -----------------
> <canvas>
>     <dataset name="truncated">
>         <values>
>             <value>this prints fine</value>
>             <value>so does this</value>
>             <value>but this value gets truncated and I need to have values this long</value>
>         </values>
>     </dataset>
>     <text datapath="truncated:/values[1]/value/text()" />
>     <simplelayout />
> 
> 
> </canvas>
> 
> 
> 

Jim Grandy | 5 Jan 2007 07:08
Favicon

OpenLaszlo 4.0 B1 Released!

It is with great pleasure that we announce the availability of OpenLaszlo 4.0 B1. This is the first development release of the new multi-runtime edition of OpenLaszlo, complete with a brand new native browser DHTML runtime, a heavily revamped Flash runtime, and much more.

The downloads are available here, the release notes are here, and you can play with the live bits here. Please do try out the release and let us know what you think! This is a first beta, so expect a few bumps as you port your OpenLaszlo 3.x app or begin a fresh OL4 app. You'll find a few challenges in B1 even with the Flash runtime, but the best way to speed delivery of a solid, production-ready release is to try out B1, file the bugs you find, and work with us. We're eager to hear your impressions and improve this new version of the platform. So please post on the forum and on the laszlo-user mailing list, and file your bugs in JIRA.

Thanks!

jim

---
Jim Grandy
Director of OpenLaszlo
Laszlo Systems, Inc.




Gmane