[Laszlo-user] Extending a base component

P T Withington ptw at pobox.com
Fri Jun 27 03:01:18 PDT 2008


I suspect _rowclass really needs to be a class, not a tagname.  Try  
_rowclass="lz.mygridrow".  The fact that it starts with _ indicates  
that it is an internal property, so you really need to know what you  
are doing to use it.  The fact that the recursive implicit include of  
basecomponent stopped working sounds like a bug that should be  
reported at jira.openlaszlo.org.

On 2008-06-26, at 22:30 EDT, Cary Clark wrote:

> ...even when I tried the code WITH the handler in it...:-)
>
> <canvas>
>   <include href="base/basegridrow.lzx"/>
>
>   <class name="mygridrow" extends="basegridrow">
>       <handler name="ondblclick" >
>           Debug.write("2xclick");
>       </handler>
>   </class>
>   <dataset name="weatherdata" request="true" src="http://www.laszlosystems.com/cgi-pub/weather.cgi?zip=73003 
> "/>
>   <grid datapath="weatherdata:/weather" contentdatapath="forecast/ 
> day" _rowclass="mygridrow"/>
> </canvas>
>
> Cary Clark wrote:
>> Hey Dave, try this simple addition:
>>
>> <canvas>
>>   <include href="base/basegridrow.lzx"/>
>>
>>   <class name="mygridrow" extends="basegridrow"/>
>>   <dataset name="weatherdata" request="true" src="http://www.laszlosystems.com/cgi-pub/weather.cgi?zip=73003 
>> "/>
>>   <grid datapath="weatherdata:/weather" contentdatapath="forecast/ 
>> day" _rowclass="mygridrow"/>
>> </canvas>
>>
>> I added that and it compiled....doesn't seem to print the double  
>> click message, but it compiles.
>>
>> Cary
>>
>>
>> Dave Miller wrote:
>>> When I needed to add some functionality to a grid row, instead of  
>>> editing basegridrow.lzx, I extended the class like so:
>>>
>>> <class name="mygridrow" extends="basegridrow" >
>>>    <handler name="ondblclick" >
>>>        Debug.write("2xclick");
>>>    </handler>
>>> </class>
>>>
>>> <grid _rowclass="mygridrow" datapath=...
>>>
>>>
>>>
>>> This worked fine in 4.0.7. When I recently upgraded to 4.0.12 this  
>>> broke. I got the compilation error:
>>>
>>> base/basegridrow.lzx:4:55: undefined superclass basecomponent for  
>>> class basegridrow
>>>
>>>
>>> I understand how my locally declared class might not see the new  
>>> super class 'basecomponent', but was this an intentional change?  
>>> Or a bug?
>>>
>>> Test script below.
>>>
>>> Thanks,
>>>
>>> Dave
>>>
>>>
>>> Works in 4.0.7. Errors in 4.0.12
>>>
>>> <canvas>
>>>    <class name="mygridrow" extends="basegridrow"/>
>>>    <dataset name="weatherdata" request="true" src="http://www.laszlosystems.com/cgi-pub/weather.cgi?zip=10022 
>>> "/>
>>>    <grid datapath="weatherdata:/weather" contentdatapath="forecast/ 
>>> day" _rowclass="mygridrow"/>
>>> </canvas>
>>>
>>



More information about the Laszlo-user mailing list