In the case of passthrough, where its intent is to "pass through" to a 
particular target runtime, the runtime argument seems most appropriate to me.  
I suppose we should add some sanity checking that the runtime argument is a 
valid runtime.

If you really need a passthrough conditional to other properties, you can do so 
in a <script> tag.

---

The problem we are trying to solve here is that <switch> cannot be used in a 
binary library (because its semantics are that it is evaluated at parse time).  
Another approach would be to change switch to have an 'evaluation time' 
property, but that seemed like generality we didn't need.

On 2010-05-15, at 08:10, André Bargull wrote:

> We had first:
> <switch>
>  <when runtime="swf10">
>    <passthrough>
>      import flash.utils.*;
>    </passthrough>
>  </when>
> </switch>
> 
> "runtime" was only allowed to be: 'swf7', 'swf8', 'swf9', 'swf10' or 'dhtml'
> 
> 
> The first form was deprecated in favor of:
> <switch>
> <when property="$swf10">
>    <passthrough>
>      import flash.utils.*;
>    </passthrough>
>  </when>
> </switch>
> 
> "property" can be any of the compile time constants: '$swf7', '$swf8', 
> '$swf9', '$swf10', '$dhtml', '$as3', '$as2', '$debug' (left out some unused 
> constants)
> 
> 
> And now we're back with "runtime", although "runtime" is just any string 
> which will be transformed to the compile time constants from above (by 
> prepending "$" to the string).
> 
> <passthrough runtime="swf10">
>  import flash.utils.*;
> </passthrough>
> 
> But also possible:
> <passthrough runtime="as3">
>  import flash.utils.*;
> </passthrough>
> 
> or:
> <passthrough runtime="debug">
>  import flash.utils.*;
> </passthrough>
> 
> 
> So, maybe<passthrough>'s new "runtime" attribute should rather be "property" 
> like in<when>?
> 
> 
> 
> On 5/14/2010 10:46 PM, P T Withington wrote:
>> Approved!
>> 
>> On 2010-05-13, at 17:19, Henry Minsky wrote:
>> 
>>   
>>> Change 20100513-hqm-p by [email protected] on 2010-05-13 17:17:23 EDT
>>>    in /Users/hqm/openlaszlo/trunk1
>>>    for http://svn.openlaszlo.org/openlaszlo/trunk
>>> 
>>> Summary:<passthrough>  should take a `runtime="..."` property
>>> 
>>> New Features:
>>> 
>>> Bugs Fixed: LPP-8995
>>> 
>>> Technical Reviewer: ptw
>>> QA Reviewer: (pending)
>>> Doc Reviewer: (pending)
>>> 
>>> Documentation:
>>> 
>>> Release Notes:
>>> 
>>> Overview:
>>> 
>>> 
>>> Details:
>>> 
>>> 
>>> Tests:
>>> 
>>> test case below, passthru should disappear in DHTML output:
>>> <canvas width="100%" height="80%">
>>>  <debug  fontsize="12"/>
>>> 
>>>  <class name="foo">
>>>    <passthrough runtime="swf10">
>>>      import flash.net.*;
>>>    </passthrough>
>>>    <method name="foo">
>>>      Debug.info('foobar');
>>>    </method>
>>> 
>>>  </class>
>>> 
>>> 
>>> </canvas>
>>> 
>>> 
>>> Files:
>>> M       WEB-INF/lps/server/src/org/openlaszlo/compiler/NodeModel.java
>>> M       WEB-INF/lps/server/src/org/openlaszlo/compiler/ClassModel.java
>>> 
>>> Changeset: http://svn.openlaszlo.org/openlaszlo/patches/20100513-hqm-p.tar
>>>     
>> 
>>   


Reply via email to