[Seaside] Re: Menu component - communicating with root component
Boris Popov
boris at deepcovelabs.com
Sun Apr 20 21:16:08 UTC 2008
Still, we've build what I consider to be a relatively large and complex
application and I don't recall ever thinking that it was getting out of
control. Certainly not to the point of introducing more elements just to
glue announcers and subscribers together. Let's try a more complex
example to see if perhaps I am missing something. Say you have a table
containing rows containing cells and cells announce CellClicked when you
click on them. If, for some reason, you were interested to know about
that happening up in the table, how about something like,
Table>>addRow: row
rows add: row.
row
when: CellClicked
do: [:ann | self title: ('editing row <1p> cell <2p>'
expandMacrosWith: ann row index
with: ann cell index)]
Row>>addCell: cell
cells add: cell.
cell
when: CellClicked
do: [:ann | self announce: (CellClicked row: self cell: ann cell)].
Cell>>renderContentOn: html
html anchor
callback: [self announce: (CellClicked cell: self)];
with: self contents.
You could of course even have a different announcement for each phase,
this is just an example.
-Boris
-----Original Message-----
From: seaside-bounces at lists.squeakfoundation.org
[mailto:seaside-bounces at lists.squeakfoundation.org] On Behalf Of Holger
Kleinsorgen
Sent: Sunday, April 20, 2008 1:44 PM
To: Seaside - general discussion
Subject: Re: [Seaside] Re: Menu component - communicating with root
component
Boris Popov schrieb:
> I'm not convinced that adding a third-party negotiator is easier than,
>
> Menu>>addItem: item
> self items add: item.
> item when: Clicked do: [self select: item].
>
> MenuItem>>renderContentOn: html
> html anchor
> callback: [self announce: Clicked];
> with: self label.
>
>
true. if the triggering component is a direct child of the interested
component, there's no need for fancy mechanisms.
but as soon as there are intermediate components, this soon gets out of
control
_______________________________________________
seaside mailing list
seaside at lists.squeakfoundation.org
http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside
More information about the seaside
mailing list