Hey Jim, Did you ever make this fix? I'm finally using this syntax and took a look at the docs (trunk about a week ago), unchanged from the 3.3 reference page: http://localhost:8080/video/docs/reference/handler.html
It looks like methodName is still called method, which I find a bit confusing. Will this be fixed for 3.4? There's also no description of what "method" does so I would guess it is safe to change to it. It would be hard to figure out how to use that syntax from the reference as is. Also, the description of name seems to be inherited from node, which is not particularly helpful. Thanks, Sarah On Thu, Jan 12, 2006 at 8:47 PM, Jim Grandy wrote: No worries, I'm pretty bad at reading them! thanks, jim On Jan 12, 2006, at 6:23 PM, Henry Minsky wrote: I'm terrible at writing .rnc schemas... I'll send you the test cases I was using as soon as I can find them. On 1/12/06, Jim Grandy wrote: I'm converting the base components to use <event> and <handler>, and ran into something I don't think is quite right. The proposal ( http://wiki.openlaszlo.org/Event_and_handler_tags) suggests that <handler> should have two forms: <http://wiki.openlaszlo.org/Event_and_handler_tags> <http://wiki.openlaszlo.org/Event_and_handler_tags> <handler name="eventName" [reference="..."] [args="..."]> ... </handler> and <handler name="eventName" [reference="..."] method="methodName" /> But the schema entry looks like this: handler = element handler { ( nameAttribute | ( nameAttribute? & ## The name of the method that this handler will call attribute method {string} & ## If this attribute is present, it is a JavaScript expression ## that evaluates to an object. The code in this method executes ## when this object sends the event named by the @a{event} ## attribute. This attribute may be present only if ## the @a{event} attribute is present too. [a:defaultValue="this"] attribute reference {reference}?)) & ## The parameter names of this method. The value of this attribute ## is a comma-separated list of JavaScript identifiers. [a:defaultValue="" lza:modifiers="final"] attribute args {string}? & text } I read this as allowing <handler name="eventName" [args="..."]> ... </handler> or <handler [name="eventName"] method="methodName" [reference="..."] [args="..."]> ... </handler> Whether text is allowed or not (it shouldn't if @method is given) is one problem. Another is that I can't write <handler name="eventName" reference="..." args="..."> ... </handler> The workaround for the second is (I think) to split the handler definition into a handler and a method, but I shouldn't have to do this. Third, the comment says about @method that "this attribute may be present only if the @a{event} attribute is present too," but there's no @event attribute in handler. Does this mean to say @name instead of @event? If everyone agrees, I'll propose a change to the schema to fix both of these problems. I don't see a unit test file; Henry, did you write one when you did the initial implementation? jim _______________________________________________ Laszlo-dev mailing list [email protected] <javascript:lzSetCanvasAttribute('js_mailto', '[email protected]')> http://www.openlaszlo.org/mailman/listinfo/laszlo-dev -- Henry Minsky Software Architect [EMAIL PROTECTED] <javascript:lzSetCanvasAttribute('js_mailto', '[EMAIL PROTECTED]')> ------------------------------ _______________________________________________ Laszlo-dev mailing list [email protected] <javascript:lzSetCanvasAttribute('js_mailto', '[email protected]')> <javascript:lzSetCanvasAttribute('js_mailto', '[email protected]')> http://www.openlaszlo.org/mailman/listinfo/laszlo-dev <http://www.openlaszlo.org/mailman/listinfo/laszlo-dev> _______________________________________________ Laszlo-dev mailing list [email protected] http://www.openlaszlo.org/mailman/listinfo/laszlo-dev
