[Seaside] Oddness with #lightbox: in VW

Boris Popov boris at deepcovelabs.com
Thu Apr 26 17:22:21 UTC 2007


Which version of Seaside and SeasideScriptaculous are you using? There
was a change in the call/answer recently that I found in my YUI panel
use and myself and Lukas updated my implementation and his #lightbox: to
raise a render notification at the end to make it work properly again.
Its already part of the most recent version in public repository, but
here's a relevant method that you need,

lightbox: aComponent
	^ AnswerContinuation currentDo: [ :cc |
		self
			show: aComponent
			onAnswer: cc
			delegation: (Seaside.SULightbox new
				delegate: aComponent;
				yourself).
		WARenderNotification raiseSignal ]

By the way, this #lightbox has nothing to do with AJAX per se; it's just
a fancy way to render a modal component ;)

Hope this helps,

-Boris

-- 
+1.604.689.0322
DeepCove Labs Ltd.
4th floor 595 Howe Street
Vancouver, Canada V6C 2T5
http://tinyurl.com/r7uw4

boris at deepcovelabs.com

CONFIDENTIALITY NOTICE

This email is intended only for the persons named in the message
header. Unless otherwise indicated, it contains information that is
private and confidential. If you have received it in error, please
notify the sender and delete the entire message including any
attachments.

Thank you.

> -----Original Message-----
> From: seaside-bounces at lists.squeakfoundation.org [mailto:seaside-
> bounces at lists.squeakfoundation.org] On Behalf Of Yann Monclair
> Sent: Thursday, April 26, 2007 9:57 AM
> To: The Squeak Enterprise Aubergines Server - general discussion.
> Subject: [Seaside] Oddness with #lightbox: in VW
> 
> Hi all,
> 
> I've been playing around with Scriptaculous in VisualWorks, creating
> a sample application as a demo for co-workers.
> During the ajax-ication of my application, I came to use #lightbox:
> instead of #call:
> Now this lead to an error in my page rendering ( a MNU) and after
> investigation I found out that, when you do
> 
> r:=self lightbox: (aComponent).
> r will first have for value self , then when aComponent will answer,
> it will have for value the object answered by aComponent.
> 
> This is not the same behaviour as #lightbox: in Squeak! So I suspect
> it is a VW problem.
> 
> I put together a quick test case app, to reproduce the bug.
(attached)
> 
> Component1 calls component2. everytime it does a call (with #call: or
> #lightbox: ) it inspects the value or r. As you will see, with #call:,
> r is inspected only once, and has the proper value. With #lightbox: r
> is inspected twice, first holding self , then holding the proper
value.
> 
> I will try to look into the problem myself, but any help is
> appreciated :)
> 
> Thanks,
> 
> Yann Monclair
> 
> PS: for the lucky people coming to Smalltalk Solutions 2007, I'll see
> you in Toronto!


More information about the seaside mailing list