On Sun, Nov 9, 2008 at 9:09 PM, Michał Pasternak <[EMAIL PROTECTED]>wrote:
> Jean-Paul Calderone pisze: > >> On Sun, 09 Nov 2008 13:28:26 +0100, Michał Pasternak < >> [EMAIL PROTECTED]> wrote: >> >>> Hi, >>> >>> I want to be able to add athena.LiveElement to an already rendered >>> LivePage. Quick Googling revealed this blog entry: >>> >>> http://techblog.ironfroggy.com/2006/01/nevow-post-render-injection-of.html >>> >>> I'd like to know, if there are any other, simpler ways to do that - or, >>> maybe, is there a preferred method to do that in the API already? >>> >> >> See Nevow.Athena.Widget.addChildWidgetFromWidgetInfo. >> > This method will not add the markup automatically. Am I right? Yep, I think you're right. > > Is this the official way of doing that, or am I missing something? > I'm on a similar track - here's what I use (don't know if it's "official" either :) - function createDynamicWidget(self, className, left, top, args, kw) { var result = self.callRemote('getDynamicWidget', className, left, top, args, ((kw) ? kw : {})); result.addCallback( function(widgetInfo) { return self.addChildWidgetFromWidgetInfo(widgetInfo); }); result.addCallback( function(widget) { var insertedNode = document.body.children(0).insertAdjacentElement('beforeBegin', widget.node); var s = insertedNode.getElementsByTagName('script'); if (s.length == 1) { var js = new Function(s[0].text); js.apply(insertedNode); } insertedNode.style.zIndex = ++max_zIndex; return widget.objectID; }); return result; }, Harald
_______________________________________________ Twisted-web mailing list [email protected] http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-web
