From what I understand you to say, I should expect node options to
be inherited. But this test case fails in trunk. Am I confused, or
are options completely broken?
<canvas debug="true">
<include href="lzunit" />
<class name="top" options="some: 'thing'" />
<class name="middle" extends="top" options="other: 'else'" />
<class name="bottom" extends="middle" options="besides: 'what'" />
<middle id="m1">
<bottom id="b1" options="last: 'end'">
</bottom>
</middle>
<class name="Options" extends="TestCase">
<method name="testOptions">
<![CDATA[
assertEquals('thing', b1.options['some']);
assertEquals('else', b1.options['other']);
assertEquals('what', b1.options['besides']);
assertEquals('end', b1.options['last']);
b1.setOption('other', 'another');
assertEquals('else', m1.options['other']);
]]>
</method>
</class>
<TestSuite>
<Options />
</TestSuite>
</canvas>
On 2006-09-21, at 18:52 EDT, Adam Wolff wrote:
> This looks good. Is there a test to make sure that instances get their
> class and superclass options? What about replicated views not
> sharing a
> single options slot? The code looks correct, but those would be
> nice to
> have.
>
> If there is strict enforcement of getter/setter-only access to
> options,
> then maybe this would be a good time to rename the options slot to
> __LZoptions, especially since writing to that slot would be
> catastrophic.
>
> A
>
> On Sep 21, P T Withington wrote:
>
>> And just let me know if it seems like the right solution? It's a
>> little
>> tricky, so I didn't want to check it in without a sanity check...
>>
>> Begin forwarded message:
>>
>>> From: P T Withington <[EMAIL PROTECTED]>
>>> Date: 18 September 2006 15:09:06 EDT
>>> To: Adam Wolff <[EMAIL PROTECTED]>, [EMAIL PROTECTED]
>>> Cc: [email protected]
>>> Subject: For Review: Change change.zpAulUWBZ.txt Summary: Make
>>> node options
>>> type safe
>>>
>>> Change change.zpAulUWBZ.txt by [EMAIL PROTECTED]
>>> /Users/ptw/pending-changes/ on 2006-09-18 13:07:00 EDT
>>>
>>> Summary: Make node options type safe
>>>
>>> Technical Reviewer: adam (pending)
>>> QA Reviewer: henry (pending)
>>> Doc Reviewer: (pending)
>>>
>>> Details:
>>> Use a sentinel hash for options. Replace the sentinel in the
>>> setter.
>>>
>>> Tests:
>>> Inspection
>>>
>>> Files:
>>> M core/LzNode.lzs
>>
_______________________________________________
Laszlo-dev mailing list
[email protected]
http://www.openlaszlo.org/mailman/listinfo/laszlo-dev