Because renderers get recycled, it is not recommended to access a renderer 
instance and change properties on it.  There is a indexToItemRenderer() method, 
but I wouldn’t use it for this.

The recommended practice is an “associated list”, essentially a weak-reference 
dictionary or object map that stores additional information associated with the 
data objects (not the renderers).  In this case, I would probably use a 
dictionary and stuff each dropped object in the dictionary.  Each renderer will 
compare its data property to see if it is in the dictionary and set the 
itemEnabled accordingly.


On 9/22/11 11:33 AM, "grimmwerks" <gr...@grimmwerks.com> wrote:






Here's another convoluted question -- I've got a list that is bound to an array 
of a certain Class - let's cal them Permissions.  In the Permissions class 
you've got userId, read and write (booleans there, id for userId, normal stuff).

I'm using the same itemrenderer in two lists - a source list which is not 
editable and a drop list which is;  the itemrenderer has an 'editable' variable 
and I'm setting each list's ClassFactory to this same itemrenderer, with one 
ClassFactory's properties setting editable to false, one to true.  All that is 
good.

Now the strange request I JUST had from someone here is that once an item is 
dragged and dropped from the source list to the drop list, the item in the 
source list should dim to show that it's already been chosen, unable to choose 
again.   I've created a property called itemEnabled in the itemrenderer,! 
defaulting to true (so it's ignored in the droplist basically).

Here's the thing; it would be simple enough to set a particular item's 
'itemenabled' property in the dataproviider and it would trickle down; but 
since this is a list of cast objects that don't have the itemEnabled property 
it's a no go...

So is there a way of selecting an itemrenderer or item at a certain position in 
the sourcelist and setting IT's itemEnabled to false? Is it something with the 
classfactory for a specific item?


Garry Schafer
grimmwerks
gr...@grimmwerks.com
portfolio: www.grimmwerks.com/ <http://www.grimmwerks.com/>










--
Alex Harui
Flex SDK Team
Adobe System, Inc.
http://blogs.adobe.com/aharui

Reply via email to