[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