[Bese-devel] ajax related and other patches in public

Attila Lendvai attila.lendvai at gmail.com
Thu May 4 20:57:05 UTC 2006


hi!

i've applied a few patches to the public repo. the most interesting
and the most dubious is this (i'm not sure that this is The Right
Way):

* Store an action-struct instead of a simple lambda when making actions

(defstruct (action-entry (:conc-name action-))
  (lambda nil :type function)
  (valid-p t :type boolean)
  (isolated-p nil :type boolean)
  (ajax-p nil :type boolean)
  (id nil :type (or nil string)))

the interesting part is the ajax-p flag, which alters the action
calling so that it gets suitable for ajax communication.

with this patch, with dojo plus some other code which is not mature
enough (ajax-component-mixin and firends) i'm replacing entire
widget-components quite transparently to the rest of the code.
basically i can start the render loop at random position in the
component hierarchy which will walk the parent slot. as soon as an
ajax-component-mixin is found the rendering starts there and the
result is returned wrapped in an xml.

the client side js blindly looks up the div with the id and replaces
with the returned xml. there were some gotcha's, but it works like a
charm now... :)

hope you like it, the rest will follow

- attila

(alias 101 on irc &no 'its not lisp code :)


More information about the bese-devel mailing list