hi amy,
the manager class approach is interesting, and sounds safe from a
memory-management perspective. thanks!

you also wrote:

> You could potentially set up your itemRenderers to 
> register/unregister for these events in the set data()
> override for your renderer.
--
can i ask, how would you guarantee that all itemrenderers safely
unregister
for the UPDATE event?

~flexrookie


--- In [email protected], "Amy" <amyblankens...@...> wrote:
>
> --- In [email protected], "Tracy Spratt" <tspratt@> wrote:
> >
> > The core concepts are that item renderers need to update their 
> visual UI
> > elements when the associated item changes, and need to update that 
> item on
> > user interaction.
> > 
> >  
> > 
> > You assign a dataProvider(StockInfo) to the List, which results in 
> item
> > renderers being instantiated.  Note, do not use an Array as a 
> dataProvider,
> > use ArrayCollection.
> > 
> >  
> > 
> > When the underlying item changes, the framework calls the 
> renderer's set
> > data method(setter).  When any pending changes are done, the 
> framework calls
> > commitProperties.
> 
> Well, sort of.  If a property of an object that's stored in an 
> ArrayCollection changes, the ArrayCollection has no idea, and hence 
> the List will not call setData().
> 
> You could potentially set up your itemRenderers to 
> register/unregister for these events in the set data() override for 
> your renderer.  But that means your renderer can only ever be used to 
> render this type of object.  That's not necessarily a bad thing, but 
> I try to keep my renderers barefoot and pregnant if you know what I 
> mean.
> 
> So my approach would be to have a manager that contains an 
> ArrayCollection of StockInfo objects as one of its public 
> properties.  Bind the dataProvider on your HorizontalList to that 
> public property.  
> 
> I'd probably limit that to read-only by just using a getter on it.  
> Make sure your manager component takes care of all of the adding and 
> deleting of StockInfos into the AC, so it can register for your 
> change events on all items that are currently stored there and 
> unregister for them once they're gone.  
> 
> Then when the manager gets the event, calls itemUpdated on whichever 
> SockInfo changed, and the HorizontalList will update normally with no 
> more special effort on your part.
> 
> HTH;
> 
> Amy
>


Reply via email to