[Laszlo-user] Extending a base component

Dave Miller dwmiller at umich.edu
Fri Jun 27 15:37:47 PDT 2008


Thanks.

Cary's solution fixed it. You must include the basegridrow

  <include href="base/basegridrow.lzx"/>

Cary, see my latest post here to see the double click in action with  
your fix:

http://forum.openlaszlo.org/showthread.php?p=38708#post38708

This did not fix it:

_rowclass="lz.mygridrow"

I'll file a bug report.

Thanks for the help!

Dave


On Jun 27, 2008, at 3:01 AM, P T Withington wrote:

> 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